public static void BuyItem(this TSPlayer plr, UserAccount owner, PSSign sign, Item item, int stack, int cost) { if (sign.ChestID != -1) { if (sign.Shop.UnLimit) { if (plr.TakeMoney(cost) && UEF.MoneyUp(owner.Name, cost)) { plr.SendSuccessMessage($"[C/66D093:<PowerfulSign>] 成功购买 {stack} 个 {item.Name}, 花费 {cost} {PSPlugin.Config.MoneyName}."); plr.GiveItemEX(item.type, stack, item.prefix); } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 发生错误."); } } else { if (sign.Inventory >= stack) { if (plr.Balance() >= cost) { if (plr.IsInventoryAviliable(item, stack)) { if (sign.DelItemFromChest(item, stack) && plr.TakeMoney(cost) && UEF.MoneyUp(owner.Name, cost)) { plr.SendSuccessMessage($"[C/66D093:<PowerfulSign>] 成功购买 {stack} 个 {item.Name}, 花费 {cost} {PSPlugin.Config.MoneyName}."); plr.GiveItemEX(item.type, stack, item.prefix); } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 发生错误."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 背包空间不足, 无法装下 {stack} 个 {item.Name}."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 你的余额不足. 当前剩余 {plr.Balance()}."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 商店库存不足, 无法购买. 当前剩余: {sign.Inventory}."); } } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 未发现此商店的附属储存空间."); } }
public static void SellItem(this TSPlayer plr, UserAccount owner, PSSign sign, Item item, int stack, int cost) { if (sign.ChestID != -1) { if (sign.Shop.UnLimit) { if (plr.DelItemFromInventory(item, stack) && plr.GiveMoney(cost)) { plr.SendSuccessMessage($"[C/66D093:<PowerfulSign>] 成功出售 {stack} 个 {item.Name}, 获得 {cost} {PSPlugin.Config.MoneyName}."); } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 发生错误."); } } else { if (sign.AviliableSlot >= stack) { if (UEF.Balance(owner.Name) >= cost) { if (plr.ItemNumInInventory(item.type, item.prefix) >= stack) { if (sign.AddItemToChest(item, stack) && plr.DelItemFromInventory(item, stack) && plr.GiveMoney(cost) && UEF.MoneyDown(owner.Name, cost)) { plr.SendSuccessMessage($"[C/66D093:<PowerfulSign>] 成功出售 {stack} 个 {item.Name}, 获得 {cost} {PSPlugin.Config.MoneyName}."); } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 发生错误."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 未在你的背包中发现足够的 {item.Name}. 已找到 {plr.ItemNumInInventory(item.type, item.prefix)} 个."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 卖家余额不足以支付此次交易."); } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 商店储存空间不足, 无法装下 {stack} 个 {item.Name}. 当前剩余空间 {sign.AviliableSlot}."); } } } else { plr.SendErrorMessage($"[C/66D093:<PowerfulSign>] 未发现此商店的附属储存空间."); } }