  			return -1;
  		}
  
+-		public Player()
 +		internal ModPlayer[] modPlayers = new ModPlayer[0];
 +
 +		public ModPlayer GetModPlayer(Mod mod, string name)
-+		{
+ 		{
 +			return PlayerHooks.GetModPlayer(this, mod, name);
 +		}
 +

 			Main.mouseItem = new Item();
 		}
 
@@ -33377,7 +_,7 @@
 			{
 				return false;

+			return (T)GetModPlayer(mod, typeof(T).Name);
+		}
+
+		public Player(bool startupInventory = true)
+		{
+			PlayerHooks.SetupPlayer(this);
 			int[] array = new int[2];
 			this.hurtCooldowns = array;
 			this.width = 20;
@@ -34288,16 +_,17 @@
 			}
 			this.trashItem = new Item();
 			this.grappling[0] = -1;
-			this.inventory[0].SetDefaults("Copper Shortsword");
-			this.inventory[1].SetDefaults("Copper Pickaxe");
-			this.inventory[2].SetDefaults("Copper Axe");
+		    if (startupInventory)
+		    {
+			    PlayerHooks.SetStartInventory(this);
+		    }
 			this.statManaMax = 20;
 			this.extraAccessory = false;
 			if (Main.cEd)
