Code:
public class ArmourSets {
public static final int CHISEL = 1755;
public enum Sets {
BRONZE_LG(11814,3, 1155, 1117, 1075, 1189),
BRONZE_SK(11816,3, 1155, 1117,1087, 1189),
IRON_LG(11818,3, 1153, 1115, 1067, 1191),
IRON_SK(11820,3, 1153, 1115, 1081, 1191),
STEEL_LG(11822,3, 1157, 1119,1069, 1193),
STEEL_SK(11824,3, 1157, 1119, 1083, 1193),
BLACK_LG(11826,3, 1165, 1125, 1077, 1195),
BLACK_SK(11828,3, 1165, 1125,1089, 1195),
MITHRIL_LG(11830,3, 1159, 1121, 1071, 1197),
MITHRIL_SK(11832,3, 1159, 1121, 1085, 1197),
ADAMANT_LG(11834,3, 1161, 1123,1073, 1199),
ADAMANT_SK(11836,3, 1161, 1123, 1091, 1199),
PROSELYTE_LG(9666,2, 9672, 9674, 9676),
PROSELYTE_SK(9670,2, 9672, 9674, 9678),
RUNE_LG(11838,3, 1163, 1127, 1079, 1201),
RUNE_SK(11840,3, 1163, 1127,1093, 1201),
DRAG_CHAIN_LG(11842,3, 1149, 2513, 4087, 1187),
DRAG_CHAIN_SK(11844,3, 1149, 2513, 4585, 1187),
DRAG_PLATE_LG(14529,3, 11335,14479, 4087, 1187),
DRAG_PLATE_SK(14531,3, 11335, 14479, 4585,1187),
BLACK_H1_LG(19520,3, 10306, 19167, 7332, 19169),
BLACK_H1_SK(19530,3, 10306, 19167, 7332, 19171),
BLACK_H2_LG(19522,3, 10308,19188, 7338, 19190),
BLACK_H2_SK(19532,3, 10308, 19188, 7338,19192),
BLACK_H3_LG(19524,3, 10310, 19209, 7344, 19211),
BLACK_H3_SK(19534,3, 10310, 19209, 7344, 19213),
BLACK_H4_LG(19526,3, 10312,19230, 7350, 19232),
BLACK_H4_SK(19536,3, 10312, 19230, 7350,19234),
BLACK_H5_LG(19528,3, 10314, 19251, 7356, 19253),
BLACK_H5_SK(19538,3, 10314, 19251, 7356, 19255),
BLACK_TRIM_LG(11878,3, 2587,2583, 2585, 2589),
BLACK_TRIM_SK(11880,3, 2587, 2583, 3472, 2589),
BLACK_GTRIM_LG(11878,3, 2595, 2591, 2593, 2597),
BLACK_GTRIM_SK(11880,3, 2595,2591, 3473, 2597),
ADAMANT_H1_LG(19540,3, 10296, 19173, 7334,19175),
ADAMANT_H1_SK(19550,3, 10296, 19173, 7334, 19177),
ADAMANT_H2_LG(19542,3, 10298, 19194, 7340, 19196),
ADAMANT_H2_SK(19552,3, 10298,19194, 7340, 19198),
ADAMANT_H3_LG(19544,3, 10300, 19215, 7346,19217),
ADAMANT_H3_SK(19554,3, 10300, 19215, 7346, 19219),
ADAMANT_H4_LG(19546,3, 10302, 19236, 7352, 19238),
ADAMANT_H4_SK(19556,3, 10302,19236, 7352, 19240),
ADAMANT_H5_LG(19548,3, 10304, 19257, 7358,19259),
ADAMANT_H5_SK(19558,3, 10304, 19257, 7358, 19261),
ADAMANT_TRIM_LG(11886,3, 2605, 2599, 2601, 2603),
ADAMANT_TRIM_SK(11888,3, 2605,2599, 3474, 2603),
ADAMANT_GTRIM_LG(11890,3, 2613, 2607, 2609,2611),
ADAMANT_GTRIM_SK(11892,3, 2613, 2607, 3475, 2611),
RUNE_H1_LG(19560,3, 10286,19179, 19182, 7336),
RUNE_H1_SK(19570,3, 10286,19179, 19185, 7336),
RUNE_H2_LG(19562,3, 10288, 19200, 19203,7342),
RUNE_H2_SK(19572,3, 10288, 19200, 19206, 7342),
RUNE_H3_LG(19564,3, 10290, 19221, 19224, 7348),
RUNE_H3_SK(19574,3, 10290,19221, 19227, 7348),
RUNE_H4_LG(19566,3, 10292, 19242, 19245,7354),
RUNE_H4_SK(19576,3, 10292, 19242, 19248, 7354),
RUNE_H5_LG(19568,3, 10294, 19263, 19266, 7360),
RUNE_H5_SK(19578,3, 10294,19263, 19269, 7360),
RUNE_TRIM_LG(11894,3, 2627, 2623, 2625, 2629),
RUNE_TRIM_SK(11896,3, 2627, 2623, 3477, 2629),
RUNE_GTRIM_LG(11898,3, 2619,2615, 2617, 2621),
RUNE_GTRIM_SK(11900,3, 2619, 2615, 3676, 2621),
GUTHIX_LG(11926,3, 2673, 2669, 2671, 2675),
GUTHIX_SK(11932,3, 2673, 2669,3480, 2675),
SARADOMIN_LG(11928,3, 2665, 2661, 2663, 2667),
SARADOMIN_SK(11934,3, 2665, 2661, 3479, 2667),
ZAMORAK_LG(11930,3, 2657, 2653,2655, 2659),
ZAMORAK_SK(11936,3, 2657, 2653, 3478, 2659),
ROCKSHELL(11942,4, 6128, 6129, 6130, 6151, 6145),
ELITEBLACK(14527,2, 14494,14492, 14490),
THIRDAGEMELEE(11858,3, 10350, 10348, 10352, 10346),
THIRDAGERANGE(11860,3, 10334, 10330, 10332, 10336),
THIRDAGEMAGE(11862,3, 10342,10334, 10338, 10340),
DHAROK(11848,3, 4716, 4718, 4720, 4722),
VERAC(1856,3, 4753, 4755, 4757, 4759);
private int setId;
private int[] items;
private int requiredSlots;
private Sets(int setId, int requiredSlots, int... items) {
this.setId = setId;
this.requiredSlots = requiredSlots;
this.items = items;
}
private static Map<Integer, Sets> sets = new HashMap<Integer, Sets>();
public static Sets forId(int itemId) {
return sets.get(itemId);
}
static {
for (Sets set : Sets.values()) {
sets.put(set.getId(), set);
}
}
public int getId() {
return setId;
}
public int[] getItems() {
return items;
}
public int getRequiredSlots(){
return requiredSlots;
}
}
public static void exchangeSets(Player player, Sets set) {
if (set != null) {
if(player.getInventory().getFreeSlots() > set.getRequiredSlots()){
for (int exchangedId : set.getItems())
player.getInventory().addItem(new Item(exchangedId, 1));
player.getInventory().deleteItem(set.getId(), 1);
}
}else{
player.getPackets().sendGameMessage("You don't have enough space in your inventory.");
}
}
public static Sets getArmourSet(int itemUsedId, int itemUsedWithId) {
Sets set = Sets.forId(itemUsedId);
int selected;
if (set != null)
selected = itemUsedWithId;
else {
set = Sets.forId(itemUsedWithId);
selected = itemUsedId;
}
return set != null && CHISEL == selected ? set : null;
}
}
Credits