Browse Source

Itembase refactored out of gold

combat-2
MagicBot 8 months ago
parent
commit
1cf9831e20
  1. 2
      src/engine/objects/Account.java
  2. 4
      src/engine/objects/CharacterItemManager.java
  3. 31
      src/engine/objects/Item.java

2
src/engine/objects/Account.java

@ -182,7 +182,7 @@ public class Account extends AbstractGameObject {
} }
if (this.vaultGold == null) { if (this.vaultGold == null) {
this.vaultGold = Item.newGoldItem(this.getObjectUUID(), ItemBase.getItemBase(7), ItemContainerType.VAULT); this.vaultGold = Item.newGoldItem(this.getObjectUUID(), ItemContainerType.VAULT);
if (this.vaultGold != null) if (this.vaultGold != null)
this.vault.add(this.vaultGold); this.vault.add(this.vaultGold);

4
src/engine/objects/CharacterItemManager.java

@ -87,14 +87,14 @@ public class CharacterItemManager {
//create inventory gold if needed //create inventory gold if needed
if (this.goldInventory == null) if (this.goldInventory == null)
if (this.absCharacter != null && (this.absCharacter.getObjectType().equals(GameObjectType.PlayerCharacter) || this.absCharacter.getObjectType().equals(GameObjectType.NPC))) if (this.absCharacter != null && (this.absCharacter.getObjectType().equals(GameObjectType.PlayerCharacter) || this.absCharacter.getObjectType().equals(GameObjectType.NPC)))
this.goldInventory = Item.newGoldItem(this.absCharacter, ItemBase.getItemBase(7), Enum.ItemContainerType.INVENTORY); this.goldInventory = Item.newGoldItem(this.absCharacter, Enum.ItemContainerType.INVENTORY);
else else
this.goldInventory = new MobLoot(this.absCharacter, 0); this.goldInventory = new MobLoot(this.absCharacter, 0);
//create bank gold if needed //create bank gold if needed
if (this.goldBank == null) if (this.goldBank == null)
if (this.absCharacter != null && this.absCharacter.getObjectType().equals(GameObjectType.PlayerCharacter)) if (this.absCharacter != null && this.absCharacter.getObjectType().equals(GameObjectType.PlayerCharacter))
this.goldBank = Item.newGoldItem(this.absCharacter, ItemBase.getItemBase(7), Enum.ItemContainerType.BANK); this.goldBank = Item.newGoldItem(this.absCharacter, Enum.ItemContainerType.BANK);
else else
this.goldBank = new MobLoot(this.absCharacter, 0); this.goldBank = new MobLoot(this.absCharacter, 0);

31
src/engine/objects/Item.java

@ -539,16 +539,16 @@ public class Item extends AbstractWorldObject {
return (Item) DbManager.getFromCache(GameObjectType.Item, id); return (Item) DbManager.getFromCache(GameObjectType.Item, id);
} }
public static Item newGoldItem(AbstractWorldObject awo, ItemBase ib, Enum.ItemContainerType containerType) { public static Item newGoldItem(AbstractWorldObject awo, Enum.ItemContainerType containerType) {
return newGoldItem(awo, ib, containerType, true); return newGoldItem(awo, containerType, true);
} }
//used for vault! //used for vault!
public static Item newGoldItem(int accountID, ItemBase ib, Enum.ItemContainerType containerType) { public static Item newGoldItem(int accountID, Enum.ItemContainerType containerType) {
return newGoldItem(accountID, ib, containerType, true); return newGoldItem(accountID, containerType, true);
} }
private static Item newGoldItem(int accountID, ItemBase ib, Enum.ItemContainerType containerType, boolean persist) { private static Item newGoldItem(int accountID, Enum.ItemContainerType containerType, boolean persist) {
int ownerID; int ownerID;
OwnerType ownerType; OwnerType ownerType;
@ -556,7 +556,7 @@ public class Item extends AbstractWorldObject {
ownerID = accountID; ownerID = accountID;
ownerType = OwnerType.Account; ownerType = OwnerType.Account;
Item newGold = new Item(ib.getUUID()); Item newGold = new Item(ResourceType.GOLD.templateID);
newGold.ownerID = ownerID; newGold.ownerID = ownerID;
newGold.ownerType = ownerType; newGold.ownerType = ownerType;
newGold.containerType = containerType; newGold.containerType = containerType;
@ -574,7 +574,7 @@ public class Item extends AbstractWorldObject {
return newGold; return newGold;
} }
private static Item newGoldItem(AbstractWorldObject awo, ItemBase ib, Enum.ItemContainerType containerType, boolean persist) { private static Item newGoldItem(AbstractWorldObject awo, Enum.ItemContainerType containerType, boolean persist) {
int ownerID; int ownerID;
OwnerType ownerType; OwnerType ownerType;
@ -610,7 +610,7 @@ public class Item extends AbstractWorldObject {
} }
} }
Item newGold = new Item(ib.getUUID()); Item newGold = new Item(ResourceType.GOLD.templateID);
newGold.ownerID = ownerID; newGold.ownerID = ownerID;
newGold.ownerType = ownerType; newGold.ownerType = ownerType;
newGold.containerType = containerType; newGold.containerType = containerType;
@ -628,21 +628,6 @@ public class Item extends AbstractWorldObject {
return newGold; return newGold;
} }
// This is to be used for trades - the new item is not stored in the database
public static Item newGoldItemTemp(AbstractWorldObject awo, ItemBase ib) {
return Item.newGoldItem(awo, ib, Enum.ItemContainerType.NONE, false);
}
public static Item getItem(int UUID) {
if (UUID == 0)
return null;
Item item = (Item) DbManager.getFromCache(GameObjectType.Item, UUID);
if (item != null)
return item;
return DbManager.ItemQueries.GET_ITEM(UUID);
}
public static void addEnchantValue(String enchant, int value) { public static void addEnchantValue(String enchant, int value) {
Item.enchantValues.put(enchant, value); Item.enchantValues.put(enchant, value);
} }

Loading…
Cancel
Save