// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ . // ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌· // ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀ // ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌ // ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀ // Magicbane Emulator Project © 2013 - 2022 // www.magicbane.com package engine.objects; import engine.server.MBServerStatics; import java.util.concurrent.ConcurrentHashMap; public enum Resource { ADAMANT("DefaultAdamant", 1557001525, 10, 1580003), AGATE("DefaultAgate", -1096157543, 20, 1580009), ANTIMONY("DefaultAntimony", 1256147265, 10, 1580014), AZOTH("DefaultAzoth", -1205326951, 20, 1580012), BLOODSTONE("DefaultBloodstone", -1912381716, 5, 1580020), BRONZEWOOD("DefaultBronzewood", -519681813, 30, 1580006), COAL("DefaultCoal", -1672872311, 30, 1580008), DIAMOND("DefaultDiamond", 1540225085, 20, 1580010), GALVOR("DefaultGalvor", -1683992404, 5, 1580017), IRON("DefaultIron", -1673518119, 20, 1580002), LUMBER("DefaultLumber", -1628412684, 100, 1580004), MANDRAKE("DefaultMandrake", -1519910613, 10, 1580007), MITHRIL("DefaultMithril", 626743397, 5, 1580021), OAK("DefaultOak", -1653034775, 30, 1580005), OBSIDIAN("DefaultObsidian", 778019055, 5, 1580019), ONYX("DefaultOnyx", -1675952151, 10, 1580011), ORICHALK("DefaultOrichalk", -1468730955, 30, 1580013), QUICKSILVER("DefaultQuicksilver", -2081208434, 10, 1580016), STONE("DefaultStone", -1094703863, 100, 1580000), SULFUR("DefaultSulfur", -1763687412, 10, 1580015), TRUESTEEL("DefaultTruesteel", -169012482, 20, 1580001), WORMWOOD("DefaultWormwood", 1204785075, 5, 1580018), GOLD("DefaultGold", -1670881623, 50000, 7); public final String name; public final int hash; public final int baseProduction; public final int UUID; public static ConcurrentHashMap resourceByHash; Resource(String name, int hash, int baseProduction, int uuid) { this.name = name; this.hash = hash; this.baseProduction = baseProduction; this.UUID = uuid; } public static Resource GetResourceByHash(int hash){ for (Resource resource: Resource.values()){ if (hash == resource.hash) return resource; } return Resource.MITHRIL; } //load lookups via hashes static { resourceByHash = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW); for (Resource r : Resource.values()) resourceByHash.put(r.hash, r); } }