InFocus
Members-
Posts
306 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by InFocus
-
I add some potions, and now, i want to know how i can make with skill effect? 10 Potions ( Different Id's ) / Same Skill / Different Levels? I need 10 skills for 10 potions or it is possible to mke 1 skills but with 10 levels?
-
I am thinking to voice command. But i start again from 0
-
Impossible to fix, everything i do, no work....:/ Really now
-
OK, here it is the code for Rebirth /* * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * 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 General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <http://www.gnu.org/licenses/>. */ package l2r.gameserver.model; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.HashMap; import l2r.Config; import l2r.L2DatabaseFactory; import l2r.gameserver.data.xml.impl.ExperienceData; import l2r.gameserver.data.xml.impl.ItemData; import l2r.gameserver.data.xml.impl.SkillData; import l2r.gameserver.model.actor.instance.L2PcInstance; import l2r.gameserver.model.items.instance.L2ItemInstance; import l2r.gameserver.model.skills.L2Skill; import l2r.gameserver.network.serverpackets.CreatureSay; import l2r.gameserver.network.serverpackets.NpcHtmlMessage; import l2r.gameserver.network.serverpackets.SocialAction; public class RebirthManager { private static RebirthManager _instance = null; /** Basically, this will act as a cache so it doesnt have to read DB information on relog. */ private final HashMap<Integer, Integer> _playersRebirthInfo = new HashMap<>(); /** Creates a new NON-STATIC instance */ private RebirthManager() { } public static RebirthManager getInstance() { if (_instance == null) { _instance = new RebirthManager(); } return _instance; } /** * This is what it called from the Bypass Handler. (I think that's all thats needed here). * @param player * @param command */ public void handleCommand(L2PcInstance player, String command) { if (command.startsWith("custom_rebirth_requestrebirth")) { displayRebirthWindow(player); } else if (command.startsWith("custom_rebirth_confirmrequest")) { requestRebirth(player); } } /** * Display's an HTML window with the Rebirth Options * @param player */ public void displayRebirthWindow(L2PcInstance player) { try { int currBirth = getRebirthLevel(player); // Returns the player's current birth level if (currBirth >= 200) {// Don't send html if player is already at max rebirth count. player.sendMessage("You are currently at your maximum rebirth count!"); return; } boolean isMage = player.getBaseTemplate().getClassId().isMage(); // Returns true if BASE CLASS is a mage. L2Skill skill = getSkill((currBirth + 1), isMage);// Returns the skill based on next Birth and if isMage. String icon = "" + skill.getId();// Returns the skill's id. if (icon.length() < 201) { icon = "0" + icon; } String playerName = "<font color=FF9900>" + player.getName() + "</font>";// return the player's name. StringBuilder text = new StringBuilder(); text.append("<html>"); text.append("<body>"); text.append("<center>"); text.append("<title>- Rebirth Request Menu -</title>"); text.append("<img src=\"L2UI_CH3.herotower_deco\" width=256 height=32>"); text.append("<br>"); text.append("<table border=1 cellspacing=1 cellpadding=1 height=37><tr><td valign=top>"); text.append("<img src=\"icon.skill3123\" width=32 height=32>");// Cool rebirth icon 'logo' :P text.append("</td></tr></table>"); text.append("<br>"); text.append("<table width=240 bgcolor=555555 border=1 cellpadding=1 cellspacing=0><tr>"); text.append("<td height=40 width=35><img src=\"icon.skill" + icon + "\" width=32 height=32 align=left></td>"); text.append("<td height=40 width=140><center><font color=\"FFFFCC\">Bonus Skill Recieved</font><br1><font color=\"FF9900\">" + skill.getName() + "</font></td>"); text.append("<td height=40 width=100><center><font color=\"66CC66\">Skill Lvl</font><br1><font color=\"FFFF99\">" + skill.getLevel() + "</font></center></td>"); text.append("</tr></table>"); text.append("<br>"); text.append("<img src=\"L2UI.SquareWhite\" width=\"280\" height=\"1\"><br1>"); text.append("<table bgcolor=555555 width=270 height=80><tr><td valign=center align=center>- [ <font color=\"66CC66\">Rebirth Information</font> ] -<br1>"); text.append("<table bgcolor=555555 width=250 height=150><tr><td valign=top align=center><center>"); text.append("So, " + playerName + ", you wish to be <font color=Level>Reborn</font>? "); text.append("Being <font color=Level>Reborn</font> has it's advantages, and it's disadvantages you know. "); text.append("When you are <font color=Level>Reborn</font> you are granted a new bonus skill (listed above), "); text.append("but your character is reset to level 1 and returned to his starting class. So "); text.append("<font color=LEVEL>choose wisely</font> " + playerName + ".<br1>"); text.append("</center></td></tr></table>"); text.append("</td></tr></table>"); text.append("<img src=\"L2UI.SquareWhite\" width=\"280\" height=\"1\"><br>"); text.append("<center><button value=\" Request Rebirth \" action=\"bypass -h custom_rebirth_confirmrequest\" width=250 height=36 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">"); text.append("</center>"); text.append("</body>"); text.append("</html>"); NpcHtmlMessage html = new NpcHtmlMessage(1); html.setHtml(text.toString()); player.sendPacket(html); } catch (Exception e) { e.printStackTrace(); } } /** * @param i * @param isMage * @return */ private L2Skill getSkill(int i, boolean isMage) { // TODO Auto-generated method stub return null; } /** * Checks to see if the player is eligible for a Rebirth, if so it grants it and stores information * @param player */ public void requestRebirth(L2PcInstance player) { if (!Config.REBIRTH_ALLOW_REBIRTH) { // See if the Rebirth Engine is currently allowed. player.sendMessage("The 'Rebirth Engine' is disabled!"); return; } else if (player.getLevel() < Config.REBIRTH_MIN_LEVEL) { // Check the player's level. player.sendMessage("You do not meet the level requirement for a Rebirth!"); return; } else if (player.isSubClassActive()) { player.sendMessage("Please switch to your Main Class before attempting a Rebirth."); return; } else if (player.isAlikeDead()) { player.sendMessage("You can't make rebirth when you are dead!"); return; } else if (player.isAttackingNow()) { player.sendMessage("You can't make rebirth when you are in combat mode!"); return; } else if (player.isCastingNow()) { player.sendMessage("You can't make rebirth when you are in combat mode!"); return; } else if (player.isInDuel()) { player.sendMessage("You can't make rebirth when you make duel!"); return; } int currBirth = getRebirthLevel(player); int itemNeeded = 0; int itemAmount = 0; if (currBirth >= 200) { player.sendMessage("You are currently at your maximum rebirth count!"); return; } switch (currBirth) {// Get the requirements case 0: itemNeeded = Config.REBIRTH_ITEM1_NEEDED; itemAmount = Config.REBIRTH_ITEM1_AMOUNT; break; case 1: itemNeeded = Config.REBIRTH_ITEM2_NEEDED; itemAmount = Config.REBIRTH_ITEM2_AMOUNT; break; case 2: itemNeeded = Config.REBIRTH_ITEM3_NEEDED; itemAmount = Config.REBIRTH_ITEM3_AMOUNT; break; case 3: itemNeeded = Config.REBIRTH_ITEM4_NEEDED; itemAmount = Config.REBIRTH_ITEM4_AMOUNT; break; case 4: itemNeeded = Config.REBIRTH_ITEM5_NEEDED; itemAmount = Config.REBIRTH_ITEM5_AMOUNT; break; case 5: itemNeeded = Config.REBIRTH_ITEM6_NEEDED; itemAmount = Config.REBIRTH_ITEM6_AMOUNT; break; case 6: itemNeeded = Config.REBIRTH_ITEM7_NEEDED; itemAmount = Config.REBIRTH_ITEM7_AMOUNT; break; case 7: itemNeeded = Config.REBIRTH_ITEM8_NEEDED; itemAmount = Config.REBIRTH_ITEM8_AMOUNT; break; case 8: itemNeeded = Config.REBIRTH_ITEM9_NEEDED; itemAmount = Config.REBIRTH_ITEM9_AMOUNT; break; case 9: itemNeeded = Config.REBIRTH_ITEM10_NEEDED; itemAmount = Config.REBIRTH_ITEM10_AMOUNT; break; case 10: itemNeeded = Config.REBIRTH_ITEM11_NEEDED; itemAmount = Config.REBIRTH_ITEM11_AMOUNT; break; case 11: itemNeeded = Config.REBIRTH_ITEM12_NEEDED; itemAmount = Config.REBIRTH_ITEM12_AMOUNT; break; case 12: itemNeeded = Config.REBIRTH_ITEM13_NEEDED; itemAmount = Config.REBIRTH_ITEM13_AMOUNT; break; case 13: itemNeeded = Config.REBIRTH_ITEM14_NEEDED; itemAmount = Config.REBIRTH_ITEM14_AMOUNT; break; case 14: itemNeeded = Config.REBIRTH_ITEM15_NEEDED; itemAmount = Config.REBIRTH_ITEM15_AMOUNT; break; case 15: itemNeeded = Config.REBIRTH_ITEM16_NEEDED; itemAmount = Config.REBIRTH_ITEM16_AMOUNT; break; case 16: itemNeeded = Config.REBIRTH_ITEM17_NEEDED; itemAmount = Config.REBIRTH_ITEM17_AMOUNT; break; case 17: itemNeeded = Config.REBIRTH_ITEM18_NEEDED; itemAmount = Config.REBIRTH_ITEM18_AMOUNT; break; case 18: itemNeeded = Config.REBIRTH_ITEM19_NEEDED; itemAmount = Config.REBIRTH_ITEM19_AMOUNT; break; case 19: itemNeeded = Config.REBIRTH_ITEM20_NEEDED; itemAmount = Config.REBIRTH_ITEM20_AMOUNT; break; case 20: itemNeeded = Config.REBIRTH_ITEM21_NEEDED; itemAmount = Config.REBIRTH_ITEM21_AMOUNT; break; case 21: itemNeeded = Config.REBIRTH_ITEM22_NEEDED; itemAmount = Config.REBIRTH_ITEM22_AMOUNT; break; case 22: itemNeeded = Config.REBIRTH_ITEM23_NEEDED; itemAmount = Config.REBIRTH_ITEM23_AMOUNT; break; case 23: itemNeeded = Config.REBIRTH_ITEM24_NEEDED; itemAmount = Config.REBIRTH_ITEM24_AMOUNT; break; case 24: itemNeeded = Config.REBIRTH_ITEM25_NEEDED; itemAmount = Config.REBIRTH_ITEM25_AMOUNT; break; case 25: itemNeeded = Config.REBIRTH_ITEM26_NEEDED; itemAmount = Config.REBIRTH_ITEM26_AMOUNT; break; case 26: itemNeeded = Config.REBIRTH_ITEM27_NEEDED; itemAmount = Config.REBIRTH_ITEM27_AMOUNT; break; case 27: itemNeeded = Config.REBIRTH_ITEM28_NEEDED; itemAmount = Config.REBIRTH_ITEM28_AMOUNT; break; case 28: itemNeeded = Config.REBIRTH_ITEM29_NEEDED; itemAmount = Config.REBIRTH_ITEM29_AMOUNT; break; case 29: itemNeeded = Config.REBIRTH_ITEM30_NEEDED; itemAmount = Config.REBIRTH_ITEM30_AMOUNT; break; case 30: itemNeeded = Config.REBIRTH_ITEM31_NEEDED; itemAmount = Config.REBIRTH_ITEM31_AMOUNT; break; case 31: itemNeeded = Config.REBIRTH_ITEM32_NEEDED; itemAmount = Config.REBIRTH_ITEM32_AMOUNT; break; case 32: itemNeeded = Config.REBIRTH_ITEM33_NEEDED; itemAmount = Config.REBIRTH_ITEM33_AMOUNT; break; case 33: itemNeeded = Config.REBIRTH_ITEM34_NEEDED; itemAmount = Config.REBIRTH_ITEM34_AMOUNT; break; case 34: itemNeeded = Config.REBIRTH_ITEM35_NEEDED; itemAmount = Config.REBIRTH_ITEM35_AMOUNT; break; case 35: itemNeeded = Config.REBIRTH_ITEM36_NEEDED; itemAmount = Config.REBIRTH_ITEM36_AMOUNT; break; case 36: itemNeeded = Config.REBIRTH_ITEM37_NEEDED; itemAmount = Config.REBIRTH_ITEM37_AMOUNT; break; case 37: itemNeeded = Config.REBIRTH_ITEM38_NEEDED; itemAmount = Config.REBIRTH_ITEM38_AMOUNT; break; case 38: itemNeeded = Config.REBIRTH_ITEM39_NEEDED; itemAmount = Config.REBIRTH_ITEM39_AMOUNT; break; case 39: itemNeeded = Config.REBIRTH_ITEM40_NEEDED; itemAmount = Config.REBIRTH_ITEM40_AMOUNT; break; case 40: itemNeeded = Config.REBIRTH_ITEM41_NEEDED; itemAmount = Config.REBIRTH_ITEM41_AMOUNT; break; case 41: itemNeeded = Config.REBIRTH_ITEM42_NEEDED; itemAmount = Config.REBIRTH_ITEM42_AMOUNT; break; case 42: itemNeeded = Config.REBIRTH_ITEM43_NEEDED; itemAmount = Config.REBIRTH_ITEM43_AMOUNT; break; case 43: itemNeeded = Config.REBIRTH_ITEM44_NEEDED; itemAmount = Config.REBIRTH_ITEM44_AMOUNT; break; case 44: itemNeeded = Config.REBIRTH_ITEM45_NEEDED; itemAmount = Config.REBIRTH_ITEM45_AMOUNT; break; case 45: itemNeeded = Config.REBIRTH_ITEM46_NEEDED; itemAmount = Config.REBIRTH_ITEM46_AMOUNT; break; case 46: itemNeeded = Config.REBIRTH_ITEM47_NEEDED; itemAmount = Config.REBIRTH_ITEM47_AMOUNT; break; case 47: itemNeeded = Config.REBIRTH_ITEM48_NEEDED; itemAmount = Config.REBIRTH_ITEM48_AMOUNT; break; case 48: itemNeeded = Config.REBIRTH_ITEM49_NEEDED; itemAmount = Config.REBIRTH_ITEM49_AMOUNT; break; case 49: itemNeeded = Config.REBIRTH_ITEM50_NEEDED; itemAmount = Config.REBIRTH_ITEM50_AMOUNT; break; case 50: itemNeeded = Config.REBIRTH_ITEM51_NEEDED; itemAmount = Config.REBIRTH_ITEM51_AMOUNT; break; case 51: itemNeeded = Config.REBIRTH_ITEM52_NEEDED; itemAmount = Config.REBIRTH_ITEM52_AMOUNT; break; case 52: itemNeeded = Config.REBIRTH_ITEM53_NEEDED; itemAmount = Config.REBIRTH_ITEM53_AMOUNT; break; case 53: itemNeeded = Config.REBIRTH_ITEM54_NEEDED; itemAmount = Config.REBIRTH_ITEM54_AMOUNT; break; case 54: itemNeeded = Config.REBIRTH_ITEM55_NEEDED; itemAmount = Config.REBIRTH_ITEM55_AMOUNT; break; case 55: itemNeeded = Config.REBIRTH_ITEM56_NEEDED; itemAmount = Config.REBIRTH_ITEM56_AMOUNT; break; case 56: itemNeeded = Config.REBIRTH_ITEM57_NEEDED; itemAmount = Config.REBIRTH_ITEM57_AMOUNT; break; case 57: itemNeeded = Config.REBIRTH_ITEM58_NEEDED; itemAmount = Config.REBIRTH_ITEM58_AMOUNT; break; case 58: itemNeeded = Config.REBIRTH_ITEM59_NEEDED; itemAmount = Config.REBIRTH_ITEM59_AMOUNT; break; case 59: itemNeeded = Config.REBIRTH_ITEM60_NEEDED; itemAmount = Config.REBIRTH_ITEM60_AMOUNT; break; case 60: itemNeeded = Config.REBIRTH_ITEM61_NEEDED; itemAmount = Config.REBIRTH_ITEM61_AMOUNT; break; case 61: itemNeeded = Config.REBIRTH_ITEM62_NEEDED; itemAmount = Config.REBIRTH_ITEM62_AMOUNT; break; case 62: itemNeeded = Config.REBIRTH_ITEM63_NEEDED; itemAmount = Config.REBIRTH_ITEM63_AMOUNT; break; case 63: itemNeeded = Config.REBIRTH_ITEM64_NEEDED; itemAmount = Config.REBIRTH_ITEM64_AMOUNT; break; case 64: itemNeeded = Config.REBIRTH_ITEM65_NEEDED; itemAmount = Config.REBIRTH_ITEM65_AMOUNT; break; case 65: itemNeeded = Config.REBIRTH_ITEM66_NEEDED; itemAmount = Config.REBIRTH_ITEM66_AMOUNT; break; case 66: itemNeeded = Config.REBIRTH_ITEM67_NEEDED; itemAmount = Config.REBIRTH_ITEM67_AMOUNT; break; case 67: itemNeeded = Config.REBIRTH_ITEM68_NEEDED; itemAmount = Config.REBIRTH_ITEM68_AMOUNT; break; case 68: itemNeeded = Config.REBIRTH_ITEM69_NEEDED; itemAmount = Config.REBIRTH_ITEM69_AMOUNT; break; case 69: itemNeeded = Config.REBIRTH_ITEM70_NEEDED; itemAmount = Config.REBIRTH_ITEM70_AMOUNT; break; case 70: itemNeeded = Config.REBIRTH_ITEM71_NEEDED; itemAmount = Config.REBIRTH_ITEM71_AMOUNT; break; case 71: itemNeeded = Config.REBIRTH_ITEM72_NEEDED; itemAmount = Config.REBIRTH_ITEM72_AMOUNT; break; case 72: itemNeeded = Config.REBIRTH_ITEM73_NEEDED; itemAmount = Config.REBIRTH_ITEM73_AMOUNT; break; case 73: itemNeeded = Config.REBIRTH_ITEM74_NEEDED; itemAmount = Config.REBIRTH_ITEM74_AMOUNT; break; case 74: itemNeeded = Config.REBIRTH_ITEM75_NEEDED; itemAmount = Config.REBIRTH_ITEM75_AMOUNT; break; case 75: itemNeeded = Config.REBIRTH_ITEM76_NEEDED; itemAmount = Config.REBIRTH_ITEM76_AMOUNT; break; case 76: itemNeeded = Config.REBIRTH_ITEM77_NEEDED; itemAmount = Config.REBIRTH_ITEM77_AMOUNT; break; case 77: itemNeeded = Config.REBIRTH_ITEM78_NEEDED; itemAmount = Config.REBIRTH_ITEM78_AMOUNT; break; case 78: itemNeeded = Config.REBIRTH_ITEM79_NEEDED; itemAmount = Config.REBIRTH_ITEM79_AMOUNT; break; case 79: itemNeeded = Config.REBIRTH_ITEM80_NEEDED; itemAmount = Config.REBIRTH_ITEM80_AMOUNT; break; case 80: itemNeeded = Config.REBIRTH_ITEM81_NEEDED; itemAmount = Config.REBIRTH_ITEM81_AMOUNT; break; case 81: itemNeeded = Config.REBIRTH_ITEM82_NEEDED; itemAmount = Config.REBIRTH_ITEM82_AMOUNT; break; case 82: itemNeeded = Config.REBIRTH_ITEM83_NEEDED; itemAmount = Config.REBIRTH_ITEM83_AMOUNT; break; case 83: itemNeeded = Config.REBIRTH_ITEM84_NEEDED; itemAmount = Config.REBIRTH_ITEM84_AMOUNT; break; case 84: itemNeeded = Config.REBIRTH_ITEM85_NEEDED; itemAmount = Config.REBIRTH_ITEM85_AMOUNT; break; case 85: itemNeeded = Config.REBIRTH_ITEM86_NEEDED; itemAmount = Config.REBIRTH_ITEM86_AMOUNT; break; case 86: itemNeeded = Config.REBIRTH_ITEM87_NEEDED; itemAmount = Config.REBIRTH_ITEM87_AMOUNT; break; case 87: itemNeeded = Config.REBIRTH_ITEM88_NEEDED; itemAmount = Config.REBIRTH_ITEM88_AMOUNT; break; case 88: itemNeeded = Config.REBIRTH_ITEM89_NEEDED; itemAmount = Config.REBIRTH_ITEM89_AMOUNT; break; case 89: itemNeeded = Config.REBIRTH_ITEM90_NEEDED; itemAmount = Config.REBIRTH_ITEM90_AMOUNT; break; case 90: itemNeeded = Config.REBIRTH_ITEM91_NEEDED; itemAmount = Config.REBIRTH_ITEM91_AMOUNT; break; case 91: itemNeeded = Config.REBIRTH_ITEM92_NEEDED; itemAmount = Config.REBIRTH_ITEM92_AMOUNT; break; case 92: itemNeeded = Config.REBIRTH_ITEM93_NEEDED; itemAmount = Config.REBIRTH_ITEM93_AMOUNT; break; case 93: itemNeeded = Config.REBIRTH_ITEM94_NEEDED; itemAmount = Config.REBIRTH_ITEM94_AMOUNT; break; case 94: itemNeeded = Config.REBIRTH_ITEM95_NEEDED; itemAmount = Config.REBIRTH_ITEM95_AMOUNT; break; case 95: itemNeeded = Config.REBIRTH_ITEM96_NEEDED; itemAmount = Config.REBIRTH_ITEM96_AMOUNT; break; case 96: itemNeeded = Config.REBIRTH_ITEM97_NEEDED; itemAmount = Config.REBIRTH_ITEM97_AMOUNT; break; case 97: itemNeeded = Config.REBIRTH_ITEM98_NEEDED; itemAmount = Config.REBIRTH_ITEM18_AMOUNT; break; case 98: itemNeeded = Config.REBIRTH_ITEM99_NEEDED; itemAmount = Config.REBIRTH_ITEM99_AMOUNT; break; case 99: itemNeeded = Config.REBIRTH_ITEM100_NEEDED; itemAmount = Config.REBIRTH_ITEM100_AMOUNT; break; case 100: itemNeeded = Config.REBIRTH_ITEM101_NEEDED; itemAmount = Config.REBIRTH_ITEM101_AMOUNT; break; case 101: itemNeeded = Config.REBIRTH_ITEM102_NEEDED; itemAmount = Config.REBIRTH_ITEM102_AMOUNT; break; case 102: itemNeeded = Config.REBIRTH_ITEM103_NEEDED; itemAmount = Config.REBIRTH_ITEM103_AMOUNT; break; case 103: itemNeeded = Config.REBIRTH_ITEM104_NEEDED; itemAmount = Config.REBIRTH_ITEM104_AMOUNT; break; case 104: itemNeeded = Config.REBIRTH_ITEM105_NEEDED; itemAmount = Config.REBIRTH_ITEM105_AMOUNT; break; case 105: itemNeeded = Config.REBIRTH_ITEM106_NEEDED; itemAmount = Config.REBIRTH_ITEM106_AMOUNT; break; case 106: itemNeeded = Config.REBIRTH_ITEM107_NEEDED; itemAmount = Config.REBIRTH_ITEM107_AMOUNT; break; case 107: itemNeeded = Config.REBIRTH_ITEM108_NEEDED; itemAmount = Config.REBIRTH_ITEM108_AMOUNT; break; case 108: itemNeeded = Config.REBIRTH_ITEM109_NEEDED; itemAmount = Config.REBIRTH_ITEM109_AMOUNT; break; case 109: itemNeeded = Config.REBIRTH_ITEM110_NEEDED; itemAmount = Config.REBIRTH_ITEM110_AMOUNT; break; case 110: itemNeeded = Config.REBIRTH_ITEM111_NEEDED; itemAmount = Config.REBIRTH_ITEM111_AMOUNT; break; case 111: itemNeeded = Config.REBIRTH_ITEM112_NEEDED; itemAmount = Config.REBIRTH_ITEM112_AMOUNT; break; case 112: itemNeeded = Config.REBIRTH_ITEM113_NEEDED; itemAmount = Config.REBIRTH_ITEM113_AMOUNT; break; case 113: itemNeeded = Config.REBIRTH_ITEM114_NEEDED; itemAmount = Config.REBIRTH_ITEM114_AMOUNT; break; case 114: itemNeeded = Config.REBIRTH_ITEM115_NEEDED; itemAmount = Config.REBIRTH_ITEM115_AMOUNT; break; case 115: itemNeeded = Config.REBIRTH_ITEM116_NEEDED; itemAmount = Config.REBIRTH_ITEM116_AMOUNT; break; case 116: itemNeeded = Config.REBIRTH_ITEM117_NEEDED; itemAmount = Config.REBIRTH_ITEM117_AMOUNT; break; case 117: itemNeeded = Config.REBIRTH_ITEM118_NEEDED; itemAmount = Config.REBIRTH_ITEM118_AMOUNT; break; case 118: itemNeeded = Config.REBIRTH_ITEM119_NEEDED; itemAmount = Config.REBIRTH_ITEM119_AMOUNT; break; case 119: itemNeeded = Config.REBIRTH_ITEM120_NEEDED; itemAmount = Config.REBIRTH_ITEM120_AMOUNT; break; case 120: itemNeeded = Config.REBIRTH_ITEM121_NEEDED; itemAmount = Config.REBIRTH_ITEM121_AMOUNT; break; case 121: itemNeeded = Config.REBIRTH_ITEM122_NEEDED; itemAmount = Config.REBIRTH_ITEM122_AMOUNT; break; case 122: itemNeeded = Config.REBIRTH_ITEM123_NEEDED; itemAmount = Config.REBIRTH_ITEM123_AMOUNT; break; case 123: itemNeeded = Config.REBIRTH_ITEM124_NEEDED; itemAmount = Config.REBIRTH_ITEM124_AMOUNT; break; case 124: itemNeeded = Config.REBIRTH_ITEM125_NEEDED; itemAmount = Config.REBIRTH_ITEM125_AMOUNT; break; case 125: itemNeeded = Config.REBIRTH_ITEM126_NEEDED; itemAmount = Config.REBIRTH_ITEM126_AMOUNT; break; case 126: itemNeeded = Config.REBIRTH_ITEM127_NEEDED; itemAmount = Config.REBIRTH_ITEM127_AMOUNT; break; case 127: itemNeeded = Config.REBIRTH_ITEM128_NEEDED; itemAmount = Config.REBIRTH_ITEM128_AMOUNT; break; case 128: itemNeeded = Config.REBIRTH_ITEM129_NEEDED; itemAmount = Config.REBIRTH_ITEM129_AMOUNT; break; case 129: itemNeeded = Config.REBIRTH_ITEM130_NEEDED; itemAmount = Config.REBIRTH_ITEM130_AMOUNT; break; case 130: itemNeeded = Config.REBIRTH_ITEM131_NEEDED; itemAmount = Config.REBIRTH_ITEM131_AMOUNT; break; case 131: itemNeeded = Config.REBIRTH_ITEM132_NEEDED; itemAmount = Config.REBIRTH_ITEM132_AMOUNT; break; case 132: itemNeeded = Config.REBIRTH_ITEM133_NEEDED; itemAmount = Config.REBIRTH_ITEM133_AMOUNT; break; case 133: itemNeeded = Config.REBIRTH_ITEM134_NEEDED; itemAmount = Config.REBIRTH_ITEM134_AMOUNT; break; case 134: itemNeeded = Config.REBIRTH_ITEM135_NEEDED; itemAmount = Config.REBIRTH_ITEM135_AMOUNT; break; case 135: itemNeeded = Config.REBIRTH_ITEM136_NEEDED; itemAmount = Config.REBIRTH_ITEM136_AMOUNT; break; case 136: itemNeeded = Config.REBIRTH_ITEM137_NEEDED; itemAmount = Config.REBIRTH_ITEM137_AMOUNT; break; case 137: itemNeeded = Config.REBIRTH_ITEM138_NEEDED; itemAmount = Config.REBIRTH_ITEM138_AMOUNT; break; case 138: itemNeeded = Config.REBIRTH_ITEM139_NEEDED; itemAmount = Config.REBIRTH_ITEM139_AMOUNT; break; case 139: itemNeeded = Config.REBIRTH_ITEM140_NEEDED; itemAmount = Config.REBIRTH_ITEM140_AMOUNT; break; case 140: itemNeeded = Config.REBIRTH_ITEM141_NEEDED; itemAmount = Config.REBIRTH_ITEM141_AMOUNT; break; case 141: itemNeeded = Config.REBIRTH_ITEM142_NEEDED; itemAmount = Config.REBIRTH_ITEM142_AMOUNT; break; case 142: itemNeeded = Config.REBIRTH_ITEM143_NEEDED; itemAmount = Config.REBIRTH_ITEM143_AMOUNT; break; case 143: itemNeeded = Config.REBIRTH_ITEM144_NEEDED; itemAmount = Config.REBIRTH_ITEM144_AMOUNT; break; case 144: itemNeeded = Config.REBIRTH_ITEM145_NEEDED; itemAmount = Config.REBIRTH_ITEM145_AMOUNT; break; case 145: itemNeeded = Config.REBIRTH_ITEM146_NEEDED; itemAmount = Config.REBIRTH_ITEM146_AMOUNT; break; case 146: itemNeeded = Config.REBIRTH_ITEM147_NEEDED; itemAmount = Config.REBIRTH_ITEM147_AMOUNT; break; case 147: itemNeeded = Config.REBIRTH_ITEM148_NEEDED; itemAmount = Config.REBIRTH_ITEM148_AMOUNT; break; case 148: itemNeeded = Config.REBIRTH_ITEM149_NEEDED; itemAmount = Config.REBIRTH_ITEM149_AMOUNT; break; case 149: itemNeeded = Config.REBIRTH_ITEM150_NEEDED; itemAmount = Config.REBIRTH_ITEM150_AMOUNT; break; case 150: itemNeeded = Config.REBIRTH_ITEM151_NEEDED; itemAmount = Config.REBIRTH_ITEM151_AMOUNT; break; case 151: itemNeeded = Config.REBIRTH_ITEM152_NEEDED; itemAmount = Config.REBIRTH_ITEM152_AMOUNT; break; case 152: itemNeeded = Config.REBIRTH_ITEM153_NEEDED; itemAmount = Config.REBIRTH_ITEM153_AMOUNT; break; case 153: itemNeeded = Config.REBIRTH_ITEM154_NEEDED; itemAmount = Config.REBIRTH_ITEM154_AMOUNT; break; case 154: itemNeeded = Config.REBIRTH_ITEM155_NEEDED; itemAmount = Config.REBIRTH_ITEM155_AMOUNT; break; case 155: itemNeeded = Config.REBIRTH_ITEM156_NEEDED; itemAmount = Config.REBIRTH_ITEM156_AMOUNT; break; case 156: itemNeeded = Config.REBIRTH_ITEM157_NEEDED; itemAmount = Config.REBIRTH_ITEM157_AMOUNT; break; case 157: itemNeeded = Config.REBIRTH_ITEM158_NEEDED; itemAmount = Config.REBIRTH_ITEM158_AMOUNT; break; case 158: itemNeeded = Config.REBIRTH_ITEM159_NEEDED; itemAmount = Config.REBIRTH_ITEM159_AMOUNT; break; case 159: itemNeeded = Config.REBIRTH_ITEM160_NEEDED; itemAmount = Config.REBIRTH_ITEM160_AMOUNT; break; case 160: itemNeeded = Config.REBIRTH_ITEM161_NEEDED; itemAmount = Config.REBIRTH_ITEM161_AMOUNT; break; case 161: itemNeeded = Config.REBIRTH_ITEM162_NEEDED; itemAmount = Config.REBIRTH_ITEM162_AMOUNT; break; case 162: itemNeeded = Config.REBIRTH_ITEM163_NEEDED; itemAmount = Config.REBIRTH_ITEM163_AMOUNT; break; case 163: itemNeeded = Config.REBIRTH_ITEM164_NEEDED; itemAmount = Config.REBIRTH_ITEM164_AMOUNT; break; case 164: itemNeeded = Config.REBIRTH_ITEM165_NEEDED; itemAmount = Config.REBIRTH_ITEM165_AMOUNT; break; case 165: itemNeeded = Config.REBIRTH_ITEM166_NEEDED; itemAmount = Config.REBIRTH_ITEM166_AMOUNT; break; case 166: itemNeeded = Config.REBIRTH_ITEM167_NEEDED; itemAmount = Config.REBIRTH_ITEM167_AMOUNT; break; case 167: itemNeeded = Config.REBIRTH_ITEM168_NEEDED; itemAmount = Config.REBIRTH_ITEM168_AMOUNT; break; case 168: itemNeeded = Config.REBIRTH_ITEM169_NEEDED; itemAmount = Config.REBIRTH_ITEM169_AMOUNT; break; case 169: itemNeeded = Config.REBIRTH_ITEM170_NEEDED; itemAmount = Config.REBIRTH_ITEM170_AMOUNT; break; case 170: itemNeeded = Config.REBIRTH_ITEM171_NEEDED; itemAmount = Config.REBIRTH_ITEM171_AMOUNT; break; case 171: itemNeeded = Config.REBIRTH_ITEM172_NEEDED; itemAmount = Config.REBIRTH_ITEM172_AMOUNT; break; case 172: itemNeeded = Config.REBIRTH_ITEM173_NEEDED; itemAmount = Config.REBIRTH_ITEM173_AMOUNT; break; case 173: itemNeeded = Config.REBIRTH_ITEM174_NEEDED; itemAmount = Config.REBIRTH_ITEM174_AMOUNT; break; case 174: itemNeeded = Config.REBIRTH_ITEM175_NEEDED; itemAmount = Config.REBIRTH_ITEM175_AMOUNT; break; case 175: itemNeeded = Config.REBIRTH_ITEM176_NEEDED; itemAmount = Config.REBIRTH_ITEM176_AMOUNT; break; case 176: itemNeeded = Config.REBIRTH_ITEM177_NEEDED; itemAmount = Config.REBIRTH_ITEM177_AMOUNT; break; case 177: itemNeeded = Config.REBIRTH_ITEM178_NEEDED; itemAmount = Config.REBIRTH_ITEM178_AMOUNT; break; case 178: itemNeeded = Config.REBIRTH_ITEM179_NEEDED; itemAmount = Config.REBIRTH_ITEM179_AMOUNT; break; case 179: itemNeeded = Config.REBIRTH_ITEM180_NEEDED; itemAmount = Config.REBIRTH_ITEM180_AMOUNT; break; case 180: itemNeeded = Config.REBIRTH_ITEM181_NEEDED; itemAmount = Config.REBIRTH_ITEM181_AMOUNT; break; case 181: itemNeeded = Config.REBIRTH_ITEM182_NEEDED; itemAmount = Config.REBIRTH_ITEM182_AMOUNT; break; case 182: itemNeeded = Config.REBIRTH_ITEM183_NEEDED; itemAmount = Config.REBIRTH_ITEM183_AMOUNT; break; case 183: itemNeeded = Config.REBIRTH_ITEM184_NEEDED; itemAmount = Config.REBIRTH_ITEM184_AMOUNT; break; case 184: itemNeeded = Config.REBIRTH_ITEM185_NEEDED; itemAmount = Config.REBIRTH_ITEM185_AMOUNT; break; case 185: itemNeeded = Config.REBIRTH_ITEM186_NEEDED; itemAmount = Config.REBIRTH_ITEM186_AMOUNT; break; case 186: itemNeeded = Config.REBIRTH_ITEM187_NEEDED; itemAmount = Config.REBIRTH_ITEM187_AMOUNT; break; case 187: itemNeeded = Config.REBIRTH_ITEM188_NEEDED; itemAmount = Config.REBIRTH_ITEM188_AMOUNT; break; case 188: itemNeeded = Config.REBIRTH_ITEM189_NEEDED; itemAmount = Config.REBIRTH_ITEM189_AMOUNT; break; case 189: itemNeeded = Config.REBIRTH_ITEM190_NEEDED; itemAmount = Config.REBIRTH_ITEM190_AMOUNT; break; case 190: itemNeeded = Config.REBIRTH_ITEM191_NEEDED; itemAmount = Config.REBIRTH_ITEM191_AMOUNT; break; case 191: itemNeeded = Config.REBIRTH_ITEM192_NEEDED; itemAmount = Config.REBIRTH_ITEM192_AMOUNT; break; case 192: itemNeeded = Config.REBIRTH_ITEM193_NEEDED; itemAmount = Config.REBIRTH_ITEM193_AMOUNT; break; case 193: itemNeeded = Config.REBIRTH_ITEM194_NEEDED; itemAmount = Config.REBIRTH_ITEM194_AMOUNT; break; case 194: itemNeeded = Config.REBIRTH_ITEM195_NEEDED; itemAmount = Config.REBIRTH_ITEM195_AMOUNT; break; case 195: itemNeeded = Config.REBIRTH_ITEM196_NEEDED; itemAmount = Config.REBIRTH_ITEM196_AMOUNT; break; case 196: itemNeeded = Config.REBIRTH_ITEM197_NEEDED; itemAmount = Config.REBIRTH_ITEM197_AMOUNT; break; case 197: itemNeeded = Config.REBIRTH_ITEM198_NEEDED; itemAmount = Config.REBIRTH_ITEM198_AMOUNT; break; case 198: itemNeeded = Config.REBIRTH_ITEM199_NEEDED; itemAmount = Config.REBIRTH_ITEM199_AMOUNT; break; case 199: itemNeeded = Config.REBIRTH_ITEM200_NEEDED; itemAmount = Config.REBIRTH_ITEM200_AMOUNT; break; } if (itemNeeded != 0) {// Their is an item required if (!playerIsEligible(player, itemNeeded, itemAmount)) {// Checks to see if player has required items, and takes them if so. return; } } boolean firstBirth = currBirth == 0;// Check and see if its the player's first Rebirth calling. grantRebirth(player, (currBirth + 1), firstBirth); // Player meets requirements and starts Rebirth Process. } /** * Physically rewards player and resets status to nothing. * @param player * @param newBirthCount * @param firstBirth */ public void grantRebirth(L2PcInstance player, int newBirthCount, boolean firstBirth) { try { player.removeExpAndSp(player.getExp() - ExperienceData.getInstance().getExpForLevel(1), 0);// Set player to level 1. player.setClassId(player.getBaseClass());// Resets character to first class. for (L2Skill skill : player.getAllSkills()) {// Remove the player's current skills. player.removeSkill(skill); } player.giveAvailableAutoGetSkills();// Give players their eligible skills. player.store(); // Updates the player's information in the Character Database. if (firstBirth) { storePlayerBirth(player); } else { updatePlayerBirth(player, newBirthCount); } grantRebirthSkills(player);// Give the player his new Skills. displayCongrats(player);// Displays a congratulation message to the player. } catch (Exception e) { e.printStackTrace(); } } /** * Special effects when the player levels. * @param player */ public void displayCongrats(L2PcInstance player) { // Victory Social Action. player.setTarget(player); player.broadcastPacket(new SocialAction(player.getObjectId(), 200)); player.sendMessage("Congratulation " + player.getName() + " you make rebirth number " + getRebirthLevel(player) + " ! And now, you come back to " + player.getLevel() + ". "); } /** * Check and verify the player DOES have the item required for a request. Also, remove the item if he has. * @param player * @param itemId * @param itemAmount * @return */ public boolean playerIsEligible(L2PcInstance player, int itemId, int itemAmount) { String itemName = ItemData.getInstance().getTemplate(itemId).getName(); L2ItemInstance itemNeeded = player.getInventory().getItemByItemId(itemId); if ((itemNeeded == null) || (itemNeeded.getCount() < itemAmount)) { player.sendMessage("You need atleast " + itemAmount + " [ " + itemName + " ] to request a Rebirth!"); return false; } // Player has the required items, so we're going to take them! player.getInventory().destroyItem("Rebirth Engine", itemNeeded, itemAmount, player, null); player.sendMessage("Removed " + itemAmount + " " + itemName + " from your inventory!"); return true; } /** * Gives the available Bonus Skills to the player. * @param player */ public void grantRebirthSkills(L2PcInstance player) { int rebirthLevel = getRebirthLevel(player); // returns the current Rebirth Level boolean isMage = player.getBaseTemplate().getClassId().isMage(); // Returns true if BASE CLASS is a mage. // Simply return since no bonus skills are granted. if (rebirthLevel == 0) { return; } // Load the bonus skills unto the player. CreatureSay rebirthText = null; for (int i = 0; i < rebirthLevel; i++) { L2Skill bonusSkill = getRebirthSkill((i + 1), isMage); player.addSkill(bonusSkill, false); // If you'd rather make it simple, simply comment this out and replace with a simple player.sendmessage(); // player.sendMessage("Congratulation " + player.getName() + " you make rebirth number " + getRebirthLevel(player) + " ! And now, you come back to " + player.getLevel() + ". "); // rebirthText = new CreatureSay(0, 18, "Rebirth Manager ", " Granted you [ " + bonusSkill.getName() + " ] level [ " + rebirthLevel() + " ]!"); // player.sendPacket(rebirthText); } } /** * @return */ /** * Return the player's current Rebirth Level * @param player * @return */ public int getRebirthLevel(L2PcInstance player) { int playerId = player.getObjectId(); if (_playersRebirthInfo.get(playerId) == null) { loadRebirthInfo(player); } return _playersRebirthInfo.get(playerId); } /** * Return the L2Skill the player is going to be rewarded. * @param rebirthLevel * @param mage * @return */ public L2Skill getRebirthSkill(int rebirthLevel, boolean mage) { L2Skill skill = null; if (mage) { // Player is a Mage. switch (rebirthLevel) { case 1: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL1_ID, Config.REBIRTH_MAGE_SKILL1_LEVEL); break; case 2: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL2_ID, Config.REBIRTH_MAGE_SKILL2_LEVEL); break; case 3: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL3_ID, Config.REBIRTH_MAGE_SKILL3_LEVEL); break; case 4: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL4_ID, Config.REBIRTH_MAGE_SKILL4_LEVEL); break; case 5: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL5_ID, Config.REBIRTH_MAGE_SKILL5_LEVEL); break; case 6: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL6_ID, Config.REBIRTH_MAGE_SKILL6_LEVEL); break; case 7: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL7_ID, Config.REBIRTH_MAGE_SKILL7_LEVEL); break; case 8: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL8_ID, Config.REBIRTH_MAGE_SKILL8_LEVEL); break; case 9: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL9_ID, Config.REBIRTH_MAGE_SKILL9_LEVEL); break; case 10: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL10_ID, Config.REBIRTH_MAGE_SKILL10_LEVEL); break; case 11: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL11_ID, Config.REBIRTH_MAGE_SKILL11_LEVEL); break; case 12: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL12_ID, Config.REBIRTH_MAGE_SKILL12_LEVEL); break; case 13: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL13_ID, Config.REBIRTH_MAGE_SKILL13_LEVEL); break; case 14: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL14_ID, Config.REBIRTH_MAGE_SKILL14_LEVEL); break; case 15: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL15_ID, Config.REBIRTH_MAGE_SKILL15_LEVEL); break; case 16: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL16_ID, Config.REBIRTH_MAGE_SKILL16_LEVEL); break; case 17: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL17_ID, Config.REBIRTH_MAGE_SKILL17_LEVEL); break; case 18: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL18_ID, Config.REBIRTH_MAGE_SKILL18_LEVEL); break; case 19: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL19_ID, Config.REBIRTH_MAGE_SKILL19_LEVEL); break; case 20: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL20_ID, Config.REBIRTH_MAGE_SKILL20_LEVEL); break; case 21: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL21_ID, Config.REBIRTH_MAGE_SKILL21_LEVEL); break; case 22: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL22_ID, Config.REBIRTH_MAGE_SKILL22_LEVEL); break; case 23: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL23_ID, Config.REBIRTH_MAGE_SKILL23_LEVEL); break; case 24: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL24_ID, Config.REBIRTH_MAGE_SKILL24_LEVEL); break; case 25: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL25_ID, Config.REBIRTH_MAGE_SKILL25_LEVEL); break; case 26: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL26_ID, Config.REBIRTH_MAGE_SKILL26_LEVEL); break; case 27: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL27_ID, Config.REBIRTH_MAGE_SKILL27_LEVEL); break; case 28: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL28_ID, Config.REBIRTH_MAGE_SKILL28_LEVEL); break; case 29: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL29_ID, Config.REBIRTH_MAGE_SKILL29_LEVEL); break; case 30: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL30_ID, Config.REBIRTH_MAGE_SKILL30_LEVEL); break; case 31: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL31_ID, Config.REBIRTH_MAGE_SKILL31_LEVEL); break; case 32: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL32_ID, Config.REBIRTH_MAGE_SKILL32_LEVEL); break; case 33: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL33_ID, Config.REBIRTH_MAGE_SKILL33_LEVEL); break; case 34: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL34_ID, Config.REBIRTH_MAGE_SKILL34_LEVEL); break; case 35: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL35_ID, Config.REBIRTH_MAGE_SKILL35_LEVEL); break; case 36: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL36_ID, Config.REBIRTH_MAGE_SKILL36_LEVEL); break; case 37: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL37_ID, Config.REBIRTH_MAGE_SKILL37_LEVEL); break; case 38: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL38_ID, Config.REBIRTH_MAGE_SKILL38_LEVEL); break; case 39: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL39_ID, Config.REBIRTH_MAGE_SKILL39_LEVEL); break; case 40: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL40_ID, Config.REBIRTH_MAGE_SKILL40_LEVEL); break; case 41: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL42_ID, Config.REBIRTH_MAGE_SKILL41_LEVEL); break; case 42: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL42_ID, Config.REBIRTH_MAGE_SKILL42_LEVEL); break; case 43: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL43_ID, Config.REBIRTH_MAGE_SKILL43_LEVEL); break; case 44: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL44_ID, Config.REBIRTH_MAGE_SKILL44_LEVEL); break; case 45: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL45_ID, Config.REBIRTH_MAGE_SKILL45_LEVEL); break; case 46: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL46_ID, Config.REBIRTH_MAGE_SKILL46_LEVEL); break; case 47: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL47_ID, Config.REBIRTH_MAGE_SKILL47_LEVEL); break; case 48: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL48_ID, Config.REBIRTH_MAGE_SKILL48_LEVEL); break; case 49: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL49_ID, Config.REBIRTH_MAGE_SKILL49_LEVEL); break; case 50: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL50_ID, Config.REBIRTH_MAGE_SKILL50_LEVEL); break; case 51: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL51_ID, Config.REBIRTH_MAGE_SKILL51_LEVEL); break; case 52: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL52_ID, Config.REBIRTH_MAGE_SKILL52_LEVEL); break; case 53: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL53_ID, Config.REBIRTH_MAGE_SKILL53_LEVEL); break; case 54: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL54_ID, Config.REBIRTH_MAGE_SKILL54_LEVEL); break; case 55: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL55_ID, Config.REBIRTH_MAGE_SKILL55_LEVEL); break; case 56: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL56_ID, Config.REBIRTH_MAGE_SKILL56_LEVEL); break; case 57: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL57_ID, Config.REBIRTH_MAGE_SKILL57_LEVEL); break; case 58: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL58_ID, Config.REBIRTH_MAGE_SKILL58_LEVEL); break; case 59: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL59_ID, Config.REBIRTH_MAGE_SKILL59_LEVEL); break; case 60: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL60_ID, Config.REBIRTH_MAGE_SKILL60_LEVEL); break; case 61: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL61_ID, Config.REBIRTH_MAGE_SKILL61_LEVEL); break; case 62: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL62_ID, Config.REBIRTH_MAGE_SKILL62_LEVEL); break; case 63: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL63_ID, Config.REBIRTH_MAGE_SKILL63_LEVEL); break; case 64: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL64_ID, Config.REBIRTH_MAGE_SKILL64_LEVEL); break; case 65: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL65_ID, Config.REBIRTH_MAGE_SKILL65_LEVEL); break; case 66: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL66_ID, Config.REBIRTH_MAGE_SKILL66_LEVEL); break; case 67: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL67_ID, Config.REBIRTH_MAGE_SKILL67_LEVEL); break; case 68: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL68_ID, Config.REBIRTH_MAGE_SKILL68_LEVEL); break; case 69: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL69_ID, Config.REBIRTH_MAGE_SKILL69_LEVEL); break; case 70: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL70_ID, Config.REBIRTH_MAGE_SKILL70_LEVEL); break; case 71: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL71_ID, Config.REBIRTH_MAGE_SKILL71_LEVEL); break; case 72: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL72_ID, Config.REBIRTH_MAGE_SKILL72_LEVEL); break; case 73: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL73_ID, Config.REBIRTH_MAGE_SKILL73_LEVEL); break; case 74: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL74_ID, Config.REBIRTH_MAGE_SKILL74_LEVEL); break; case 75: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL75_ID, Config.REBIRTH_MAGE_SKILL75_LEVEL); break; case 76: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL76_ID, Config.REBIRTH_MAGE_SKILL76_LEVEL); break; case 77: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL77_ID, Config.REBIRTH_MAGE_SKILL77_LEVEL); break; case 78: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL78_ID, Config.REBIRTH_MAGE_SKILL78_LEVEL); break; case 79: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL79_ID, Config.REBIRTH_MAGE_SKILL79_LEVEL); break; case 80: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL80_ID, Config.REBIRTH_MAGE_SKILL80_LEVEL); break; case 81: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL81_ID, Config.REBIRTH_MAGE_SKILL81_LEVEL); break; case 82: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL82_ID, Config.REBIRTH_MAGE_SKILL82_LEVEL); break; case 83: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL83_ID, Config.REBIRTH_MAGE_SKILL83_LEVEL); break; case 84: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL84_ID, Config.REBIRTH_MAGE_SKILL84_LEVEL); break; case 85: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL85_ID, Config.REBIRTH_MAGE_SKILL85_LEVEL); break; case 86: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL86_ID, Config.REBIRTH_MAGE_SKILL86_LEVEL); break; case 87: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL87_ID, Config.REBIRTH_MAGE_SKILL87_LEVEL); break; case 88: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL88_ID, Config.REBIRTH_MAGE_SKILL88_LEVEL); break; case 89: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL89_ID, Config.REBIRTH_MAGE_SKILL89_LEVEL); break; case 90: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL90_ID, Config.REBIRTH_MAGE_SKILL90_LEVEL); break; case 91: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL91_ID, Config.REBIRTH_MAGE_SKILL91_LEVEL); break; case 92: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL92_ID, Config.REBIRTH_MAGE_SKILL92_LEVEL); break; case 93: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL93_ID, Config.REBIRTH_MAGE_SKILL93_LEVEL); break; case 94: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL94_ID, Config.REBIRTH_MAGE_SKILL94_LEVEL); break; case 95: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL95_ID, Config.REBIRTH_MAGE_SKILL95_LEVEL); break; case 96: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL96_ID, Config.REBIRTH_MAGE_SKILL96_LEVEL); break; case 97: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL97_ID, Config.REBIRTH_MAGE_SKILL97_LEVEL); break; case 98: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL98_ID, Config.REBIRTH_MAGE_SKILL98_LEVEL); break; case 99: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL99_ID, Config.REBIRTH_MAGE_SKILL99_LEVEL); break; case 100: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL100_ID, Config.REBIRTH_MAGE_SKILL100_LEVEL); break; case 101: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL101_ID, Config.REBIRTH_MAGE_SKILL101_LEVEL); break; case 102: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL102_ID, Config.REBIRTH_MAGE_SKILL102_LEVEL); break; case 103: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL103_ID, Config.REBIRTH_MAGE_SKILL103_LEVEL); break; case 104: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL104_ID, Config.REBIRTH_MAGE_SKILL104_LEVEL); break; case 105: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL105_ID, Config.REBIRTH_MAGE_SKILL105_LEVEL); break; case 106: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL106_ID, Config.REBIRTH_MAGE_SKILL106_LEVEL); break; case 107: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL107_ID, Config.REBIRTH_MAGE_SKILL107_LEVEL); break; case 108: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL108_ID, Config.REBIRTH_MAGE_SKILL108_LEVEL); break; case 109: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL109_ID, Config.REBIRTH_MAGE_SKILL109_LEVEL); break; case 110: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL110_ID, Config.REBIRTH_MAGE_SKILL110_LEVEL); break; case 111: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL111_ID, Config.REBIRTH_MAGE_SKILL111_LEVEL); break; case 112: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL112_ID, Config.REBIRTH_MAGE_SKILL112_LEVEL); break; case 113: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL113_ID, Config.REBIRTH_MAGE_SKILL113_LEVEL); break; case 114: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL114_ID, Config.REBIRTH_MAGE_SKILL114_LEVEL); break; case 115: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL115_ID, Config.REBIRTH_MAGE_SKILL115_LEVEL); break; case 116: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL116_ID, Config.REBIRTH_MAGE_SKILL116_LEVEL); break; case 117: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL117_ID, Config.REBIRTH_MAGE_SKILL117_LEVEL); break; case 118: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL118_ID, Config.REBIRTH_MAGE_SKILL118_LEVEL); break; case 119: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL119_ID, Config.REBIRTH_MAGE_SKILL119_LEVEL); break; case 120: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL120_ID, Config.REBIRTH_MAGE_SKILL120_LEVEL); break; case 121: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL121_ID, Config.REBIRTH_MAGE_SKILL121_LEVEL); break; case 122: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL122_ID, Config.REBIRTH_MAGE_SKILL122_LEVEL); break; case 123: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL123_ID, Config.REBIRTH_MAGE_SKILL123_LEVEL); break; case 124: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL124_ID, Config.REBIRTH_MAGE_SKILL124_LEVEL); break; case 125: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL125_ID, Config.REBIRTH_MAGE_SKILL125_LEVEL); break; case 126: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL126_ID, Config.REBIRTH_MAGE_SKILL126_LEVEL); break; case 127: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL127_ID, Config.REBIRTH_MAGE_SKILL127_LEVEL); break; case 128: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL128_ID, Config.REBIRTH_MAGE_SKILL128_LEVEL); break; case 129: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL129_ID, Config.REBIRTH_MAGE_SKILL129_LEVEL); break; case 130: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL130_ID, Config.REBIRTH_MAGE_SKILL130_LEVEL); break; case 131: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL131_ID, Config.REBIRTH_MAGE_SKILL131_LEVEL); break; case 132: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL132_ID, Config.REBIRTH_MAGE_SKILL132_LEVEL); break; case 133: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL133_ID, Config.REBIRTH_MAGE_SKILL133_LEVEL); break; case 134: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL134_ID, Config.REBIRTH_MAGE_SKILL134_LEVEL); break; case 135: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL135_ID, Config.REBIRTH_MAGE_SKILL135_LEVEL); break; case 136: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL136_ID, Config.REBIRTH_MAGE_SKILL136_LEVEL); break; case 137: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL137_ID, Config.REBIRTH_MAGE_SKILL137_LEVEL); break; case 138: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL138_ID, Config.REBIRTH_MAGE_SKILL138_LEVEL); break; case 139: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL139_ID, Config.REBIRTH_MAGE_SKILL139_LEVEL); break; case 140: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL140_ID, Config.REBIRTH_MAGE_SKILL140_LEVEL); break; case 141: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL142_ID, Config.REBIRTH_MAGE_SKILL142_LEVEL); break; case 142: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL142_ID, Config.REBIRTH_MAGE_SKILL142_LEVEL); break; case 143: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL143_ID, Config.REBIRTH_MAGE_SKILL143_LEVEL); break; case 144: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL144_ID, Config.REBIRTH_MAGE_SKILL144_LEVEL); break; case 145: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL145_ID, Config.REBIRTH_MAGE_SKILL145_LEVEL); break; case 146: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL146_ID, Config.REBIRTH_MAGE_SKILL146_LEVEL); break; case 147: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL147_ID, Config.REBIRTH_MAGE_SKILL147_LEVEL); break; case 148: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL148_ID, Config.REBIRTH_MAGE_SKILL148_LEVEL); break; case 149: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL149_ID, Config.REBIRTH_MAGE_SKILL149_LEVEL); break; case 150: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL150_ID, Config.REBIRTH_MAGE_SKILL150_LEVEL); break; case 151: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL151_ID, Config.REBIRTH_MAGE_SKILL151_LEVEL); break; case 152: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL152_ID, Config.REBIRTH_MAGE_SKILL152_LEVEL); break; case 153: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL153_ID, Config.REBIRTH_MAGE_SKILL153_LEVEL); break; case 154: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL154_ID, Config.REBIRTH_MAGE_SKILL154_LEVEL); break; case 155: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL155_ID, Config.REBIRTH_MAGE_SKILL155_LEVEL); break; case 156: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL156_ID, Config.REBIRTH_MAGE_SKILL156_LEVEL); break; case 157: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL157_ID, Config.REBIRTH_MAGE_SKILL157_LEVEL); break; case 158: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL158_ID, Config.REBIRTH_MAGE_SKILL158_LEVEL); break; case 159: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL159_ID, Config.REBIRTH_MAGE_SKILL159_LEVEL); break; case 160: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL160_ID, Config.REBIRTH_MAGE_SKILL160_LEVEL); break; case 161: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL161_ID, Config.REBIRTH_MAGE_SKILL161_LEVEL); break; case 162: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL162_ID, Config.REBIRTH_MAGE_SKILL162_LEVEL); break; case 163: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL163_ID, Config.REBIRTH_MAGE_SKILL163_LEVEL); break; case 164: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL164_ID, Config.REBIRTH_MAGE_SKILL164_LEVEL); break; case 165: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL165_ID, Config.REBIRTH_MAGE_SKILL165_LEVEL); break; case 166: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL166_ID, Config.REBIRTH_MAGE_SKILL166_LEVEL); break; case 167: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL167_ID, Config.REBIRTH_MAGE_SKILL167_LEVEL); break; case 168: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL168_ID, Config.REBIRTH_MAGE_SKILL168_LEVEL); break; case 169: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL169_ID, Config.REBIRTH_MAGE_SKILL169_LEVEL); break; case 170: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL170_ID, Config.REBIRTH_MAGE_SKILL170_LEVEL); break; case 171: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL171_ID, Config.REBIRTH_MAGE_SKILL171_LEVEL); break; case 172: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL172_ID, Config.REBIRTH_MAGE_SKILL172_LEVEL); break; case 173: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL173_ID, Config.REBIRTH_MAGE_SKILL173_LEVEL); break; case 174: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL174_ID, Config.REBIRTH_MAGE_SKILL174_LEVEL); break; case 175: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL175_ID, Config.REBIRTH_MAGE_SKILL175_LEVEL); break; case 176: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL176_ID, Config.REBIRTH_MAGE_SKILL176_LEVEL); break; case 177: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL177_ID, Config.REBIRTH_MAGE_SKILL177_LEVEL); break; case 178: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL178_ID, Config.REBIRTH_MAGE_SKILL178_LEVEL); break; case 179: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL179_ID, Config.REBIRTH_MAGE_SKILL179_LEVEL); break; case 180: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL180_ID, Config.REBIRTH_MAGE_SKILL180_LEVEL); break; case 181: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL181_ID, Config.REBIRTH_MAGE_SKILL181_LEVEL); break; case 182: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL182_ID, Config.REBIRTH_MAGE_SKILL182_LEVEL); break; case 183: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL183_ID, Config.REBIRTH_MAGE_SKILL183_LEVEL); break; case 184: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL184_ID, Config.REBIRTH_MAGE_SKILL184_LEVEL); break; case 185: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL185_ID, Config.REBIRTH_MAGE_SKILL185_LEVEL); break; case 186: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL186_ID, Config.REBIRTH_MAGE_SKILL186_LEVEL); break; case 187: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL187_ID, Config.REBIRTH_MAGE_SKILL187_LEVEL); break; case 188: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL188_ID, Config.REBIRTH_MAGE_SKILL188_LEVEL); break; case 189: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL189_ID, Config.REBIRTH_MAGE_SKILL189_LEVEL); break; case 190: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL190_ID, Config.REBIRTH_MAGE_SKILL190_LEVEL); break; case 191: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL191_ID, Config.REBIRTH_MAGE_SKILL191_LEVEL); break; case 192: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL192_ID, Config.REBIRTH_MAGE_SKILL192_LEVEL); break; case 193: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL193_ID, Config.REBIRTH_MAGE_SKILL193_LEVEL); break; case 194: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL194_ID, Config.REBIRTH_MAGE_SKILL194_LEVEL); break; case 195: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL195_ID, Config.REBIRTH_MAGE_SKILL195_LEVEL); break; case 196: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL196_ID, Config.REBIRTH_MAGE_SKILL196_LEVEL); break; case 197: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL197_ID, Config.REBIRTH_MAGE_SKILL197_LEVEL); break; case 198: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL198_ID, Config.REBIRTH_MAGE_SKILL198_LEVEL); break; case 199: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL199_ID, Config.REBIRTH_MAGE_SKILL199_LEVEL); break; case 200: skill = SkillData.getInstance().getSkill(Config.REBIRTH_MAGE_SKILL200_ID, Config.REBIRTH_MAGE_SKILL200_LEVEL); break; } } else { // Player is a Fighter. switch (rebirthLevel) { case 1: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL1_ID, Config.REBIRTH_FIGHTER_SKILL1_LEVEL); break; case 2: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL2_ID, Config.REBIRTH_FIGHTER_SKILL2_LEVEL); break; case 3: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL3_ID, Config.REBIRTH_FIGHTER_SKILL3_LEVEL); break; case 4: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL4_ID, Config.REBIRTH_FIGHTER_SKILL4_LEVEL); break; case 5: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL5_ID, Config.REBIRTH_FIGHTER_SKILL5_LEVEL); break; case 6: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL6_ID, Config.REBIRTH_FIGHTER_SKILL6_LEVEL); break; case 7: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL7_ID, Config.REBIRTH_FIGHTER_SKILL7_LEVEL); break; case 8: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL8_ID, Config.REBIRTH_FIGHTER_SKILL8_LEVEL); break; case 9: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL9_ID, Config.REBIRTH_FIGHTER_SKILL9_LEVEL); break; case 10: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL10_ID, Config.REBIRTH_FIGHTER_SKILL10_LEVEL); break; case 11: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL11_ID, Config.REBIRTH_FIGHTER_SKILL11_LEVEL); break; case 12: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL12_ID, Config.REBIRTH_FIGHTER_SKILL12_LEVEL); break; case 13: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL13_ID, Config.REBIRTH_FIGHTER_SKILL13_LEVEL); break; case 14: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL14_ID, Config.REBIRTH_FIGHTER_SKILL14_LEVEL); break; case 15: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL15_ID, Config.REBIRTH_FIGHTER_SKILL15_LEVEL); break; case 16: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL16_ID, Config.REBIRTH_FIGHTER_SKILL16_LEVEL); break; case 17: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL17_ID, Config.REBIRTH_FIGHTER_SKILL17_LEVEL); break; case 18: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL18_ID, Config.REBIRTH_FIGHTER_SKILL18_LEVEL); break; case 19: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL19_ID, Config.REBIRTH_FIGHTER_SKILL19_LEVEL); break; case 20: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL20_ID, Config.REBIRTH_FIGHTER_SKILL20_LEVEL); break; case 21: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL21_ID, Config.REBIRTH_FIGHTER_SKILL21_LEVEL); break; case 22: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL22_ID, Config.REBIRTH_FIGHTER_SKILL22_LEVEL); break; case 23: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL23_ID, Config.REBIRTH_FIGHTER_SKILL23_LEVEL); break; case 24: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL24_ID, Config.REBIRTH_FIGHTER_SKILL24_LEVEL); break; case 25: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL25_ID, Config.REBIRTH_FIGHTER_SKILL25_LEVEL); break; case 26: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL26_ID, Config.REBIRTH_FIGHTER_SKILL26_LEVEL); break; case 27: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL27_ID, Config.REBIRTH_FIGHTER_SKILL27_LEVEL); break; case 28: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL28_ID, Config.REBIRTH_FIGHTER_SKILL28_LEVEL); break; case 29: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL29_ID, Config.REBIRTH_FIGHTER_SKILL29_LEVEL); break; case 30: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL30_ID, Config.REBIRTH_FIGHTER_SKILL30_LEVEL); break; case 31: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL31_ID, Config.REBIRTH_FIGHTER_SKILL31_LEVEL); break; case 32: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL32_ID, Config.REBIRTH_FIGHTER_SKILL32_LEVEL); break; case 33: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL33_ID, Config.REBIRTH_FIGHTER_SKILL33_LEVEL); break; case 34: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL34_ID, Config.REBIRTH_FIGHTER_SKILL34_LEVEL); break; case 35: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL35_ID, Config.REBIRTH_FIGHTER_SKILL35_LEVEL); break; case 36: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL36_ID, Config.REBIRTH_FIGHTER_SKILL36_LEVEL); break; case 37: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL37_ID, Config.REBIRTH_FIGHTER_SKILL37_LEVEL); break; case 38: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL38_ID, Config.REBIRTH_FIGHTER_SKILL38_LEVEL); break; case 39: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL39_ID, Config.REBIRTH_FIGHTER_SKILL39_LEVEL); break; case 40: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL40_ID, Config.REBIRTH_FIGHTER_SKILL40_LEVEL); break; case 41: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL42_ID, Config.REBIRTH_FIGHTER_SKILL41_LEVEL); break; case 42: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL42_ID, Config.REBIRTH_FIGHTER_SKILL42_LEVEL); break; case 43: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL43_ID, Config.REBIRTH_FIGHTER_SKILL43_LEVEL); break; case 44: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL44_ID, Config.REBIRTH_FIGHTER_SKILL44_LEVEL); break; case 45: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL45_ID, Config.REBIRTH_FIGHTER_SKILL45_LEVEL); break; case 46: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL46_ID, Config.REBIRTH_FIGHTER_SKILL46_LEVEL); break; case 47: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL47_ID, Config.REBIRTH_FIGHTER_SKILL47_LEVEL); break; case 48: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL48_ID, Config.REBIRTH_FIGHTER_SKILL48_LEVEL); break; case 49: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL49_ID, Config.REBIRTH_FIGHTER_SKILL49_LEVEL); break; case 50: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL50_ID, Config.REBIRTH_FIGHTER_SKILL50_LEVEL); break; case 51: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL51_ID, Config.REBIRTH_FIGHTER_SKILL51_LEVEL); break; case 52: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL52_ID, Config.REBIRTH_FIGHTER_SKILL52_LEVEL); break; case 53: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL53_ID, Config.REBIRTH_FIGHTER_SKILL53_LEVEL); break; case 54: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL54_ID, Config.REBIRTH_FIGHTER_SKILL54_LEVEL); break; case 55: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL55_ID, Config.REBIRTH_FIGHTER_SKILL55_LEVEL); break; case 56: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL56_ID, Config.REBIRTH_FIGHTER_SKILL56_LEVEL); break; case 57: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL57_ID, Config.REBIRTH_FIGHTER_SKILL57_LEVEL); break; case 58: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL58_ID, Config.REBIRTH_FIGHTER_SKILL58_LEVEL); break; case 59: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL59_ID, Config.REBIRTH_FIGHTER_SKILL59_LEVEL); break; case 60: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL60_ID, Config.REBIRTH_FIGHTER_SKILL60_LEVEL); break; case 61: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL61_ID, Config.REBIRTH_FIGHTER_SKILL61_LEVEL); break; case 62: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL62_ID, Config.REBIRTH_FIGHTER_SKILL62_LEVEL); break; case 63: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL63_ID, Config.REBIRTH_FIGHTER_SKILL63_LEVEL); break; case 64: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL64_ID, Config.REBIRTH_FIGHTER_SKILL64_LEVEL); break; case 65: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL65_ID, Config.REBIRTH_FIGHTER_SKILL65_LEVEL); break; case 66: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL66_ID, Config.REBIRTH_FIGHTER_SKILL66_LEVEL); break; case 67: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL67_ID, Config.REBIRTH_FIGHTER_SKILL67_LEVEL); break; case 68: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL68_ID, Config.REBIRTH_FIGHTER_SKILL68_LEVEL); break; case 69: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL69_ID, Config.REBIRTH_FIGHTER_SKILL69_LEVEL); break; case 70: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL70_ID, Config.REBIRTH_FIGHTER_SKILL70_LEVEL); break; case 71: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL71_ID, Config.REBIRTH_FIGHTER_SKILL71_LEVEL); break; case 72: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL72_ID, Config.REBIRTH_FIGHTER_SKILL72_LEVEL); break; case 73: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL73_ID, Config.REBIRTH_FIGHTER_SKILL73_LEVEL); break; case 74: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL74_ID, Config.REBIRTH_FIGHTER_SKILL74_LEVEL); break; case 75: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL75_ID, Config.REBIRTH_FIGHTER_SKILL75_LEVEL); break; case 76: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL76_ID, Config.REBIRTH_FIGHTER_SKILL76_LEVEL); break; case 77: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL77_ID, Config.REBIRTH_FIGHTER_SKILL77_LEVEL); break; case 78: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL78_ID, Config.REBIRTH_FIGHTER_SKILL78_LEVEL); break; case 79: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL79_ID, Config.REBIRTH_FIGHTER_SKILL79_LEVEL); break; case 80: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL80_ID, Config.REBIRTH_FIGHTER_SKILL80_LEVEL); break; case 81: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL81_ID, Config.REBIRTH_FIGHTER_SKILL81_LEVEL); break; case 82: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL82_ID, Config.REBIRTH_FIGHTER_SKILL82_LEVEL); break; case 83: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL83_ID, Config.REBIRTH_FIGHTER_SKILL83_LEVEL); break; case 84: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL84_ID, Config.REBIRTH_FIGHTER_SKILL84_LEVEL); break; case 85: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL85_ID, Config.REBIRTH_FIGHTER_SKILL85_LEVEL); break; case 86: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL86_ID, Config.REBIRTH_FIGHTER_SKILL86_LEVEL); break; case 87: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL87_ID, Config.REBIRTH_FIGHTER_SKILL87_LEVEL); break; case 88: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL88_ID, Config.REBIRTH_FIGHTER_SKILL88_LEVEL); break; case 89: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL89_ID, Config.REBIRTH_FIGHTER_SKILL89_LEVEL); break; case 90: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL90_ID, Config.REBIRTH_FIGHTER_SKILL90_LEVEL); break; case 91: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL91_ID, Config.REBIRTH_FIGHTER_SKILL91_LEVEL); break; case 92: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL92_ID, Config.REBIRTH_FIGHTER_SKILL92_LEVEL); break; case 93: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL93_ID, Config.REBIRTH_FIGHTER_SKILL93_LEVEL); break; case 94: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL94_ID, Config.REBIRTH_FIGHTER_SKILL94_LEVEL); break; case 95: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL95_ID, Config.REBIRTH_FIGHTER_SKILL95_LEVEL); break; case 96: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL96_ID, Config.REBIRTH_FIGHTER_SKILL96_LEVEL); break; case 97: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL97_ID, Config.REBIRTH_FIGHTER_SKILL97_LEVEL); break; case 98: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL98_ID, Config.REBIRTH_FIGHTER_SKILL98_LEVEL); break; case 99: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL99_ID, Config.REBIRTH_FIGHTER_SKILL99_LEVEL); break; case 100: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL100_ID, Config.REBIRTH_FIGHTER_SKILL100_LEVEL); break; case 101: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL101_ID, Config.REBIRTH_FIGHTER_SKILL101_LEVEL); break; case 102: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL102_ID, Config.REBIRTH_FIGHTER_SKILL102_LEVEL); break; case 103: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL103_ID, Config.REBIRTH_FIGHTER_SKILL103_LEVEL); break; case 104: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL104_ID, Config.REBIRTH_FIGHTER_SKILL104_LEVEL); break; case 105: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL105_ID, Config.REBIRTH_FIGHTER_SKILL105_LEVEL); break; case 106: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL106_ID, Config.REBIRTH_FIGHTER_SKILL106_LEVEL); break; case 107: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL107_ID, Config.REBIRTH_FIGHTER_SKILL107_LEVEL); break; case 108: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL108_ID, Config.REBIRTH_FIGHTER_SKILL108_LEVEL); break; case 109: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL109_ID, Config.REBIRTH_FIGHTER_SKILL109_LEVEL); break; case 110: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL110_ID, Config.REBIRTH_FIGHTER_SKILL110_LEVEL); break; case 111: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL111_ID, Config.REBIRTH_FIGHTER_SKILL111_LEVEL); break; case 112: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL112_ID, Config.REBIRTH_FIGHTER_SKILL112_LEVEL); break; case 113: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL113_ID, Config.REBIRTH_FIGHTER_SKILL113_LEVEL); break; case 114: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL114_ID, Config.REBIRTH_FIGHTER_SKILL114_LEVEL); break; case 115: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL115_ID, Config.REBIRTH_FIGHTER_SKILL115_LEVEL); break; case 116: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL116_ID, Config.REBIRTH_FIGHTER_SKILL116_LEVEL); break; case 117: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL117_ID, Config.REBIRTH_FIGHTER_SKILL117_LEVEL); break; case 118: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL118_ID, Config.REBIRTH_FIGHTER_SKILL118_LEVEL); break; case 119: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL119_ID, Config.REBIRTH_FIGHTER_SKILL119_LEVEL); break; case 120: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL120_ID, Config.REBIRTH_FIGHTER_SKILL120_LEVEL); break; case 121: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL121_ID, Config.REBIRTH_FIGHTER_SKILL121_LEVEL); break; case 122: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL122_ID, Config.REBIRTH_FIGHTER_SKILL122_LEVEL); break; case 123: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL123_ID, Config.REBIRTH_FIGHTER_SKILL123_LEVEL); break; case 124: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL124_ID, Config.REBIRTH_FIGHTER_SKILL124_LEVEL); break; case 125: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL125_ID, Config.REBIRTH_FIGHTER_SKILL125_LEVEL); break; case 126: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL126_ID, Config.REBIRTH_FIGHTER_SKILL126_LEVEL); break; case 127: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL127_ID, Config.REBIRTH_FIGHTER_SKILL127_LEVEL); break; case 128: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL128_ID, Config.REBIRTH_FIGHTER_SKILL128_LEVEL); break; case 129: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL129_ID, Config.REBIRTH_FIGHTER_SKILL129_LEVEL); break; case 130: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL130_ID, Config.REBIRTH_FIGHTER_SKILL130_LEVEL); break; case 131: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL131_ID, Config.REBIRTH_FIGHTER_SKILL131_LEVEL); break; case 132: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL132_ID, Config.REBIRTH_FIGHTER_SKILL132_LEVEL); break; case 133: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL133_ID, Config.REBIRTH_FIGHTER_SKILL133_LEVEL); break; case 134: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL134_ID, Config.REBIRTH_FIGHTER_SKILL134_LEVEL); break; case 135: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL135_ID, Config.REBIRTH_FIGHTER_SKILL135_LEVEL); break; case 136: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL136_ID, Config.REBIRTH_FIGHTER_SKILL136_LEVEL); break; case 137: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL137_ID, Config.REBIRTH_FIGHTER_SKILL137_LEVEL); break; case 138: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL138_ID, Config.REBIRTH_FIGHTER_SKILL138_LEVEL); break; case 139: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL139_ID, Config.REBIRTH_FIGHTER_SKILL139_LEVEL); break; case 140: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL140_ID, Config.REBIRTH_FIGHTER_SKILL140_LEVEL); break; case 141: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL142_ID, Config.REBIRTH_FIGHTER_SKILL142_LEVEL); break; case 142: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL142_ID, Config.REBIRTH_FIGHTER_SKILL142_LEVEL); break; case 143: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL143_ID, Config.REBIRTH_FIGHTER_SKILL143_LEVEL); break; case 144: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL144_ID, Config.REBIRTH_FIGHTER_SKILL144_LEVEL); break; case 145: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL145_ID, Config.REBIRTH_FIGHTER_SKILL145_LEVEL); break; case 146: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL146_ID, Config.REBIRTH_FIGHTER_SKILL146_LEVEL); break; case 147: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL147_ID, Config.REBIRTH_FIGHTER_SKILL147_LEVEL); break; case 148: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL148_ID, Config.REBIRTH_FIGHTER_SKILL148_LEVEL); break; case 149: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL149_ID, Config.REBIRTH_FIGHTER_SKILL149_LEVEL); break; case 150: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL150_ID, Config.REBIRTH_FIGHTER_SKILL150_LEVEL); break; case 151: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL151_ID, Config.REBIRTH_FIGHTER_SKILL151_LEVEL); break; case 152: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL152_ID, Config.REBIRTH_FIGHTER_SKILL152_LEVEL); break; case 153: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL153_ID, Config.REBIRTH_FIGHTER_SKILL153_LEVEL); break; case 154: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL154_ID, Config.REBIRTH_FIGHTER_SKILL154_LEVEL); break; case 155: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL155_ID, Config.REBIRTH_FIGHTER_SKILL155_LEVEL); break; case 156: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL156_ID, Config.REBIRTH_FIGHTER_SKILL156_LEVEL); break; case 157: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL157_ID, Config.REBIRTH_FIGHTER_SKILL157_LEVEL); break; case 158: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL158_ID, Config.REBIRTH_FIGHTER_SKILL158_LEVEL); break; case 159: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL159_ID, Config.REBIRTH_FIGHTER_SKILL159_LEVEL); break; case 160: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL160_ID, Config.REBIRTH_FIGHTER_SKILL160_LEVEL); break; case 161: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL161_ID, Config.REBIRTH_FIGHTER_SKILL161_LEVEL); break; case 162: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL162_ID, Config.REBIRTH_FIGHTER_SKILL162_LEVEL); break; case 163: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL163_ID, Config.REBIRTH_FIGHTER_SKILL163_LEVEL); break; case 164: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL164_ID, Config.REBIRTH_FIGHTER_SKILL164_LEVEL); break; case 165: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL165_ID, Config.REBIRTH_FIGHTER_SKILL165_LEVEL); break; case 166: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL166_ID, Config.REBIRTH_FIGHTER_SKILL166_LEVEL); break; case 167: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL167_ID, Config.REBIRTH_FIGHTER_SKILL167_LEVEL); break; case 168: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL168_ID, Config.REBIRTH_FIGHTER_SKILL168_LEVEL); break; case 169: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL169_ID, Config.REBIRTH_FIGHTER_SKILL169_LEVEL); break; case 170: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL170_ID, Config.REBIRTH_FIGHTER_SKILL170_LEVEL); break; case 171: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL171_ID, Config.REBIRTH_FIGHTER_SKILL171_LEVEL); break; case 172: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL172_ID, Config.REBIRTH_FIGHTER_SKILL172_LEVEL); break; case 173: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL173_ID, Config.REBIRTH_FIGHTER_SKILL173_LEVEL); break; case 174: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL174_ID, Config.REBIRTH_FIGHTER_SKILL174_LEVEL); break; case 175: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL175_ID, Config.REBIRTH_FIGHTER_SKILL175_LEVEL); break; case 176: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL176_ID, Config.REBIRTH_FIGHTER_SKILL176_LEVEL); break; case 177: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL177_ID, Config.REBIRTH_FIGHTER_SKILL177_LEVEL); break; case 178: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL178_ID, Config.REBIRTH_FIGHTER_SKILL178_LEVEL); break; case 179: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL179_ID, Config.REBIRTH_FIGHTER_SKILL179_LEVEL); break; case 180: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL180_ID, Config.REBIRTH_FIGHTER_SKILL180_LEVEL); break; case 181: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL181_ID, Config.REBIRTH_FIGHTER_SKILL181_LEVEL); break; case 182: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL182_ID, Config.REBIRTH_FIGHTER_SKILL182_LEVEL); break; case 183: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL183_ID, Config.REBIRTH_FIGHTER_SKILL183_LEVEL); break; case 184: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL184_ID, Config.REBIRTH_FIGHTER_SKILL184_LEVEL); break; case 185: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL185_ID, Config.REBIRTH_FIGHTER_SKILL185_LEVEL); break; case 186: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL186_ID, Config.REBIRTH_FIGHTER_SKILL186_LEVEL); break; case 187: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL187_ID, Config.REBIRTH_FIGHTER_SKILL187_LEVEL); break; case 188: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL188_ID, Config.REBIRTH_FIGHTER_SKILL188_LEVEL); break; case 189: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL189_ID, Config.REBIRTH_FIGHTER_SKILL189_LEVEL); break; case 190: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL190_ID, Config.REBIRTH_FIGHTER_SKILL190_LEVEL); break; case 191: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL191_ID, Config.REBIRTH_FIGHTER_SKILL191_LEVEL); break; case 192: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL192_ID, Config.REBIRTH_FIGHTER_SKILL192_LEVEL); break; case 193: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL193_ID, Config.REBIRTH_FIGHTER_SKILL193_LEVEL); break; case 194: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL194_ID, Config.REBIRTH_FIGHTER_SKILL194_LEVEL); break; case 195: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL195_ID, Config.REBIRTH_FIGHTER_SKILL195_LEVEL); break; case 196: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL196_ID, Config.REBIRTH_FIGHTER_SKILL196_LEVEL); break; case 197: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL197_ID, Config.REBIRTH_FIGHTER_SKILL197_LEVEL); break; case 198: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL198_ID, Config.REBIRTH_FIGHTER_SKILL198_LEVEL); break; case 199: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL199_ID, Config.REBIRTH_FIGHTER_SKILL199_LEVEL); break; case 200: skill = SkillData.getInstance().getSkill(Config.REBIRTH_FIGHTER_SKILL200_ID, Config.REBIRTH_FIGHTER_SKILL200_LEVEL); break; } } return skill; } /** * Database caller to retrieve player's current Rebirth Level * @param player */ public void loadRebirthInfo(L2PcInstance player) { int playerId = player.getObjectId(); int rebirthCount = 0; try (Connection con = L2DatabaseFactory.getInstance().getConnection()) { ResultSet rset; PreparedStatement statement = con.prepareStatement("SELECT * FROM `rebirth_manager` WHERE playerId = ?"); statement.setInt(1, playerId); rset = statement.executeQuery(); while (rset.next()) { rebirthCount = rset.getInt("rebirthCount"); } rset.close(); statement.close(); } catch (Exception e) { e.printStackTrace(); } _playersRebirthInfo.put(playerId, rebirthCount); } /** * Stores the player's information in the DB. * @param player */ public void storePlayerBirth(L2PcInstance player) { try (Connection con = L2DatabaseFactory.getInstance().getConnection()) { PreparedStatement statement = con.prepareStatement("INSERT INTO `rebirth_manager` (playerId,rebirthCount) VALUES (?,1)"); statement.setInt(1, player.getObjectId()); statement.execute(); _playersRebirthInfo.put(player.getObjectId(), 1); } catch (Exception e) { e.printStackTrace(); } } /** * Updates the player's information in the DB. * @param player * @param newRebirthCount */ public void updatePlayerBirth(L2PcInstance player, int newRebirthCount) { try (Connection con = L2DatabaseFactory.getInstance().getConnection()) { int playerId = player.getObjectId(); PreparedStatement statement = con.prepareStatement("UPDATE `rebirth_manager` SET rebirthCount = ? WHERE playerId = ?"); statement.setInt(1, newRebirthCount); statement.setInt(2, playerId); statement.execute(); _playersRebirthInfo.put(playerId, newRebirthCount); } catch (Exception e) { e.printStackTrace(); } } /** * @param command * @param activeChar */ public void cbByPass(String command, L2PcInstance activeChar) { // TODO Auto-generated method stub } } and here it is bResuestBypassToServer.java /* * Copyright (C) 2004-2015 L2J Server * * This file is part of L2J Server. * * L2J Server is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * L2J Server 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package l2r.gameserver.network.clientpackets; import java.util.StringTokenizer; import l2r.Config; import l2r.gameserver.communitybbs.BoardsManager; import l2r.gameserver.data.xml.impl.AdminData; import l2r.gameserver.enums.CtrlIntention; import l2r.gameserver.handler.AdminCommandHandler; import l2r.gameserver.handler.BypassHandler; import l2r.gameserver.handler.IAdminCommandHandler; import l2r.gameserver.handler.IBypassHandler; import l2r.gameserver.model.L2Object; import l2r.gameserver.model.L2World; import l2r.gameserver.model.Location; import l2r.gameserver.model.actor.L2Npc; import l2r.gameserver.model.actor.instance.L2PcInstance; import l2r.gameserver.model.entity.Hero; import l2r.gameserver.model.events.EventDispatcher; import l2r.gameserver.model.events.impl.character.npc.OnNpcManorBypass; import l2r.gameserver.model.events.impl.character.player.OnPlayerBypass; import l2r.gameserver.model.items.instance.L2ItemInstance; import l2r.gameserver.network.SystemMessageId; import l2r.gameserver.network.serverpackets.ActionFailed; import l2r.gameserver.network.serverpackets.ConfirmDlg; import l2r.gameserver.network.serverpackets.NpcHtmlMessage; import l2r.gameserver.util.GMAudit; import l2r.gameserver.util.Util; import gr.sr.aioItem.AioItemNpcs; import gr.sr.configsEngine.configs.impl.AioItemsConfigs; import gr.sr.configsEngine.configs.impl.BufferConfigs; import gr.sr.configsEngine.configs.impl.IndividualVoteSystemConfigs; import gr.sr.interf.SunriseEvents; import gr.sr.javaBuffer.buffItem.AioItemBuffer; import gr.sr.voteEngine.old.VoteHandler; /** * This class ... * @version $Revision: 1.12.4.5 $ $Date: 2005/04/11 10:06:11 $ */ public final class RequestBypassToServer extends L2GameClientPacket { private static final String _C__23_REQUESTBYPASSTOSERVER = "[C] 23 RequestBypassToServer"; // FIXME: This is for compatibility, will be changed when bypass functionality got an overhaul by NosBit private static final String[] _possibleNonHtmlCommands = { "_bbs", "bbs", "nxs", "voice", "_mail", "_friend", "_match", "_diary", "_olympiad?command", "manor_menu_select", "admin_" }; // S private String _command; @Override protected void readImpl() { _command = readS(); } protected void runImpl(Object player) { final L2PcInstance activeChar = getClient().getActiveChar(); if (activeChar == null) { return; } if (_command.isEmpty()) { _log.info(activeChar.getName() + " send empty requestbypass"); activeChar.logout(); return; } boolean requiresBypassValidation = true; for (String possibleNonHtmlCommand : _possibleNonHtmlCommands) { if (_command.startsWith(possibleNonHtmlCommand)) { requiresBypassValidation = false; break; } } int bypassOriginId = 0; if (requiresBypassValidation) { bypassOriginId = activeChar.validateHtmlAction(_command); if (bypassOriginId == -1) { // _log.warn("Player " + activeChar.getName() + " sent non cached bypass: '" + _command + "'"); return; } if ((bypassOriginId > 0) && !Util.isInsideRangeOfObjectId(activeChar, bypassOriginId, L2Npc.INTERACTION_DISTANCE)) { // No logging here, this could be a common case where the player has the html still open and run too far away and then clicks a html action return; } } if (!getClient().getFloodProtectors().getServerBypass().tryPerformAction(_command)) { return; } try { if (SunriseEvents.onBypass(activeChar, _command)) { return; } if (_command.startsWith("admin_")) { String command = _command.split(" ")[0]; IAdminCommandHandler ach = AdminCommandHandler.getInstance().getHandler(command); if (ach == null) { if (activeChar.isGM()) { activeChar.sendMessage("The command " + command.substring(6) + " does not exist!"); } _log.warn(activeChar + " requested not registered admin command '" + command + "'"); return; } if (!AdminData.getInstance().hasAccess(command, activeChar.getAccessLevel())) { activeChar.sendMessage("You don't have the access rights to use this command!"); _log.warn("Character " + activeChar.getName() + " tried to use admin command " + command + ", without proper access level!"); return; } if (SunriseEvents.adminCommandRequiresConfirm(_command)) { activeChar.setAdminConfirmCmd(_command); ConfirmDlg dlg = new ConfirmDlg(SystemMessageId.S1); dlg.addString("Are you sure you want execute command " + _command.split(" ")[1] + " ?"); activeChar.sendPacket(dlg); return; } if (AdminData.getInstance().requireConfirm(command)) { activeChar.setAdminConfirmCmd(_command); ConfirmDlg dlg = new ConfirmDlg(SystemMessageId.S1); dlg.addString("Are you sure you want execute command " + _command.substring(6) + " ?"); activeChar.sendPacket(dlg); } else { if (Config.GMAUDIT) { GMAudit.auditGMAction(activeChar.getName() + " [" + activeChar.getObjectId() + "]", _command, (activeChar.getTarget() != null ? activeChar.getTarget().getName() : "no-target")); } ach.useAdminCommand(_command, activeChar); } } else if (_command.equals("come_here") && activeChar.isGM()) { comeHere(activeChar); } else if (_command.startsWith("npc_")) { activeChar.setIsUsingAioWh(false); activeChar.setIsUsingAioMultisell(false); int endOfId = _command.indexOf('_', 5); String id = endOfId > 0 ? _command.substring(4, endOfId) : _command.substring(4); if (Util.isDigit(id)) { L2Object object = L2World.getInstance().findObject(Integer.parseInt(id)); if ((object != null) && object.isNpc() && (endOfId > 0) && activeChar.isInsideRadius(object, L2Npc.INTERACTION_DISTANCE, false, false)) { ((L2Npc) object).onBypassFeedback(activeChar, _command.substring(endOfId + 1)); } } activeChar.sendPacket(ActionFailed.STATIC_PACKET); } else if (_command.startsWith("item_")) { int endOfId = _command.indexOf('_', 5); String id = endOfId > 0 ? _command.substring(5, endOfId) : _command.substring(5); try { L2ItemInstance item = activeChar.getInventory().getItemByObjectId(Integer.parseInt(id)); if ((item != null) && (endOfId > 0)) { item.onBypassFeedback(activeChar, _command.substring(endOfId + 1)); } activeChar.sendPacket(ActionFailed.STATIC_PACKET); } catch (NumberFormatException nfe) { _log.warn("NFE for command [" + _command + "]", nfe); } } else if (_command.startsWith("manor_menu_select")) { final L2Npc lastNpc = activeChar.getLastFolkNPC(); if (Config.ALLOW_MANOR && (lastNpc != null) && lastNpc.canInteract(activeChar)) { final String[] split = _command.substring(_command.indexOf("?") + 1).split("&"); final int ask = Integer.parseInt(split[0].split("=")[1]); final int state = Integer.parseInt(split[1].split("=")[1]); final boolean time = split[2].split("=")[1].equals("1"); EventDispatcher.getInstance().notifyEventAsync(new OnNpcManorBypass(activeChar, lastNpc, ask, state, time), lastNpc); } } else if (_command.startsWith("_bbs") || _command.startsWith("bbs") || _command.startsWith("_maillist") || _command.startsWith("_friendlist")) { BoardsManager.getInstance().handleCommands(getClient(), _command); } else if (_command.startsWith("_match")) { String params = _command.substring(_command.indexOf("?") + 1); StringTokenizer st = new StringTokenizer(params, "&"); int heroclass = Integer.parseInt(st.nextToken().split("=")[1]); int heropage = Integer.parseInt(st.nextToken().split("=")[1]); int heroid = Hero.getInstance().getHeroByClass(heroclass); if (heroid > 0) { Hero.getInstance().showHeroFights(activeChar, heroclass, heroid, heropage); } } else if (_command.startsWith("Aioitem")) { if (AioItemsConfigs.ENABLE_AIO_NPCS) { AioItemNpcs.onBypassFeedback(activeChar, _command.substring(8)); } } else if (_command.startsWith("Aiobuff")) { if (BufferConfigs.ENABLE_ITEM_BUFFER) { AioItemBuffer.onBypassFeedback(activeChar, _command.substring(8)); } } else if (_command.startsWith("Vote")) { if (IndividualVoteSystemConfigs.ENABLE_VOTE_SYSTEM) { VoteHandler.onBypassFeedback(activeChar, _command.substring(5)); } } else if (_command.startsWith("_diary")) { String params = _command.substring(_command.indexOf("?") + 1); StringTokenizer st = new StringTokenizer(params, "&"); int heroclass = Integer.parseInt(st.nextToken().split("=")[1]); int heropage = Integer.parseInt(st.nextToken().split("=")[1]); int heroid = Hero.getInstance().getHeroByClass(heroclass); if (heroid > 0) { Hero.getInstance().showHeroDiary(activeChar, heroclass, heroid, heropage); } } else if (_command.startsWith("_olympiad?command")) { int arenaId = Integer.parseInt(_command.split("=")[2]); final IBypassHandler handler = BypassHandler.getInstance().getHandler("arenachange"); if (handler != null) { handler.useBypass("arenachange " + (arenaId - 1), activeChar, null); } } else { final IBypassHandler handler = BypassHandler.getInstance().getHandler(_command); if (handler != null) { handler.useBypass(_command, activeChar, null); } else { _log.warn(getClient() + " sent not handled RequestBypassToServer: [" + _command + "]"); } } } catch (Exception e) { _log.warn(getClient() + " sent bad RequestBypassToServer: \"" + _command + "\"", e); if (activeChar.isGM()) { StringBuilder sb = new StringBuilder(200); sb.append("<html><body>"); sb.append("Bypass error: " + e + "<br1>"); sb.append("Bypass command: " + _command + "<br1>"); sb.append("StackTrace:<br1>"); for (StackTraceElement ste : e.getStackTrace()) { sb.append(ste.toString() + "<br1>"); } sb.append("</body></html>"); // item html NpcHtmlMessage msg = new NpcHtmlMessage(0, 12807); msg.setHtml(sb.toString()); msg.disableValidation(); activeChar.sendPacket(msg); } } EventDispatcher.getInstance().notifyEventAsync(new OnPlayerBypass(activeChar, _command), activeChar); } /** * @param activeChar */ private static void comeHere(L2PcInstance activeChar) { L2Object obj = activeChar.getTarget(); if (obj == null) { return; } if (obj instanceof L2Npc) { L2Npc temp = (L2Npc) obj; temp.setTarget(activeChar); temp.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(activeChar.getX(), activeChar.getY(), activeChar.getZ(), 0)); } } @Override public String getType() { return _C__23_REQUESTBYPASSTOSERVER; } /* * (non-Javadoc) * @see l2r.gameserver.network.clientpackets.L2GameClientPacket#runImpl() */ @Override protected void runImpl() { // TODO Auto-generated method stub } } Now, how i can make else if and where. ( Where in RequestBYPassToServer.java). I want that syntax with `else if` and i repeat, where i must put in ...bypasstoserver
-
I search for stats in buffs, for PvP Defence and PvP attack. And i don't know syntax. Can someone help me?
-
Well, it's able somebody to help me in this problem? Or all ignore me? i just wants to remove this shit command from CB and put only in HTML NPC COMMAND. But bypass doesn't work.!!!!!!!!!!!!!
-
i can't, but i can invite you into my computer to see what i did. How and where
-
Ok Sweets, i put this public void handleCommand(L2PcInstance player, String command) { if (command.startsWith("custom_rebirth_requestrebirth")) { displayRebirthWindow(player); } else if (command.startsWith("custom_rebirth_confirmrequest")) { requestRebirth(player); } } Into my BoardsManager.java, and still no working
-
Is not about Command like .rebirth or CB Rebirth Html, Simple added to NPC, but the button, no work. When i press Perform Rebirth, nothing happend, and the message appear into Community Board. Well, i think the ByPass from HTML it is wroong or something like that. And just for that i need help...i think i don't want too much. Look here NPC http:// and after i press Perform Rebirth, the unlucky is comming http://
-
Help me somebody?
-
I edit CommunityBoards.java but no work code. I don't know what to do :(
-
ok, i change something, and now, when i click perform rebirth to make rebirth, nothing happend, no errors no cb, nothing..:/
-
and this community board bypass it is in requestbypasstoserver.java?
-
Ok, i do something in RequestBypassToServer.java, but still something it is not implemented. and i don't know how to do that and i don't know how i can implemented that command
-
I have problem with bypass i think in my server. I add rebirth system and i get one error, i don't know if it's from CORE or from bypasses. [20:07:44] WARN: [Character: xxxxxxxx[268481155] - Account: xxx - IP: xxx.xxx.xx.xx] sent not handled RequestBypassToServer: [custom_rebirth_confirmrequest]. and here it is java code public void handleCommand(L2PcInstance player, String command) { if (command.startsWith("custom_rebirth_requestrebirth")) { displayRebirthWindow(player); } else if (command.startsWith("custom_rebirth_confirmrequest")) { requestRebirth(player); } } I think here i have a problem cuz i have in HTML <tr><td align=center><button action="bypass -h custom_rebirth_confirmrequest" value="Perform Rebirth" width=200 height=31 back="L2UI_CT1.OlympiadWnd_DF_HeroConfirm_Down" fore="L2UI_CT1.OlympiadWnd_DF_HeroConfirm"></td></tr> Smeone can save me?
-
How i can make x2 drop rate? I try from Config folder # --------------------------------------------------------------------------- # Item Rates # --------------------------------------------------------------------------- # Warning: Remember if you increase both chance and amount you will have higher rates than expected # Example: if amount multiplier is 5 and chance multiplier is 5 you will end up with 5*5 = 25 drop rates so be careful! # Multiplies the amount of items dropped from monster on ground when it dies. DeathDropAmountMultiplier = 1 # Multiplies the amount of items looted from monster when a skill like Sweeper(Spoil) is used. CorpseDropAmountMultiplier = 1 # Multiplies the amount of items dropped from monster on ground when it dies. HerbDropAmountMultiplier = 1 RaidDropAmountMultiplier = 1 # Multiplies the chance of items that can be dropped from monster on ground when it dies. DeathDropChanceMultiplier = 1 # Multiplies the chance of items that can be looted from monster when a skill like Sweeper(Spoil) is used. CorpseDropChanceMultiplier = 1 # Multiplies the chance of items that can be dropped from monster on ground when it dies. HerbDropChanceMultiplier = 1 RaidDropChanceMultiplier = 1 and everything i do, nothing happend. P.S.-L2jserver last revision
-
Help Rin4a buffer error on .py
InFocus replied to InFocus's question in Request Server Development Help [L2J]
Solved -
Hi, Today i add buffer in my server. And i get error on gameserver. File "custom/555_NPCBUFFER/__init__.py", line 998, in onAdvEvent AttributeError: getInfo at org.python.core.Py.AttributeError(Unknown Source) at org.python.core.PyInstance.invoke(Unknown Source) at org.python.pycode.serializable._pyx1531977305346.onAdvEvent$14(custom/555_NPCBUFFER/__init__.py:998) at org.python.pycode.serializable._pyx1531977305346.call_function(custom/555_NPCBUFFER/__init__.py) at org.python.core.PyTableCode.call(Unknown Source) at org.python.core.PyTableCode.call(Unknown Source) at org.python.core.PyTableCode.call(Unknown Source) at org.python.core.PyFunction.__call__(Unknown Source) at org.python.core.PyMethod.__call__(Unknown Source) at org.python.core.PyObject.__call__(Unknown Source) at org.python.core.PyObject._jcallexc(Unknown Source) at org.python.core.PyObject._jcall(Unknown Source) at org.python.proxies.main$Quest$131.onAdvEvent(Unknown Source) at com.l2jserver.gameserver.model.quest.Quest.notifyEvent(Quest.java:551) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.processQuestEvent(L2PcInstance.java:1470) at handlers.bypasshandlers.QuestLink.useBypass(QuestLink.java:77) at com.l2jserver.gameserver.network.clientpackets.RequestBypassToServer.runImpl(RequestBypassToServer.java:290) at com.l2jserver.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:69) at com.l2jserver.gameserver.network.L2GameClient.run(L2GameClient.java:1134) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Here it is error. And here it is line from py 998 SkillData.getInstance().getInfo(buff_sets[i],buff_sets[i+1]).getEffects(st.getPlayer(),st.getPlayer())
-
ok, this is my CommunityBoardHandler /* * Copyright (C) 2004-2015 L2J Server * * This file is part of L2J Server. * * L2J Server is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * L2J Server 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package com.l2jserver.gameserver.handler; import java.util.HashMap; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.logging.Logger; import com.l2jserver.Config; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.network.SystemMessageId; import com.l2jserver.gameserver.util.Util; /** * Community Board handler. * @author Zoey76 */ public final class CommunityBoardHandler implements IHandler<IParseBoardHandler, String> { private static final Logger LOG = Logger.getLogger(CommunityBoardHandler.class.getName()); /** The registered handlers. */ private final Map<String, IParseBoardHandler> _datatable = new HashMap<>(); /** The bypasses used by the players. */ private final Map<Integer, String> _bypasses = new ConcurrentHashMap<>(); protected CommunityBoardHandler() { // Prevent external initialization. } @Override public void registerHandler(IParseBoardHandler handler) { for (String cmd : handler.getCommunityBoardCommands()) { _datatable.put(cmd.toLowerCase(), handler); } } @Override public synchronized void removeHandler(IParseBoardHandler handler) { for (String cmd : handler.getCommunityBoardCommands()) { _datatable.remove(cmd.toLowerCase()); } } @Override public IParseBoardHandler getHandler(String cmd) { for (IParseBoardHandler cb : _datatable.values()) { for (String command : cb.getCommunityBoardCommands()) { if (cmd.toLowerCase().startsWith(command.toLowerCase())) { return cb; } } } return null; } @Override public int size() { return _datatable.size(); } /** * Verifies if the string is a registered community board command. * @param cmd the command to verify * @return {@code true} if the command has been registered, {@code false} otherwise */ public boolean isCommunityBoardCommand(String cmd) { return getHandler(cmd) != null; } /** * Parses a community board command. * @param command the command * @param player the player */ public void handleParseCommand(String command, L2PcInstance player) { if (player == null) { return; } if (!Config.ENABLE_COMMUNITY_BOARD) { player.sendPacket(SystemMessageId.CB_OFFLINE); return; } final IParseBoardHandler cb = getHandler(command); if (cb == null) { LOG.warning(CommunityBoardHandler.class.getSimpleName() + ": Couldn't find parse handler for command " + command + "!"); return; } cb.parseCommunityBoardCommand(command, player); } /** * Writes a command into the client. * @param player the player * @param url the command URL * @param arg1 the first argument * @param arg2 the second argument * @param arg3 the third argument * @param arg4 the fourth argument * @param arg5 the fifth argument */ public void handleWriteCommand(L2PcInstance player, String url, String arg1, String arg2, String arg3, String arg4, String arg5) { if (player == null) { return; } if (!Config.ENABLE_COMMUNITY_BOARD) { player.sendPacket(SystemMessageId.CB_OFFLINE); return; } String cmd = ""; switch (url) { case "Topic": { cmd = "_bbstop"; break; } case "Post": { cmd = "_bbspos"; // TODO: Implement. break; } case "Region": { cmd = "_bbsloc"; break; } case "Notice": { cmd = "_bbsclan"; break; } default: { separateAndSend("<html><body><br><br><center>The command: " + url + " is not implemented yet.</center><br><br></body></html>", player); return; } } final IParseBoardHandler cb = getHandler(cmd); if (cb == null) { LOG.warning(CommunityBoardHandler.class.getSimpleName() + ": Couldn't find write handler for command " + cmd + "!"); return; } if (!(cb instanceof IWriteBoardHandler)) { LOG.warning(CommunityBoardHandler.class.getSimpleName() + ": " + cb.getClass().getSimpleName() + " doesn't implement write!"); return; } ((IWriteBoardHandler) cb).writeCommunityBoardCommand(player, arg1, arg2, arg3, arg4, arg5); } /** * Sets the last bypass used by the player. * @param player the player * @param title the title * @param bypass the bypass */ public void addBypass(L2PcInstance player, String title, String bypass) { _bypasses.put(player.getObjectId(), title + "&" + bypass); } /** * Removes the last bypass used by the player. * @param player the player * @return the last bypass used */ public String removeBypass(L2PcInstance player) { return _bypasses.remove(player.getObjectId()); } /** * Separates and send an HTML into multiple packets, to display into the community board.<br> * The limit is 16383 characters. * @param html the HTML to send * @param player the player */ public static void separateAndSend(String html, L2PcInstance player) { Util.sendCBHtml(player, html); } public static CommunityBoardHandler getInstance() { return SingletonHolder._instance; } private static class SingletonHolder { protected static final CommunityBoardHandler _instance = new CommunityBoardHandler(); } } now, how i can edit or add html/multisell?
-
Today I have proposed to customize my community board and I have no idea how to do this. I would like to make a small gm shop and teleport. Can someone help me? I do not know if it's from core or just html. P.S. - Here I have a picture with my community without any change, everything is default. http://
-
Share High Five Community Board
InFocus replied to Celestine's topic in Client Development Discussion
i get crit error, how i can set home bbs? bypass in html's?? last rev l2jserver hi5 -
ye, i make a tutorial and don't work, Ty U can help me with this?
-
I must edit just config file?
