public static bool ShopItem(int who, int value) { var coinTypes = new int[] { ItemID.CopperCoin, ItemID.SilverCoin, ItemID.GoldCoin, ItemID.PlatinumCoin }; Stash.Initialize(coinTypes); Stash a = null; if ((a = CoinInit(who)) >= value) { a -= value; var inv = Main.player[who].inventory; for (int i = 0; i < inv.Length; i++) { foreach (int ct in coinTypes) { if (inv[i].type == ct) { InvPlayer.UpdateItem(ref inv[i], i, who, true); } } } var tsp = TShock.Players[who]; foreach (int ct in coinTypes) { tsp.GiveItem(ct, "", 32, 48, (int)a.GetCurrency(ct)); } return(true); } return(false); }