From 8b64356578d555869b1dfc5cd9e16367bed3b96b Mon Sep 17 00:00:00 2001 From: JavidPack Date: Fri, 11 Oct 2019 00:44:32 -0600 Subject: [PATCH] v0.6, update to 0.11.4, fix #31, fix #20, config, correct unload progress --- AllItemsMenu.cs | 2 +- CheatSheet.cs | 9 ++- CheatSheet.csproj | 134 ++------------------------------- CheatSheetClientConfig.cs | 15 ++++ CheatSheetWorld.cs | 2 +- Menus/Hotbar.cs | 10 ++- Menus/ItemBrowser.cs | 11 +-- Menus/NPCBrowser.cs | 11 +-- Menus/QuickTeleportHotbar.cs | 62 +++++++-------- Menus/RecipeBrowser.cs | 11 +-- Properties/launchSettings.json | 14 ++++ UI/UITextbox.cs | 27 ++----- build.txt | 3 +- 13 files changed, 107 insertions(+), 204 deletions(-) create mode 100644 CheatSheetClientConfig.cs create mode 100644 Properties/launchSettings.json diff --git a/AllItemsMenu.cs b/AllItemsMenu.cs index edcac8e..cb86500 100644 --- a/AllItemsMenu.cs +++ b/AllItemsMenu.cs @@ -94,7 +94,7 @@ internal void DrawUpdateExtraAccessories(SpriteBatch spriteBatch) Point value = new Point(Main.mouseX, Main.mouseY); Rectangle r = new Rectangle(0, 0, (int)((float)Main.inventoryBackTexture.Width * Main.inventoryScale), (int)((float)Main.inventoryBackTexture.Height * Main.inventoryScale)); - CheatSheetPlayer csp = Main.LocalPlayer.GetModPlayer(mod); + CheatSheetPlayer csp = Main.LocalPlayer.GetModPlayer(); for (int i = 0; i < csp.numberExtraAccessoriesEnabled; i++) { Main.inventoryScale = 0.85f; diff --git a/CheatSheet.cs b/CheatSheet.cs index 3bddf8f..6150a6d 100644 --- a/CheatSheet.cs +++ b/CheatSheet.cs @@ -75,6 +75,10 @@ public override void Load() public override void Unload() { + ButtonClicked.Clear(); + ButtonTexture.Clear(); + ButtonTooltip.Clear(); + PaintToolsSlot.CurrentSelect = null; AllItemsMenu.singleSlotArray = null; UI.UICheckbox.checkboxTexture = null; @@ -260,7 +264,8 @@ public override void AddRecipeGroups() hotbar = new Hotbar(this); //hotbar.Position = new Microsoft.Xna.Framework.Vector2(120, 180); hotbar.Visible = true; - hotbar.Hide(); + if(!GetConfig().HotbarShownByDefault) + hotbar.Hide(); } catch (Exception e) { @@ -619,7 +624,7 @@ internal static void ReportException(Exception e) try { ReportData data = new ReportData(e); - data.additionaldata = "Loaded Mods: " + string.Join(", ", ModLoader.GetLoadedMods()); + data.additionaldata = "Loaded Mods: " + string.Join(", ", ModLoader.Mods.Select(m => m.Name).ToArray()); string jsonpayload = JsonConvert.SerializeObject(data); using (WebClient client = new WebClient()) { diff --git a/CheatSheet.csproj b/CheatSheet.csproj index 8e39a47..0671a99 100644 --- a/CheatSheet.csproj +++ b/CheatSheet.csproj @@ -1,134 +1,16 @@  - - + + - Debug - AnyCPU - {04D22E3B-46D1-4647-B350-0AC3AEE68631} - Library - Properties - CheatSheet CheatSheet - v4.0 - 512 - true - Client - - + net45 x86 - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - + latest + + + - - False - ..\..\..\..\..\..\..\..\Windows\Microsoft.NET\assembly\GAC_32\Microsoft.Xna.Framework\v4.0_4.0.0.0__842cf8be1de50553\Microsoft.Xna.Framework.dll - - - False - ..\..\..\..\..\..\..\..\Windows\Microsoft.NET\assembly\GAC_32\Microsoft.Xna.Framework.Game\v4.0_4.0.0.0__842cf8be1de50553\Microsoft.Xna.Framework.Game.dll - - - False - ..\..\..\..\..\..\..\..\Windows\Microsoft.NET\assembly\GAC_32\Microsoft.Xna.Framework.Graphics\v4.0_4.0.0.0__842cf8be1de50553\Microsoft.Xna.Framework.Graphics.dll - - - False - ..\..\..\..\..\..\..\..\Windows\Microsoft.NET\assembly\GAC_32\Microsoft.Xna.Framework.Xact\v4.0_4.0.0.0__842cf8be1de50553\Microsoft.Xna.Framework.Xact.dll - - - ..\..\dllReferences\Newtonsoft.Json.dll - - - ..\..\..\Modding\tModLoader\references\ReLogic.dll - - - - C:\Program Files (x86)\Steam\steamapps\common\Terraria\Terraria.exe - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - "C:\Program Files (x86)\Steam\steamapps\common\terraria\tModLoaderServer.exe" -build "$(ProjectDir)\" -eac "$(TargetPath)" - - \ No newline at end of file diff --git a/CheatSheetClientConfig.cs b/CheatSheetClientConfig.cs new file mode 100644 index 0000000..d603809 --- /dev/null +++ b/CheatSheetClientConfig.cs @@ -0,0 +1,15 @@ +using System.ComponentModel; +using Terraria.ModLoader.Config; + +namespace CheatSheet +{ + class CheatSheetClientConfig : ModConfig + { + public override ConfigScope Mode => ConfigScope.ClientSide; + + [DefaultValue(false)] + [Label("Hotbar Shown by Default")] + [Tooltip("Allows the hotbar to default to being shown rather than hidden.")] + public bool HotbarShownByDefault { get; set; } + } +} diff --git a/CheatSheetWorld.cs b/CheatSheetWorld.cs index 367bbd4..ee55db7 100644 --- a/CheatSheetWorld.cs +++ b/CheatSheetWorld.cs @@ -15,7 +15,7 @@ public override void Initialize() { try { - CheatSheet.instance.hotbar.bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled; + CheatSheet.instance.hotbar.bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + Main.LocalPlayer.GetModPlayer().numberExtraAccessoriesEnabled; CheatSheet.instance.paintToolsHotbar.UndoHistory.Clear(); CheatSheet.instance.paintToolsHotbar.UpdateUndoTooltip(); } diff --git a/Menus/Hotbar.cs b/Menus/Hotbar.cs index 0e50df8..3d44e71 100644 --- a/Menus/Hotbar.cs +++ b/Menus/Hotbar.cs @@ -215,13 +215,15 @@ public Hotbar(CheatSheet mod) this.bTogglePaintTools.onLeftClick += new EventHandler(this.bTogglePaintTools_onLeftClick); this.bCycleExtraAccessorySlots.onLeftClick += (s, e) => { - Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled = (Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled + 1) % (CheatSheetPlayer.MaxExtraAccessories + 1); - bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + ": " + Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled; + CheatSheetPlayer cheatSheetPlayer = Main.LocalPlayer.GetModPlayer(); + cheatSheetPlayer.numberExtraAccessoriesEnabled = (cheatSheetPlayer.numberExtraAccessoriesEnabled + 1) % (CheatSheetPlayer.MaxExtraAccessories + 1); + bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + ": " + cheatSheetPlayer.numberExtraAccessoriesEnabled; }; this.bCycleExtraAccessorySlots.onRightClick += (s, e) => { - Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled = (Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled == 0) ? 0 : (Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled - 1) % (CheatSheetPlayer.MaxExtraAccessories + 1); - bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + ": " + Main.LocalPlayer.GetModPlayer(mod).numberExtraAccessoriesEnabled; + CheatSheetPlayer cheatSheetPlayer = Main.LocalPlayer.GetModPlayer(); + cheatSheetPlayer.numberExtraAccessoriesEnabled = cheatSheetPlayer.numberExtraAccessoriesEnabled == 0 ? 0 : (cheatSheetPlayer.numberExtraAccessoriesEnabled - 1) % (CheatSheetPlayer.MaxExtraAccessories + 1); + bCycleExtraAccessorySlots.Tooltip = CSText("ExtraAccessorySlots") + ": " + cheatSheetPlayer.numberExtraAccessoriesEnabled; }; this.bVacuum.onLeftClick += new EventHandler(this.bVacuum_onLeftClick); this.bToggleNPCButcherer.onLeftClick += new EventHandler(this.bButcher_onLeftClick); diff --git a/Menus/ItemBrowser.cs b/Menus/ItemBrowser.cs index c789069..4d773ea 100644 --- a/Menus/ItemBrowser.cs +++ b/Menus/ItemBrowser.cs @@ -134,7 +134,8 @@ public ItemBrowser(CheatSheet mod) uIImage2.Position = position; uIImage2.Tag = j; - uIImage2.onLeftClick += new EventHandler(this.button_onLeftClick); + uIImage2.onLeftClick += (s, e) => buttonClick(s, e, true); + uIImage2.onRightClick += (s, e) => buttonClick(s, e, false); uIImage2.ForegroundColor = ItemBrowser.buttonColor; if (j == 0) { @@ -227,19 +228,19 @@ private void bClose_onLeftClick(object sender, EventArgs e) //base.Visible = false; } - private void button_onLeftClick(object sender, EventArgs e) + private void buttonClick(object sender, EventArgs e, bool left) { UIImage uIImage = (UIImage)sender; int num = (int)uIImage.Tag; if (num == (int)ItemBrowserCategories.ModItems) { - string[] mods = ModLoader.GetLoadedMods(); + string[] mods = ModLoader.Mods.Select(m => m.Name).ToArray(); + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; string currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; if (currentMod == "ModLoader") { + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; } this.itemView.selectedCategory = ItemBrowser.categories[0].Where(x => this.itemView.allItemsSlots[x].item.modItem != null && this.itemView.allItemsSlots[x].item.modItem.mod.Name == currentMod).ToArray(); this.itemView.activeSlots = this.itemView.selectedCategory; diff --git a/Menus/NPCBrowser.cs b/Menus/NPCBrowser.cs index 1a9b342..931d517 100644 --- a/Menus/NPCBrowser.cs +++ b/Menus/NPCBrowser.cs @@ -122,7 +122,8 @@ public NPCBrowser(CheatSheet mod) uIImage2.Position = position; uIImage2.Tag = j; - uIImage2.onLeftClick += new EventHandler(this.button_onLeftClick); + uIImage2.onLeftClick += (s, e) => buttonClick(s, e, true); + uIImage2.onRightClick += (s, e) => buttonClick(s, e, false); uIImage2.ForegroundColor = NPCBrowser.buttonColor; if (j == 0) { @@ -218,19 +219,19 @@ private void bClose_onLeftClick(object sender, EventArgs e) //base.Visible = false; } - private void button_onLeftClick(object sender, EventArgs e) + private void buttonClick(object sender, EventArgs e, bool left) { UIImage uIImage = (UIImage)sender; int num = (int)uIImage.Tag; if (num == (int)NPCBrowserCategories.ModNPCs) { - string[] mods = ModLoader.GetLoadedMods(); + string[] mods = ModLoader.Mods.Select(m => m.Name).ToArray(); + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; string currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; if (currentMod == "ModLoader") { + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; } this.npcView.selectedCategory = NPCBrowser.categories[0].Where(x => npcView.allNPCSlot[x].npcType >= NPCID.Count && NPCLoader.GetNPC(npcView.allNPCSlot[x].npcType).mod.Name == currentMod).ToArray(); this.npcView.activeSlots = this.npcView.selectedCategory; diff --git a/Menus/QuickTeleportHotbar.cs b/Menus/QuickTeleportHotbar.cs index 1601c9e..9574836 100644 --- a/Menus/QuickTeleportHotbar.cs +++ b/Menus/QuickTeleportHotbar.cs @@ -174,65 +174,65 @@ private static void HandleSpawnTeleport(Player player, bool syncData = false) private static void HandleHellTeleport(Player player, bool syncData = false) { - bool flag1 = false; + bool teleportDestinationFound = false; bool flag2; - int num1 = 0; + int findTeleportDestinationAttempts = 0; int num2 = 0; int num3 = 0; int Width = player.width; - Vector2 Position = new Vector2((float)num2, (float)num3) * 16f + new Vector2((float)(-(double)Width / 2.0 + 8.0), -(float)player.height); - while (!flag1 && num1 < 1000) + Vector2 teleportPosition = new Vector2((float)num2, (float)num3) * 16f + new Vector2((float)(-(double)Width / 2.0 + 8.0), -(float)player.height); + while (!teleportDestinationFound && findTeleportDestinationAttempts < 1000) { - ++num1; - int index1 = Main.rand.Next(Main.maxTilesX - 200); - int index2 = Main.rand.Next(Main.maxTilesY - 200, Main.maxTilesY); - Position = new Vector2((float)index1, (float)index2) * 16f + new Vector2((float)(-(double)Width / 2.0 + 8.0), -(float)player.height); - if (!Collision.SolidCollision(Position, Width, player.height)) + ++findTeleportDestinationAttempts; + int tileX = Main.rand.Next(Main.maxTilesX - 200); + int tileY = Main.rand.Next(Main.maxTilesY - 200, Main.maxTilesY); + teleportPosition = new Vector2(tileX, tileY) * 16f + new Vector2((float)(-Width / 2.0 + 8.0), -player.height); + if (!Collision.SolidCollision(teleportPosition, Width, player.height)) { - if (Main.tile[index1, index2] == null) - Main.tile[index1, index2] = new Tile(); - if (((int)Main.tile[index1, index2].wall != 87 || (double)index2 <= Main.worldSurface || NPC.downedPlantBoss) && (!Main.wallDungeon[(int)Main.tile[index1, index2].wall] || (double)index2 <= Main.worldSurface || NPC.downedBoss3)) + if (Main.tile[tileX, tileY] == null) + Main.tile[tileX, tileY] = new Tile(); + if ((Main.tile[tileX, tileY].wall != 87 || tileY <= Main.worldSurface || NPC.downedPlantBoss) && (!Main.wallDungeon[Main.tile[tileX, tileY].wall] || tileY <= Main.worldSurface || NPC.downedBoss3)) { int num4 = 0; - while (num4 < 100) + while (num4 < 100 && WorldGen.InWorld(tileX, tileY + num4, 20)) { - if (Main.tile[index1, index2 + num4] == null) - Main.tile[index1, index2 + num4] = new Tile(); - Tile tile = Main.tile[index1, index2 + num4]; - Position = new Vector2((float)index1, (float)(index2 + num4)) * 16f + new Vector2((float)(-(double)Width / 2.0 + 8.0), -(float)player.height); - Vector4 vector4 = Collision.SlopeCollision(Position, player.velocity, Width, player.height, player.gravDir, false); - flag2 = !Collision.SolidCollision(Position, Width, player.height); + if (Main.tile[tileX, tileY + num4] == null) + Main.tile[tileX, tileY + num4] = new Tile(); + Tile tile = Main.tile[tileX, tileY + num4]; + teleportPosition = new Vector2(tileX, tileY + num4) * 16f + new Vector2((float)(-(double)Width / 2.0 + 8.0), -player.height); + Vector4 vector4 = Collision.SlopeCollision(teleportPosition, player.velocity, Width, player.height, player.gravDir, false); + flag2 = !Collision.SolidCollision(teleportPosition, Width, player.height); if ((double)vector4.Z == (double)player.velocity.X) { double num5 = (double)player.velocity.Y; } if (flag2) ++num4; - else if (!tile.active() || tile.inActive() || !Main.tileSolid[(int)tile.type]) + else if (!tile.active() || tile.inActive() || !Main.tileSolid[tile.type]) ++num4; else break; } - if (!Collision.LavaCollision(Position, Width, player.height) && (double)Collision.HurtTiles(Position, player.velocity, Width, player.height, false).Y <= 0.0) + if (!Collision.LavaCollision(teleportPosition, Width, player.height) && Collision.HurtTiles(teleportPosition, player.velocity, Width, player.height, false).Y <= 0.0) { - Collision.SlopeCollision(Position, player.velocity, Width, player.height, player.gravDir, false); - if (Collision.SolidCollision(Position, Width, player.height) && num4 < 99) + Collision.SlopeCollision(teleportPosition, player.velocity, Width, player.height, player.gravDir, false); + if (Collision.SolidCollision(teleportPosition, Width, player.height) && num4 < 99) { Vector2 Velocity1 = Vector2.UnitX * 16f; - if (!(Collision.TileCollision(Position - Velocity1, Velocity1, player.width, player.height, false, false, (int)player.gravDir) != Velocity1)) + if (!(Collision.TileCollision(teleportPosition - Velocity1, Velocity1, player.width, player.height, false, false, (int)player.gravDir) != Velocity1)) { Vector2 Velocity2 = -Vector2.UnitX * 16f; - if (!(Collision.TileCollision(Position - Velocity2, Velocity2, player.width, player.height, false, false, (int)player.gravDir) != Velocity2)) + if (!(Collision.TileCollision(teleportPosition - Velocity2, Velocity2, player.width, player.height, false, false, (int)player.gravDir) != Velocity2)) { Vector2 Velocity3 = Vector2.UnitY * 16f; - if (!(Collision.TileCollision(Position - Velocity3, Velocity3, player.width, player.height, false, false, (int)player.gravDir) != Velocity3)) + if (!(Collision.TileCollision(teleportPosition - Velocity3, Velocity3, player.width, player.height, false, false, (int)player.gravDir) != Velocity3)) { Vector2 Velocity4 = -Vector2.UnitY * 16f; - if (!(Collision.TileCollision(Position - Velocity4, Velocity4, player.width, player.height, false, false, (int)player.gravDir) != Velocity4)) + if (!(Collision.TileCollision(teleportPosition - Velocity4, Velocity4, player.width, player.height, false, false, (int)player.gravDir) != Velocity4)) { - flag1 = true; - int num5 = index2 + num4; + teleportDestinationFound = true; + int num5 = tileY + num4; break; } } @@ -244,10 +244,10 @@ private static void HandleHellTeleport(Player player, bool syncData = false) } } - if (!flag1) + if (!teleportDestinationFound) return; - RunTeleport(player, Position, syncData, false); + RunTeleport(player, teleportPosition, syncData, false); } private static void HandleTempleTeleport(Player player, bool syncData = false) diff --git a/Menus/RecipeBrowser.cs b/Menus/RecipeBrowser.cs index f6de9e6..914a3fb 100644 --- a/Menus/RecipeBrowser.cs +++ b/Menus/RecipeBrowser.cs @@ -114,7 +114,8 @@ public RecipeBrowserWindow(CheatSheet mod) uIImage2.Position = position; uIImage2.Tag = j; - uIImage2.onLeftClick += new EventHandler(this.button_onLeftClick); + uIImage2.onLeftClick += (s, e) => buttonClick(s, e, true); + uIImage2.onRightClick += (s, e) => buttonClick(s, e, false); uIImage2.ForegroundColor = RecipeBrowserWindow.buttonColor; if (j == 0) { @@ -366,19 +367,19 @@ private void bClose_onLeftClick(object sender, EventArgs e) //base.Visible = false; } - private void button_onLeftClick(object sender, EventArgs e) + private void buttonClick(object sender, EventArgs e, bool left) { UIImage uIImage = (UIImage)sender; int num = (int)uIImage.Tag; if (num == (int)RecipeBrowserCategories.ModRecipes) { - string[] mods = ModLoader.GetLoadedMods(); + string[] mods = ModLoader.Mods.Select(m => m.Name).ToArray(); + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; string currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; if (currentMod == "ModLoader") { + lastModNameNumber = left ? (lastModNameNumber + 1) % mods.Length : (mods.Length + lastModNameNumber - 1) % mods.Length; currentMod = mods[lastModNameNumber]; - lastModNameNumber = (lastModNameNumber + 1) % mods.Length; } recipeView.selectedCategory = RecipeBrowserWindow.categories[0].Where(x => recipeView.allRecipeSlot[x].recipe as ModRecipe != null && (recipeView.allRecipeSlot[x].recipe as ModRecipe).mod.Name == currentMod).ToArray(); recipeView.activeSlots = recipeView.selectedCategory; diff --git a/Properties/launchSettings.json b/Properties/launchSettings.json new file mode 100644 index 0000000..14574ad --- /dev/null +++ b/Properties/launchSettings.json @@ -0,0 +1,14 @@ +{ + "profiles": { + "Terraria": { + "commandName": "Executable", + "executablePath": "$(tMLPath)", + "workingDirectory": "$(TerrariaSteamPath)" + }, + "TerrariaServer": { + "commandName": "Executable", + "executablePath": "$(tMLServerPath)", + "workingDirectory": "$(TerrariaSteamPath)" + } + } +} \ No newline at end of file diff --git a/UI/UITextbox.cs b/UI/UITextbox.cs index 037c063..a7b1662 100644 --- a/UI/UITextbox.cs +++ b/UI/UITextbox.cs @@ -54,29 +54,12 @@ private static Texture2D TextboxFill private bool drawCarrot = false; private UILabel label = new UILabel(); private static int padding = 4; - private string text = ""; - public string Text - { - get { return text; } - set { text = value; } - } - - private int maxCharacters = 20; - - public int MaxCharacters - { - get { return maxCharacters; } - set { maxCharacters = value; } - } + public string Text { get; set; } = ""; - private bool passwordBox = false; + public int MaxCharacters { get; set; } = 20; - public bool PasswordBox - { - get { return passwordBox; } - set { passwordBox = value; } - } + public bool PasswordBox { get; set; } = false; private string passwordString { @@ -204,7 +187,7 @@ private void SetLabelPosition() label.Position = new Vector2(padding, 0); Vector2 size = label.font.MeasureString(Text + "|") * label.Scale; - if (passwordBox) + if (PasswordBox) { size = label.font.MeasureString(passwordString + "|") * label.Scale; } @@ -232,7 +215,7 @@ protected override float GetHeight() public override void Update() { base.Update(); - if (!IsMouseInside() && MouseLeftButton) + if (!IsMouseInside() && (MouseLeftButton || MouseRightButton)) { Unfocus(); } diff --git a/build.txt b/build.txt index 3fc82cf..69f9960 100644 --- a/build.txt +++ b/build.txt @@ -1,8 +1,7 @@ author = jopojelly, jofairden, rrryutaro -version = 0.5.0.2 +version = 0.6 displayName = Cheat Sheet homepage = http://forums.terraria.org/index.php?threads/cheat-sheet.41407/ buildIgnore = .vs\*, Properties\*, *.csproj, *.user, obj\*, bin\*, *.config, .git\* includePDB = true hideCode = false -languageVersion = 6