Skip to content

Commit e8ca564

Browse files
author
Kirtle
committed
Refactored even more code
Added a recipe to the AutoHammer and made the mod release ready.
1 parent f7127f5 commit e8ca564

18 files changed

+181
-198
lines changed

BuilderPlayer.cs

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,9 @@
11
using BuilderEssentials.UI;
22
using BuilderEssentials.Utilities;
3-
using log4net.Repository.Hierarchy;
43
using System.Collections.Generic;
5-
using System.ComponentModel;
6-
using System.Text;
74
using Terraria;
85
using Terraria.GameInput;
9-
using Terraria.ID;
106
using Terraria.ModLoader;
11-
using Terraria.ModLoader.Config;
127
using Terraria.ModLoader.IO;
138

149
namespace BuilderEssentials
@@ -58,6 +53,13 @@ public enum CreativeWheelItem
5853

5954
//Mirror Wand
6055
public bool mirrorWandEffects;
56+
57+
void FillListWithEmptyItems(ref List<Item> list, int size)
58+
{
59+
for (int i = 0; i < size; i++)
60+
list.Add(new Item());
61+
}
62+
6163
public override void Initialize()
6264
{
6365
infiniteRange = false;
@@ -115,13 +117,13 @@ public override void ResetEffects()
115117
player.showItemIcon = false;
116118
infiniteRange = false;
117119

118-
if (!player.inventory[player.selectedItem].IsAir)
120+
if (!player.HeldItem.IsAir)
119121
{
120-
if (BasePanel.creativeWheelPanel != null)
122+
if (CreativeWheel.CreativeWheelPanel != null)
121123
{
122-
BasePanel.creativeWheelPanel.Remove();
123-
BasePanel.creativeWheelUIOpen = false;
124-
BasePanel.isCreativeWheelVisible = false;
124+
CreativeWheel.CreativeWheelPanel.Remove();
125+
CreativeWheel.CreativeWheelUIOpen = false;
126+
CreativeWheel.IsCreativeWheelVisible = false;
125127
}
126128
}
127129

@@ -221,20 +223,9 @@ public override void Load(TagCompound tag)
221223

222224
public override void OnEnterWorld(Player player)
223225
{
224-
if (!IsNormalAccessories)
225-
BasePanel.buildingModeButton.SetImage(BuilderEssentials.BuildingModeOn);
226-
else
227-
BasePanel.buildingModeButton.SetImage(BuilderEssentials.BuildingModeOff);
228-
229226
//Loads (or populates) all lists on enter world
230227
Tools.BuildingModeToggle();
231228
Tools.BuildingModeToggle();
232229
}
233-
234-
void FillListWithEmptyItems(ref List<Item> list, int size)
235-
{
236-
for (int i = 0; i < size; i++)
237-
list.Add(new Item());
238-
}
239230
}
240231
}

Items/Accessories/CreativeWrench.cs

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ public override void UpdateAccessory(Player player, bool hideVisual)
3636
{
3737
modPlayer = Main.LocalPlayer.GetModPlayer<BuilderPlayer>();
3838

39+
//Checking if player's heldItem is air
40+
if (!player.HeldItem.IsAir)
41+
Tools.UIPanelLogic(CreativeWheel.CreativeWheelPanel, ref CreativeWheel.CreativeWheelUIOpen, ref CreativeWheel.IsCreativeWheelVisible);
42+
3943
//Accessory Stats
4044
player.blockRange += 55;
4145
player.wallSpeed += 10;
@@ -54,11 +58,11 @@ public override void UpdateAccessory(Player player, bool hideVisual)
5458

5559
//Right click timer
5660
if (Main.mouseRight && Tools.IsUIAvailable() &&
57-
player.inventory[player.selectedItem].IsAir &&
58-
(!player.mouseInterface || CreativeWheelRework.CreativeWheelReworkPanel.IsMouseHovering))
61+
player.HeldItem.IsAir &&
62+
(!player.mouseInterface || CreativeWheel.CreativeWheelPanel.IsMouseHovering))
5963
{
6064
if (++mouseRightTimer == 2)
61-
BasePanel.creativeWheelUIOpen = !BasePanel.creativeWheelUIOpen;
65+
CreativeWheel.CreativeWheelUIOpen = !CreativeWheel.CreativeWheelUIOpen;
6266
}
6367

6468
if (Main.mouseRightRelease)
@@ -71,14 +75,14 @@ public override void UpdateAccessory(Player player, bool hideVisual)
7175

7276
//AutoHammer
7377
if (Main.mouseLeft && modPlayer.creativeWheelSelectedIndex.Contains((int)CreativeWheelItem.AutoHammer) &&
74-
player.inventory[player.selectedItem].IsAir && CreativeWheelRework.CreativeWheelReworkPanel != null &&
78+
player.HeldItem.IsAir && CreativeWheel.CreativeWheelPanel != null &&
7579
!player.mouseInterface && !Main.playerInventory)
7680
{
77-
if (!CreativeWheelRework.CreativeWheelReworkPanel.IsMouseHovering)
81+
if (!CreativeWheel.CreativeWheelPanel.IsMouseHovering)
7882
Tools.ChangeSlope(ref oldPosX, ref oldPosY, ref previousClickedTile, modPlayer.autoHammerSelectedIndex);
7983
}
8084
else if (Main.mouseLeft && modPlayer.creativeWheelSelectedIndex.Contains((int)CreativeWheelItem.AutoHammer)
81-
&& !player.inventory[player.selectedItem].IsAir && !player.mouseInterface && !Main.playerInventory)
85+
&& !player.HeldItem.IsAir && !player.mouseInterface && !Main.playerInventory)
8286
{
8387
if (!autoHammerAlert)
8488
{

Items/AutoHammer.cs

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
using BuilderEssentials.UI;
22
using BuilderEssentials.Utilities;
3-
using Microsoft.Xna.Framework;
43
using Terraria;
54
using Terraria.ID;
65
using Terraria.ModLoader;
@@ -18,6 +17,7 @@ public override void SetStaticDefaults()
1817
public override void SetDefaults()
1918
{
2019
item.CloneDefaults(ItemID.Pwnhammer);
20+
item.rare = ItemRarityID.Red;
2121
item.tileBoost += 2;
2222
toolRange = 8;
2323
}
@@ -27,15 +27,9 @@ public override void HoldItem(Player player)
2727
{
2828
if (player.whoAmI == Main.myPlayer)
2929
{
30-
if (AutoHammerWheel.AutoHammerWheelPanel != null && !player.inventory[player.selectedItem].IsTheSameAs(item))
31-
{
32-
AutoHammerWheel.AutoHammerWheelPanel.Remove();
33-
AutoHammerWheel.AutoHammerUIOpen = false;
34-
}
35-
3630
if (Main.mouseRight && Tools.IsUIAvailable()
3731
&& (!player.mouseInterface || (AutoHammerWheel.AutoHammerUIOpen && AutoHammerWheel.AutoHammerWheelPanel.IsMouseHovering))
38-
&& player.inventory[player.selectedItem].IsTheSameAs(item))
32+
&& player.HeldItem.IsTheSameAs(item))
3933
{
4034
if (++mouseRightTimer == 2)
4135
AutoHammerWheel.AutoHammerUIOpen = !AutoHammerWheel.AutoHammerUIOpen;
@@ -76,5 +70,27 @@ public override bool CanUseItem(Player player)
7670

7771
return true;
7872
}
73+
74+
public override void UpdateInventory(Player player)
75+
{
76+
if (player.whoAmI == Main.myPlayer)
77+
{
78+
if (AutoHammerWheel.AutoHammerWheelPanel != null && !player.HeldItem.IsTheSameAs(item))
79+
{
80+
AutoHammerWheel.AutoHammerWheelPanel.Remove();
81+
AutoHammerWheel.AutoHammerUIOpen = false;
82+
}
83+
}
84+
}
85+
86+
public override void AddRecipes()
87+
{
88+
ModRecipe recipe = new ModRecipe(mod);
89+
recipe.AddIngredient(ItemID.Pwnhammer);
90+
recipe.AddIngredient(ItemID.Wood, 200);
91+
recipe.AddTile(TileID.MythrilAnvil);
92+
recipe.SetResult(this);
93+
recipe.AddRecipe();
94+
}
7995
}
8096
}

Items/InfinitePaintBucket.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using BuilderEssentials.UI;
2-
using Terraria;
1+
using Terraria;
32
using Terraria.ID;
43
using Terraria.ModLoader;
54

Items/MirrorWand.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
using System;
2-
using System.Collections.Generic;
31
using BuilderEssentials.UI;
42
using Microsoft.Xna.Framework;
5-
using Microsoft.Xna.Framework.Graphics;
63
using Terraria;
74
using Terraria.ID;
85
using Terraria.ModLoader;

Items/MultiWand.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ public override void UpdateInventory(Player player)
3535
{
3636
if (player.whoAmI == Main.myPlayer)
3737
{
38-
if (MultiWandWheel.MultiWandWheelPanel != null && !player.inventory[player.selectedItem].IsTheSameAs(item))
38+
if (MultiWandWheel.MultiWandWheelPanel != null && !player.HeldItem.IsTheSameAs(item))
3939
{
4040
MultiWandWheel.MultiWandWheelPanel.Remove();
4141
MultiWandWheel.WandsWheelUIOpen = false;
4242
}
4343

4444
if (Main.mouseRight && Tools.IsUIAvailable()
4545
&& (!player.mouseInterface || (MultiWandWheel.WandsWheelUIOpen && MultiWandWheel.MultiWandWheelPanel.IsMouseHovering))
46-
&& player.inventory[player.selectedItem].IsTheSameAs(item))
46+
&& player.HeldItem.IsTheSameAs(item))
4747
{
4848
if (++mouseRightTimer == 2)
4949
MultiWandWheel.WandsWheelUIOpen = !MultiWandWheel.WandsWheelUIOpen;
@@ -75,9 +75,10 @@ public override bool UseItem(Player player)
7575
oldPosX = posX;
7676
oldPosY = posY;
7777

78-
if (placementAnywhere || Tools.HasTileAround(posX, posY))
78+
if ((placementAnywhere || Tools.HasTileAround(posX, posY)) &&
79+
!MultiWandWheel.MultiWandWheelPanel.IsMouseHovering && !MultiWandWheel.IsWandsUIVisible)
7980
{
80-
switch (modPlayer.wandWheelSelectedIndex)
81+
switch (MultiWandWheel.selectedIndex)
8182
{
8283
case 0: //living wood
8384
if (infinitePlacement || Tools.ReduceItemStack(ItemID.Wood))
@@ -142,7 +143,7 @@ public override void HoldItem(Player player)
142143
if (modPlayer.infiniteRange || Tools.ToolHasRange(toolRange))
143144
{
144145
player.showItemIcon = true;
145-
switch (modPlayer.wandWheelSelectedIndex)
146+
switch (MultiWandWheel.selectedIndex)
146147
{
147148
case 0:
148149
player.showItemIcon2 = ItemID.LivingWoodWand;

Items/SuperPaintingTool.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
using System;
21
using System.Collections.Generic;
32
using BuilderEssentials.UI;
43
using BuilderEssentials.Utilities;
@@ -57,7 +56,7 @@ public override void UpdateInventory(Player player)
5756

5857
if (Main.mouseRight && Tools.IsUIAvailable()
5958
&& (!player.mouseInterface || (PaintWheel.PaintingUIOpen && PaintWheel.PaintWheelPanel.IsMouseHovering))
60-
&& player.inventory[player.selectedItem].IsTheSameAs(item))
59+
&& player.HeldItem.IsTheSameAs(item))
6160
{
6261
if (++mouseRightTimer == 2)
6362
PaintWheel.PaintingUIOpen = !PaintWheel.PaintingUIOpen;

UI/AutoHammerWheel.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ class AutoHammerWheel : UIPanel
1616
private static float AutoHammerWheelHeight;
1717
private static List<UIImageButton> AutoHammerElements;
1818
public static int selectedIndex = 5;//full tile
19-
public static bool IsAutoHammerUIVisible { get; set; }
20-
public static bool AutoHammerUIOpen { get; set; }
19+
public static bool IsAutoHammerUIVisible;
20+
public static bool AutoHammerUIOpen;
2121
public static bool Hovering = AutoHammerWheelPanel != null && AutoHammerWheelPanel.IsMouseHovering && IsAutoHammerUIVisible;
2222

2323
public static UIPanel CreateAutoHammerWheelPanel(int mouseX, int mouseY, BasePanel basePanel)

0 commit comments

Comments
 (0)