|
|
|
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
|
|
|
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
|
|
|
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
|
|
|
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
|
|
|
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
|
|
|
// Magicbane Emulator Project © 2013 - 2022
|
|
|
|
// www.magicbane.com
|
|
|
|
|
|
|
|
|
|
|
|
package engine.objects;
|
|
|
|
|
|
|
|
import engine.Enum;
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
|
|
|
public enum MineProduction {
|
|
|
|
|
|
|
|
LUMBER("Lumber Camp", new HashMap<>(), Enum.ResourceType.WORMWOOD, 1618637196, 1663491950),
|
|
|
|
ORE("Ore Mine", new HashMap<>(), Enum.ResourceType.OBSIDIAN, 518103023, -788976428),
|
|
|
|
GOLD("Gold Mine", new HashMap<>(), Enum.ResourceType.GALVOR, -662193002, -1227205358),
|
|
|
|
MAGIC("Magic Mine", new HashMap<>(), Enum.ResourceType.BLOODSTONE, 504746863, -1753567069);
|
|
|
|
|
|
|
|
public final String name;
|
|
|
|
public final HashMap<Integer, Enum.ResourceType> resources;
|
|
|
|
public final Enum.ResourceType xpac;
|
|
|
|
public final int hash;
|
|
|
|
public final int xpacHash;
|
|
|
|
|
|
|
|
MineProduction(String name, HashMap<Integer, Enum.ResourceType> resources, Enum.ResourceType xpac, int hash, int xpacHash) {
|
|
|
|
this.name = name;
|
|
|
|
this.resources = resources;
|
|
|
|
this.xpac = xpac;
|
|
|
|
this.hash = hash;
|
|
|
|
this.xpacHash = xpacHash;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static void addResources() {
|
|
|
|
if (MineProduction.LUMBER.resources.size() == 0) {
|
|
|
|
MineProduction.LUMBER.resources.put(7, Enum.ResourceType.GOLD);
|
|
|
|
MineProduction.LUMBER.resources.put(1580004, Enum.ResourceType.LUMBER);
|
|
|
|
MineProduction.LUMBER.resources.put(1580005, Enum.ResourceType.OAK);
|
|
|
|
MineProduction.LUMBER.resources.put(1580006, Enum.ResourceType.BRONZEWOOD);
|
|
|
|
MineProduction.LUMBER.resources.put(1580007, Enum.ResourceType.MANDRAKE);
|
|
|
|
}
|
|
|
|
if (MineProduction.ORE.resources.size() == 0) {
|
|
|
|
MineProduction.ORE.resources.put(7, Enum.ResourceType.GOLD);
|
|
|
|
MineProduction.ORE.resources.put(1580000, Enum.ResourceType.STONE);
|
|
|
|
MineProduction.ORE.resources.put(1580001, Enum.ResourceType.TRUESTEEL);
|
|
|
|
MineProduction.ORE.resources.put(1580002, Enum.ResourceType.IRON);
|
|
|
|
MineProduction.ORE.resources.put(1580003, Enum.ResourceType.ADAMANT);
|
|
|
|
}
|
|
|
|
if (MineProduction.GOLD.resources.size() == 0) {
|
|
|
|
MineProduction.GOLD.resources.put(7, Enum.ResourceType.GOLD);
|
|
|
|
MineProduction.GOLD.resources.put(1580000, Enum.ResourceType.STONE);
|
|
|
|
MineProduction.GOLD.resources.put(1580008, Enum.ResourceType.COAL);
|
|
|
|
MineProduction.GOLD.resources.put(1580009, Enum.ResourceType.AGATE);
|
|
|
|
MineProduction.GOLD.resources.put(1580010, Enum.ResourceType.DIAMOND);
|
|
|
|
MineProduction.GOLD.resources.put(1580011, Enum.ResourceType.ONYX);
|
|
|
|
}
|
|
|
|
if (MineProduction.MAGIC.resources.size() == 0) {
|
|
|
|
MineProduction.MAGIC.resources.put(7, Enum.ResourceType.GOLD);
|
|
|
|
MineProduction.MAGIC.resources.put(1580012, Enum.ResourceType.AZOTH);
|
|
|
|
MineProduction.MAGIC.resources.put(1580013, Enum.ResourceType.ORICHALK);
|
|
|
|
MineProduction.MAGIC.resources.put(1580014, Enum.ResourceType.ANTIMONY);
|
|
|
|
MineProduction.MAGIC.resources.put(1580015, Enum.ResourceType.SULFUR);
|
|
|
|
MineProduction.MAGIC.resources.put(1580016, Enum.ResourceType.QUICKSILVER);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public static MineProduction getByName(String name) {
|
|
|
|
if (name.toLowerCase().equals("lumber"))
|
|
|
|
return MineProduction.LUMBER;
|
|
|
|
else if (name.toLowerCase().equals("ore"))
|
|
|
|
return MineProduction.ORE;
|
|
|
|
else if (name.toLowerCase().equals("gold"))
|
|
|
|
return MineProduction.GOLD;
|
|
|
|
else
|
|
|
|
return MineProduction.MAGIC;
|
|
|
|
}
|
|
|
|
|
|
|
|
public boolean validForMine(Enum.ResourceType r, boolean isXpac) {
|
|
|
|
if (r == null)
|
|
|
|
return false;
|
|
|
|
if (this.resources.containsKey(r.templateID))
|
|
|
|
return true;
|
|
|
|
else
|
|
|
|
return isXpac && r.templateID == this.xpac.templateID;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//Name Xpac Resources
|
|
|
|
//Lumber Camp Wormwood Gold, Lumber, Oak, Bronzewood, Mandrake
|
|
|
|
//Ore Mine Obsidian Gold, Stone, Truesteal, Iron, Adamant
|
|
|
|
//Gold Mine Galvor Gold, Coal, Agate, Diamond, Onyx
|
|
|
|
//Magic Mine Bloodstone Gold, Orichalk, Azoth, Antimony, Quicksilver, Sulfer
|
|
|
|
}
|