Switch to Maven file structure

This commit is contained in:
P0nk
2021-03-30 21:07:35 +02:00
parent 4acc5675d6
commit 813643036b
817 changed files with 16 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
package server.gachapon;
/**
*
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class ElNath extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2041012, 2048003, 2043800, 2043301, 2040301, 2043101, 2043201, 2043001, 2044301, 2043801, 2044201, 2043701, 2044502,
2041011, 2041014, 2044602, 2043302, 2043202, 2043002, 2048005, 2044402, 2044302, 2043802, 2044102, 2044202, 2043702,
2044812,
/* Useable drop */
2000004, 2000005,
/* Common equipment */
1402010, 1032003, 1442013, 1432009, 1302022, 1302029, 1322021, 1302026, 1442017, 1322023, 1102011, 1032008, 1322026,
1442016, 1312000, 1032007, 1322025, 1322027, 1032020, 1442015, 1432017, 1302027, 1302049, 1372006, 1032022, 1032021,
1372004, 1332020, 1322007, 1032006, 1302028, 1322003, 1302007, 1092030, 1302021, 1322024, 1322012, 1032005, 1322022,
1032013, 1302025, 1302013, 1032017, 1032002, 1032001, 1302017, 1432018, 1442012, 1302000, 1032000, 1102013, 1442022,
1372005, 1442021, 1032009, 1302016,
/* Warrior equipment */
1442003, 1312007, 1402008, 1312008, 1412008, 1442009, 1302004, 1312006, 1442016, 1402012, 1302003, 1312005, 1432002,
1432001, 1302008, 1040030, 1402015, 1322015, 1432006, 1322002, 1302010, 1322017, 1402003, 1402006, 1322000, 1422001,
1442001, 1422004, 1412004, 1322009, 1322011, 1442000, 1412005, 1402002, 1432004, 1442010, 1422008, 1442007, 1422009,
1322019, 1412003, 1412007, 1302009, 1412000, 1322014, 1402001, 1402007, 1432005,
/* Magician equipment */
1382001, 1372007, 1382010, 1382007, 1372000, 1372003, 1382011, 1382006, 1382000,
/* Bowman equipment */
1452004, 1452000, 1452010, 1452015, 1452014, 1462012, 1462010, 1452017, 1462000, 1452008, 1452006, 1462006, 1452007,
1452002, 1402001,
/* Thief equipment */
1472006, 1472010, 1332022, 1332011, 1472015, 1472016, 1472023, 1472028, 1472022, 1472011, 1472026, 1332024, 1332009,
1472017, 1472013, 1472029, 1472021, 1332015, 1332031, 1332023, 1332004, 1472000, 1332019, 1472027, 1332018, 1472007,
1332012, 1332016, 1472024, 1332017, 1332003, 1472012, 1472014, 1472005, 1472018, 1472001,
/* Pirate equipment */
1072294, 1492009
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2022439, 2040804, 2040805, 2340000};
}
@Override
public int[] getRareItems() {
return new int [] {2043803, 1102085};
}
}

View File

@@ -0,0 +1,66 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate equipment
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class Ellinia extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int[] {
/* Scroll */
2043302, 2040002, 2043102, 2043002, 2044402, 2044302, 2043802, 2044002, 2041017, 2044902,
/* Useable drop */
2000004, 2000005, 2022025, 2022026,
/* Common equipment */
1402010, 1442013, 1432009, 1002060, 1002063, 1322023, 1002042, 1050018, 1082147, 1002026, 1002392, 1062024, 1442016, 1322025,
1322027, 1302027, 1372006, 1302019, 1092022, 1302021, 1041004, 1002395, 1322024, 1082148, 1002012, 1322012, 1032028, 1102012,
1322022, 1051017, 1302013, 1082146, 1442014, 1302017, 1102013, 1102003, 1002041, 1002097, 1302016, 1082145,
/* Warrior equipment */
1412006, 1040029, 1040086, 1050005, 1060028, 1002059, 1060008, 1061088, 1402012, 1302003, 1432002, 1312011, 1302008, 1040030,
1002004, 1402015, 1322028, 1322015, 1432006, 1442006, 1322000, 1002085, 1002056, 1092013, 1002058, 1002050, 1060011, 1322009,
1322011, 1442000, 1051011, 1061016, 1060018, 1041024, 1061020, 1302005, 1402002, 1002030, 1092004, 1041023, 1422008, 1060009,
1051000, 1002021, 1442005, 1412003, 1412007, 1422007, 1302009, 1402000, 1402001, 1402007, 1432005,
/* Magician equipment */
1382001, 1002037, 1060014, 1040018, 1061027, 1050002, 1002152, 1051027, 1050035, 1050056, 1051047, 1051030, 1002274, 1050074,
1002218, 1002254, 1082088, 1382007, 1002013, 1082087, 1372008, 1382008, 1372002, 1372003, 1382011, 1382004, 1050047, 1040019,
1041041, 1061034, 1041051, 1051045, 1051024, 1082081, 1041030, 1040018, 1002073, 1382003, 1082086, 1382014, 1050055, 1050025,
1002155, 1060015,
/* Bowman equipment */
1452004, 1462003, 1060070, 1002118, 1061058, 1040003, 1002160, 1002121, 1040068, 1061063, 1040080, 1462004, 1041008, 1061006,
1061009, 1040022, 1002168, 1040067, 1060056, 1041054, 1041067, 1060063, 1002213, 1002119, 1462005, 1452001, 1462000, 1040025,
1002166, 1002161, 1040069, 1051039, 1452006, 1462006, 1452007, 1402001, 1041062,
/* Thief equipment */
1472010, 1472006, 1332011, 1472031, 1041048, 1472019, 1041095, 1040095, 1002128, 1061077, 1060025, 1041040, 1061033, 1472028,
1472022, 1472011, 1040096, 1062002, 1002129, 1472026, 1332009, 1060043, 1002249, 1472021, 1040084, 1332015, 1002173, 1002148,
1332004, 1332018, 1472009, 1061069, 1002176, 1041044, 1061037, 1060032, 1472020, 1040060, 1472018, 1332013, 1332002, 1402001,
/* Pirate equipment */
1002625, 1002616, 1482005, 1052098, 1482003,
1482001, 1492004, 1002622, 1492005, 1082195
};
}
@Override
public int[] getUncommonItems() {
return new int [] {1082149, 1002391, 1002419};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}

View File

@@ -0,0 +1,57 @@
/*
This file is part of the OdinMS Maple Story Server
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
Matthias Butz <matze@odinms.de>
Jan Christian Meyer <vimes@odinms.de>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation version 3 as published by
the Free Software Foundation. You may not use, modify or distribute
this program under any other version of the GNU Affero General Public
License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package server.gachapon;
/**
*
* @author Alan (SharpAceX)
*/
public abstract class GachaponItems {
public abstract int [] getCommonItems();
public abstract int [] getUncommonItems();
public abstract int [] getRareItems();
private final int [] commonItems;
private final int [] uncommonItems;
private final int [] rareItems;
public GachaponItems() {
this.commonItems = getCommonItems();
this.uncommonItems = getUncommonItems();
this.rareItems = getRareItems();
}
public final int[] getItems(int tier) {
if (tier == 0) {
return commonItems;
} else if (tier == 1) {
return uncommonItems;
} else if (tier == 2) {
return rareItems;
}
return null;
}
}

View File

@@ -0,0 +1,47 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX)
* @author Ronan - added ores and reworked global loots
*/
public class Global extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int[] {
/* Potions */
2000004, 2000005, 2001002, 2001001, 2020012, 2020013, 2020014, 2020015,
/* Ores */
4004000, 4004001, 4004002, 4004003, 4004004,
4006000, 4006001,
4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007,
4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008
};
}
@Override
public int[] getUncommonItems() {
return new int[] {
/* Potions */
2022179, 2022273, 2022282, 2022283, 2022285, 2022245, 2022182,
/* Scrolls */
2049003
};
}
@Override
public int[] getRareItems() {
return new int[] {
/* Scrolls */
2049100, 2340000,
/* Chairs */
3010063, 3010064
};
}
}

View File

@@ -0,0 +1,61 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class Henesys extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2040001, 2041002, 2040702, 2043802, 2040402, 2043702, 2044813,
/* Useable Drops */
2000004, 2000005, 2020012, 2030007,
/* Common equipment */
1432009, 1302022, 1322021, 1302026, 1442017, 1082147, 1102043, 1322026, 1442016, 1402012, 1322025, 1322027, 1302027,
1312012, 1062000, 1332020, 1302028, 1372002, 1002033, 1092022, 1302021, 1322009, 1322024, 1082148, 1002012, 1322012,
1322022, 1002020, 1302013, 1082146, 1442014, 1002096, 1302017, 1442012,
/* Warrior equipment */
1092011, 1092014, 1302003, 1432001, 1312011, 1002088, 1041020, 1322015, 1442004, 1422008, 1302056, 1432000, 1442005,
/* Magician equipment */
1382001, 1041053, 1041029, 1050053, 1051032, 1050073, 1061036, 1002253, 1002034, 1051025, 1050067, 1051052, 1002072,
1002144, 1051054, 1050069, 1372007, 1050056, 1050074, 1002254, 1002274, 1002218, 1051055, 1382010, 1002246, 1050039,
1382007, 1372000, 1002013, 1050072, 1002036, 1002244, 1372008, 1382008, 1382011, 1092021, 1051034, 1050047, 1040019,
1041031, 1051033, 1002153, 1002252, 1051024, 1051053, 1050068, 1382003, 1382006, 1050055, 1051031, 1050025, 1002155,
1002245, 1372001,
/* Bowman equipment */
1452004, 1452023, 1060057, 1432001, 1040071, 1002137, 1462009, 1452017, 1040025, 1041027, 1452005, 1452007, 1061057,
/* Thief equipment */
1472006, 1472019, 1060084, 1472028, 1472004, 1002179, 1082074, 1472029, 1040100, 1332015, 1432001, 1040097, 1060071,
1472007, 1472002, 1051009, 1041044, 1041003, 1332016, 1472020, 1332003,
/* Pirate equipment */
1002622, 1082204, 1082213, 1082198, 1002631, 1052122, 1482012, 1052131, 1482007, 1482004, 1072318, 1492007
};
}
@Override
public int[] getUncommonItems() {
return new int[] {2040805, 1102041, 1102042, 1442018};
}
@Override
public int[] getRareItems() {
return new int[] {};
}
}

View File

@@ -0,0 +1,59 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate equipment
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class KerningCity extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2041016, 2043302, 2040902, 2044804, 2044906,
/* Useable drop */
2000004, 2000005, 2022025, 2022027,
/* Common equipment */
1442013, 1432009, 1322021, 1050018, 1002392, 1002394, 1442004, 1372002, 1002418, 1002033, 1092008,
1082148, 1062001, 1302017, 1032023, 1102013, 1102040, 1002041, 1002097,
/* Warrior equipment */
1332026, 1051010, 1432001, 1422005, 1332019, 1302010, 1002056, 1060011, 1322011, 1432004, 1002028,
1051000, 1442007, 1302002,
/* Magician equipment */
1002037, 1002034, 1082020, 1050039, 1372000, 1002215, 1051034, 1040019, 1061034, 1382003, 1382006,
1050025,
/* Bowman equipment */
1002118, 1061081, 1452011, 1462012, 1452006, 1452007,
/* Thief equipment */
1472010, 1472029, 1041048, 1041095, 1060031, 1061033, 1041049, 1472011, 1040096, 1472033, 1332026,
1051006, 1082074, 1472025, 1061106, 1040084, 1332015, 1472000, 1332019, 1002183, 1002209, 1092020,
1332029, 1092019, 1061099, 1060106, 1040032, 1040059, 1332003, 1040060, 1060046, 1472005, 1332027,
/* Pirate equipment */
1082192, 1072288, 1492003, 1052113, 1052104,
1492002, 1052095, 1492001, 1002613, 1492004
};
}
@Override
public int[] getUncommonItems() {
return new int[] {2040805, 1082149, 1102041};
}
@Override
public int[] getRareItems() {
return new int[] {};
}
}

View File

@@ -0,0 +1,56 @@
package server.gachapon;
/**
*
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class Ludibrium extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2048000, 2040601, 2041019, 2041007, 2041016, 2041022, 2041001, 2041010, 2041013, 2041004, 2044701, 2043301, 2040301, 2048004, 2048001, 2040901, 2040701, 2040704, 2040707, 2040602, 2041020, 2041008, 2041017, 2041023, 2041002, 2041011, 2041014, 2041005, 2044702, 2043302, 2040302, 2040002, 2044402, 2048005, 2048002, 2040702, 2040705, 2040708, 2044302, 2043802, 2040402, 2043702, 2044811,
/* Useable drop */
2000004, 2000005, 4006000, 4006001,
/* Common equipment */
1032003, 1432009, 1302022, 1302029, 1102014, 1102018, 1312014, 1302026, 1102015, 1032011, 1312013, 1032008, 1032019, 1032007, 1332030, 1032020, 1032004, 1302027, 1032022, 1312012, 1032021, 1032006, 1302028, 1322003, 1032016, 1032015, 1302024, 1092008, 1032018, 1302021, 1032014, 1332021, 1322012, 1032005, 1032013, 1102012, 1302025, 1302013, 1032002, 1032001, 1032012, 1302017, 1032010, 1402014, 1102017, 1102013, 1442021, 1032009,
/* Beginner equipment */
1332021, 1422011,
/* Warrior equipment */
1402017, 1422005, 1002023, 1332016, 1432005,
/* Magician equipment */
1002037, 1002034, 1002064, 1002038, 1002013, 1002036, 1382011, 1002035, 1002065, 1382014, 1372001,
/* Bowman equipment */
1452026, 1002162, 1002164, 1462018, 1002165, 1452014, 1002163, 1452012, 1002161, 1452009, 1462007,
/* Thief Equipment */
1332022, 1002175, 1002172, 1002174, 1040096, 1472033, 1002173, 1332054, 1472054, 1002171, 1332016,
/* Pirate equipment */
1002646
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2040805, 1002419, 1442018};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}

View File

@@ -0,0 +1,165 @@
/*
This file is part of the OdinMS Maple Story Server
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
Matthias Butz <matze@odinms.de>
Jan Christian Meyer <vimes@odinms.de>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation version 3 as published by
the Free Software Foundation. You may not use, modify or distribute
this program under any other version of the GNU Affero General Public
License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package server.gachapon;
import server.MapleItemInformationProvider;
import tools.Randomizer;
/**
*
* @author Alan (SharpAceX)
*/
public class MapleGachapon {
private static final MapleGachapon instance = new MapleGachapon();
public static MapleGachapon getInstance() {
return instance;
}
public enum Gachapon {
GLOBAL(-1, -1, -1, -1, new Global()),
HENESYS(9100100, 90, 8, 2, new Henesys()),
ELLINIA(9100101, 90, 8, 2, new Ellinia()),
PERION(9100102, 90, 8, 2, new Perion()),
KERNING_CITY(9100103, 90, 8, 2, new KerningCity()),
SLEEPYWOOD(9100104, 90, 8, 2, new Sleepywood()),
MUSHROOM_SHRINE(9100105, 90, 8, 2, new MushroomShrine()),
SHOWA_SPA_MALE(9100106, 90, 8, 2, new ShowaSpaMale()),
SHOWA_SPA_FEMALE(9100107, 90, 8, 2, new ShowaSpaFemale()),
LUDIBRIUM(9100108, 90, 8, 2, new Ludibrium()),
NEW_LEAF_CITY(9100109, 90, 8, 2, new NewLeafCity()),
EL_NATH(9100110, 90, 8, 2, new ElNath()),
NAUTILUS_HARBOR(9100117, 90, 8, 2, new NautilusHarbor());
private static final Gachapon[] values = Gachapon.values();
private GachaponItems gachapon;
private int npcId;
private int common;
private int uncommon;
private int rare;
private Gachapon(int npcid, int c, int u, int r, GachaponItems g) {
this.npcId = npcid;
this.gachapon = g;
this.common = c;
this.uncommon = u;
this.rare = r;
}
private int getTier() {
int chance = Randomizer.nextInt(common + uncommon + rare) + 1;
if (chance > common + uncommon) {
return 2; //Rare
} else if (chance > common) {
return 1; //Uncommon
} else {
return 0; //Common
}
}
public int [] getItems(int tier){
return gachapon.getItems(tier);
}
public int getItem(int tier) {
int[] gacha = getItems(tier);
int[] global = GLOBAL.getItems(tier);
int chance = Randomizer.nextInt(gacha.length + global.length);
return chance < gacha.length ? gacha[chance] : global[chance - gacha.length];
}
public static Gachapon getByNpcId(int npcId) {
for (Gachapon gacha : values) {
if (npcId == gacha.npcId) {
return gacha;
}
}
return null;
}
public static String[] getLootInfo() {
MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance();
String[] strList = new String[values.length + 1];
String menuStr = "";
int j = 0;
for (Gachapon gacha : values) {
menuStr += "#L" + j + "#" + gacha.name() + "#l\r\n";
j++;
String str = "";
for (int i = 0; i < 3; i++) {
int[] gachaItems = gacha.getItems(i);
if (gachaItems.length > 0) {
str += (" #rTier " + i + "#k:\r\n");
for (int itemid : gachaItems) {
String itemName = ii.getName(itemid);
if (itemName == null) {
itemName = "MISSING NAME #" + itemid;
}
str += (" " + itemName + "\r\n");
}
str += "\r\n";
}
}
str += "\r\n";
strList[j] = str;
}
strList[0] = menuStr;
return strList;
}
}
public MapleGachaponItem process(int npcId) {
Gachapon gacha = Gachapon.getByNpcId(npcId);
int tier = gacha.getTier();
int item = gacha.getItem(tier);
return new MapleGachaponItem(tier, item);
}
public class MapleGachaponItem {
private int id;
private int tier;
public MapleGachaponItem(int t, int i) {
id = i;
tier = t;
}
public int getTier() {
return tier;
}
public int getId() {
return id;
}
}
}

View File

@@ -0,0 +1,58 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class MushroomShrine extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2040305, 2040306, 2040308, 2044604, 2041039, 2041037, 2041035, 2041034, 2041041, 2040608, 2040605, 2040604, 2040611,
2040610, 2040813, 2040808, 2043004, 2040017, 2040015, 2040011, 2040013, 2040405, 2040406, 2040410, 2040511, 2040509,
2040508, 2040519, 2040521, 2040108, 2040904, 2040908, 2043104, 2044104, 2043005, 2043004, 2043006, 2044004, 2044205,
2043304, 2040607, 2040715, 2040713, 2044305, 2044904,
/* Common equipment */
1102040, 1002392, 1432009, 1002393, 1002394, 1082147, 1082148, 1032028, 1002585, 1002586, 1432013, 1022047, 1322027,
1012056, 1432018,
/* Beginner equipment */
1072264, 1072262, 1072263,
/* Warrior equipment */
1060074, 1322002, 1002340, 1442004, 1402037, 1422008, 1050022,
/* Mage equipment */
1382037, 1060014, 1051026, 1050056, 1050029, 1051030, 1382036, 1372032, 1041015, 1382015, 1372008, 1382008,
/* Bowman equipment */
1452018, 1041068, 1462007,
/* Thief equipment */
1060052, 1472013, 1002180, 1002170, 1060073, 1060099,
/* Pirate equipment */
1492004, 1492012, 1482009, 1072303, 1002637, 1052107, 1082189, 1052116, 1072309
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2040811, 2040810, 2040815, 1102041, 1102042, 1082149};
}
@Override
public int[] getRareItems() {
return new int [] {1102084, 3010019};
}
}

View File

@@ -0,0 +1,66 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate items
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class NautilusHarbor extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int[] {
/* Scroll */
2040605, 2040626, 2040609, 2040607, 2041029, 2041027, 2041031, 2041037, 2041033, 2041039, 2041041, 2041035,
2040809, 2040813, 2040015, 2040009, 2040011, 2040013, 2040509, 2040521, 2040519, 2040507, 2040905, 2040909,
2040907, 2040713, 2040715, 2040717, 2040405, 2040409, 2040407, 2040426, 2040303, 2040307, 2040309, 2044505,
2044705, 2044605, 2043305, 2043105, 2043205, 2043005, 2043007, 2044405, 2044305, 2043805, 2044105, 2044205,
2044005, 2043705, 2044901,
/* Useable drop */
2012000, 2000004, 2020008, 2000005, 2012002, 2101004, 2101005, 2101002, 2101003, 4006000,
/* Warrior equipment */
1092014, 1402017,
/* Magician equipment */
1002037, 1002034, 1002064, 1002038, 1382037, 1372000, 1002013, 1002035, 1002065, 1382000,
/* Bowman equipment */
1452018,
/* Thief equipment */
1472010, 1002175, 1472017, 1472025,
/* Pirate equipment */
1002610, 1002616, 1002622, 1002628, 1002634, 1002640, 1002646, 1052095, 1052101, 1052107,
1052113, 1052119, 1052125, 1052131, 1072285, 1072291, 1072297, 1072303, 1072309, 1072315,
1082180, 1082186, 1082192, 1082198, 1082204, 1082210, 1482001, 1482003, 1482005, 1482007,
1482009, 1482011, 1492000, 1492002, 1492004, 1492006, 1492008, 1492010, 1492012, 1002613,
1002619, 1002625, 1002631, 1002637, 1002643, 1052098, 1052104, 1052110, 1052116, 1052122,
1052128, 1072288, 1072294, 1072300, 1072306, 1072312, 1072318, 1072338, 1082183, 1082189,
1082195, 1082201, 1082207, 1082213, 1482000, 1482002, 1482004, 1482006, 1482008, 1482010,
1482012, 1492001, 1492003, 1492005, 1492007, 1492009, 1492011,
/* Knuckler Scrolls */
2044800, 2044801, 2044802, 2044803, 2044804, 2044805, 2044806, 2044807, 2044808, 2044809,
/* Gun Scrolls */
2044900, 2044901, 2044902, 2044903, 2044904
};
}
@Override
public int[] getUncommonItems() {
return new int[] {2040811, 2040815, 2101001};
}
@Override
public int[] getRareItems() {
return new int[] {};
}
}

View File

@@ -0,0 +1,55 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate equipment
* @author Ronan - parsed MapleSEA loots, thanks Vcoc for noticing somewhat unbalanced loots in NLC
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class NewLeafCity extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int[] {
/* Scroll */
2040406, 2040408, 2040404, 2040411, 2040409, 2044405, 2040610, 2040607, 2040812, 2041039, 2041040, 2041034,
2041030, 2041037, 2043105, 2043304, 2040103, 2040605, 2040611, 2043004, 2043204, 2044204, 2044005, 2040521,
2040510, 2043304, 2040908, 2040904, 2040907, 2040809, 2040812, 2040014, 2040714, 2040712, 2044004, 2043705,
2044505, 2040519, 2040204, 2040104, 2040109, 2044704, 2040906, 2044304, 2043007, 2040307, 2040304, 2040309,
2040208, 2040209, 2044803,
/* Common equipment */
1102040, 1102086, 1082145, 1032027, 1082146, 1002395, 1002083, 1002392, 1002587, 1022047,
/* Warrior equipment */
1312002, 1432013, 1060030, 1422008, 1050022, 1050011, 1402013, 1402017, 1302012,
/* Mage equipment */
1002074, 1050029, 1040093, 1050056, 1050039, 1382008,
/* Bowman equipment */
1002159, 1061051, 1040023,
/* Thief equipment */
1061054, 1061106, 1002249, 1040084, 1060052, 1472054,
/* Pirate equipment */
1002640, 1002643, 1002646, 1052125, 1052128, 1052131, 1072312, 1072315, 1072318, 1082207, 1082210, 1082213,
1482010, 1482011, 1002640, 1482012, 1492010, 1492011, 1492012
};
}
@Override
public int[] getUncommonItems() {
return new int[] {2022284, 2040811, 2040815, 2040811, 1102041, 1102042, 1082149};
}
@Override
public int[] getRareItems() {
return new int[] {};
}
}

View File

@@ -0,0 +1,57 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate equipment
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class Perion extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scrolls */
2044907, 2044802,
/* Useable drop */
2000004, 2000005,
/* Common equipment */
1402010, 1302022, 1002060, 1322021, 1082147, 1002006, 1002026, 1002392, 1322025, 1322027, 1102000, 1082150,
1332020, 1322007, 1302021, 1002395, 1082148, 1322012, 1302017, 1322010, 1032000, 1102013, 1002097,
/* Warrior equipment */
1322020, 1312007, 1312008, 1302004, 1312006, 1082036, 1082117, 1061088, 1302008, 1422005, 1002048, 1061087,
1302018, 1322017, 1422001, 1040103, 1060077, 1002022, 1002050, 1442000, 1432030, 1402037, 1092002, 1041092,
1050006, 1432004, 1061019, 1432000, 1060009, 1051000, 1002021, 1322014, 1432005,
/* Magician equipment */
1051032, 1040018, 1051027, 1372007, 1050049, 1002036, 1382012, 1002217, 1051033, 1382006, 1050048,
/* Bowman equipment */
1061061, 1060062, 1040075, 1462013, 1041065, 1452006,
/* Thief equipment */
1040095, 1060084, 1002182, 1041049, 1002247, 1332024, 1332009, 1060024, 1332015, 1041060, 1061032, 1041074,
1041003, 1332016, 1472020, 1332003, 1041059,
/* Pirate equipment */
1482001, 1492002, 1052113, 1002616, 1072294, 1492004, 1482006, 1082192, 1082189, 1082195
};
}
@Override
public int[] getUncommonItems() {
return new int [] {1082149, 1002391, 1002419, 1102041};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}

View File

@@ -0,0 +1,58 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots src: http://maplesecrets.blogspot.com/2011/06/gachapon-showa-towns-sauna-female-spa.html
*/
public class ShowaSpaFemale extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2048005, 2048002, 2043202, 2044602, 2043214, 2041307, 2041035, 2044104, 2044505, 2044305, 2043304, 2041309,
2044010, 2044803, 2044814, 2044904, 2044902, 2044901,
/* Useable drop */
2022016, 2000005, 2022025, 2022027,
/* Common equipment */
1402000, 1402013, 1002418, 1022047, 1082145, 1082147, 1082146, 1082178, 1082175,
/* Common setup */
3010073, 3010099,
/* Warrior equipment */
1422013, 1432030,
/* Magician equipment */
1372002, 1382003,
/* Bowman equipment */
1040023,
/* Thief equipment */
1332003, 1002209,
/* Pirate equipment */
1082198, 1082213, 1482007, 1492004, 1002646
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2040916, 1102042};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}

View File

@@ -0,0 +1,60 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots src: http://maplesecrets.blogspot.com/2011/05/gachapon-showa-towns-sauna.html
*/
public class ShowaSpaMale extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2048005, 2048002, 2043202, 2044602, 2043214, 2041307, 2041035, 2044104, 2044505, 2044305, 2043304, 2044902,
2044901, 2044811, 2044903, 2044804,
/* Useable drop */
2022016, 2000005, 2022025, 2022027,
/* Common equipment */
1332020, 1312004, 1332032, 1322023, 1322026, 1322022, 1322012, 1302014, 1302049, 1302017, 1332007, 1432009,
1432016, 1432017, 1432009, 1402013, 1402044, 1442014, 1442017, 1442016, 1442025, 1002418, 1082178, 1082179,
1082148, 1032027, 1032032, 1102028, 1102086,
/* Common setup */
3010073, 3010111,
/* Warrior equipment */
1412005, 1402048, 1402049, 1322011, 1302003, 1302004, 1302008,
/* Magician equipment */
1372000, 1372009, 1372001, 1372011, 1382006, 1382014,
/* Bowman equipment */
1452018, 1452006, 1452008, 1452005, 1462002, 1462007, 1462003, 1002169,
/* Thief equipment */
1472023, 1332012, 1332017, 1332022, 1332006, 1332029, 1040097,
/* Pirate equipment */
1052107, 1082204, 1072318, 1002637, 1482009, 1492007
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2040916, 1102042};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}

View File

@@ -0,0 +1,59 @@
package server.gachapon;
/**
*
* @author Alan (SharpAceX) - gachapon source classes stub & pirate equipment
* @author Ronan - parsed MapleSEA loots
*
* MapleSEA-like loots thanks to AyumiLove - src: https://ayumilovemaple.wordpress.com/maplestory-gachapon-guide/
*/
public class Sleepywood extends GachaponItems {
@Override
public int[] getCommonItems() {
return new int [] {
/* Scroll */
2048003, 2048000, 2040601, 2044501, 2041019, 2041016, 2041022, 2041010, 2041013, 2043301, 2040301, 2040801, 2040001,
2040004, 2043101, 2043201, 2043001, 2040504, 2040501, 2048004, 2048001, 2044401, 2040901, 2040701, 2040704, 2040707,
2044301, 2043801, 2044101, 2044201, 2044001, 2040602, 2044502, 2041020, 2041017, 2041023, 2041014, 2041005, 2044702,
2044602, 2043302, 2040302, 2040802, 2040005, 2043202, 2043002, 2040505, 2040502, 2048005, 2048002, 2044402, 2040902,
2040702, 2040705, 2040708, 2044302, 2043802, 2044202, 2044002, 2044801, 2044903, 2044814,
/* Useable drop */
2012000, 2012003, 2020007, 2000004, 2012001, 2020008, 2070006, 2020012, 2000005, 2030007, 2012002, 2002001, 2070005,
/* Common equipment */
1032003, 1432009, 1102014, 1102018, 1002392, 1322026, 1032022, 1312012, 1332020, 1092030, 1032016, 1032015, 1032014,
1322024, 1032013, 1322022, 1102016, 1032012, 1032023, 1402014, 1032000, 1102017,
/* Warrior equipment */
1402017, 1051010, 1432011, 1442006, 1322002, 1422004, 1432010, 1051011, 1060018, 1432000, 1422003, 1412003, 1422000,
/* Magician equipment */
1002034, 1002142, 1382010, 1002013, 1382008, 1382011, 1050047, 1002065,
/* Bowman equipment */
1452003, 1002165, 1040068, 1462013, 1462011, 1462012, 1061050, 1462010, 1002161,
/* Thief equipment */
1332022, 1002175, 1040042, 1472004, 1040057, 1332031, 1332023, 1332010, 1002171, 1060046,
/* Pirate equipment */
1002631, 1002634, 1002637, 1052116, 1052119, 1052122, 1072303, 1072306, 1072309, 1082198, 1082201, 1082204, 1482007,
1482008, 1482009
};
}
@Override
public int[] getUncommonItems() {
return new int [] {2040804, 2040817, 2040805, 2340000, 1082149, 1442018};
}
@Override
public int[] getRareItems() {
return new int [] {};
}
}