diff --git a/SpriteFontPlus/src/obj/Debug/net45/SpriteFontPlus.FNA.csprojAssemblyReference.cache b/SpriteFontPlus/src/obj/Debug/net45/SpriteFontPlus.FNA.csprojAssemblyReference.cache index 173fa6fbcc3b5ea8683a26533f970f7cb8180965..d87bd66d6acf90ec1e3b685058a5ac5d6ab5c46d GIT binary patch literal 7400 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 P0oeK9&i{7)=lTC%`IaS? diff --git a/isometric-park-fna/FNAGame.cs b/isometric-park-fna/FNAGame.cs --- a/isometric-park-fna/FNAGame.cs +++ b/isometric-park-fna/FNAGame.cs @@ -745,7 +745,7 @@ //*/ - String header_left = String.Format("${0:}|{1:} trees⚘𐂷🌳", this.simulation.money, this.simulation.map.tree_count); + String header_left = String.Format("${0:}|{1:} trees⚘𐂷🌳\ue125", this.simulation.money, this.simulation.map.tree_count); String header_middle = String.Format("{0:MMMMM yyyy} ({1:})", this.simulation.DateTime, this.simulation.Season); String header_right = String.Format("Hotkeys: Arrow keys; (F)orest Policy; (B)udget; 0 toggles pause"); diff --git a/isometric-park-fna/UI/DebugWindow.cs b/isometric-park-fna/UI/DebugWindow.cs --- a/isometric-park-fna/UI/DebugWindow.cs +++ b/isometric-park-fna/UI/DebugWindow.cs @@ -6,6 +6,7 @@ using Num = System.Numerics; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; +using System.Runtime.InteropServices; namespace isometricparkfna.UI { @@ -38,15 +39,28 @@ ImGuiIOPtr io = ImGui.GetIO(); //io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-medium.ttf", 15); -#if DEBUG - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-medium.ttf", 15); - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-medium.ttf", 15); - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-medium.ttf", 17); - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 20); - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 25); - io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 30); -#endif +// #if DEBUG +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-medium.ttf", 15); +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-medium.ttf", 15); +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-medium.ttf", 17); +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 20); +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 25); +// io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 30); +// #endif + this.monoFont = io.Fonts.AddFontFromFileTTF(@"Content/iosevka-term-extendedmedium.ttf", 15); + unsafe //god this sucks + { + ImFontConfigPtr config = ImGuiNative.ImFontConfig_ImFontConfig(); + config.MergeMode = true; + var builder = new ImFontGlyphRangesBuilderPtr(ImGuiNative.ImFontGlyphRangesBuilder_ImFontGlyphRangesBuilder()); + // builder.AddText("\ue125\ue126"); + var icon_ranges = new ushort[] { 0xe000, 0xe1f4, 0 }; + GCHandle rangeHandle = GCHandle.Alloc(icon_ranges, GCHandleType.Pinned); + io.Fonts.AddFontFromFileTTF(@"Content/typicons.ttf", 15, config, rangeHandle.AddrOfPinnedObject()); + + + } _imGuiRenderer.RebuildFontAtlas(); // Required so fonts are available for rendering diff --git a/isometric-park-fna/isometric-park-fna.csproj b/isometric-park-fna/isometric-park-fna.csproj --- a/isometric-park-fna/isometric-park-fna.csproj +++ b/isometric-park-fna/isometric-park-fna.csproj @@ -110,6 +110,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest