// OnDeactivate is called when the UserInterface switches to a different state. In this mod, we switch between no state (null) and this state (ExamplePersonUI). // Using OnDeactivate is useful for clearing out Item slots and returning them to the player, as we do here. public override void OnDeactivate() { VampireNecklaceType VNType = Main.LocalPlayer.GetModPlayer <VampireNecklaceType>(); if (IsBought && VNType.CheckHolding()) { if (!_vanillaItemSlot.Item.IsAir) { _vanillaItemSlot.Item.TurnToAir(); } } else { Main.LocalPlayer.QuickSpawnClonedItem(_vanillaItemSlot.Item, _vanillaItemSlot.Item.stack); _vanillaItemSlot.Item.TurnToAir(); } }
public SkinInventoryItemSlots(int Iteration, int context = ItemSlot.Context.ShopItem, float scale = 1f) { VampireNecklaceType VNType = Main.LocalPlayer.GetModPlayer <VampireNecklaceType>(); _context = ItemSlot.Context.ShopItem; _scale = scale; Item = new Item(); switch (Iteration) { case 0: if (VNType.PlayerProgress >= 1) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceSlime>()); } break; case 1: if (VNType.PlayerProgress >= 2) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceEye>()); } break; case 2: if (VNType.PlayerProgress >= 3) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceEow>()); } break; case 3: if (VNType.PlayerProgress >= 3) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceBrain>()); } break; case 4: if (VNType.PlayerProgress >= 4) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceBee>()); } break; case 5: if (VNType.PlayerProgress >= 5) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceSkeletron>()); } break; case 6: if (VNType.PlayerProgress >= 6) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceWof>()); } break; case 7: if (VNType.PlayerProgress >= 7) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceDestroyer>()); } break; case 8: if (VNType.PlayerProgress >= 8) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceTwins>()); } break; case 9: if (VNType.PlayerProgress >= 9) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceSkeletronPrime>()); } break; case 10: if (VNType.PlayerProgress >= 10) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklacePlantera>()); } break; case 11: if (VNType.PlayerProgress >= 11) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceGolem>()); } break; case 12: if (VNType.PlayerProgress >= 12) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceDukeFishron>()); } break; case 13: if (VNType.PlayerProgress >= 13) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceCultist>()); } break; case 14: if (VNType.PlayerProgress >= 14) { Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklaces.VampNecklaceMoonLord>()); } break; case 15: Item.SetDefaults(ModContent.ItemType <Items.Accessories.VampNecklace>()); break; default: Item.SetDefaults(0); break; } Width.Set(Main.inventoryBack9Texture.Width * scale, 0f); Height.Set(Main.inventoryBack9Texture.Height * scale, 0f); }