Proper name for SkillTable skill getter.

This commit is contained in:
MobiusDevelopment
2020-06-16 23:02:33 +00:00
parent c6058f29cb
commit c0261a2539
217 changed files with 668 additions and 668 deletions
@@ -1220,7 +1220,7 @@ public class AdminCommands extends Thread
final String level = st.nextToken(); final String level = st.nextToken();
final int idval = Integer.parseInt(id); final int idval = Integer.parseInt(id);
final int levelval = Integer.parseInt(level); final int levelval = Integer.parseInt(level);
final Skill skill = SkillTable.getInstance().getInfo(idval, levelval); final Skill skill = SkillTable.getInstance().getSkill(idval, levelval);
if (skill != null) if (skill != null)
{ {
player.sendMessage("Admin gave you the skill " + skill.getName() + "."); player.sendMessage("Admin gave you the skill " + skill.getName() + ".");
@@ -1239,7 +1239,7 @@ public class AdminCommands extends Thread
{ {
final PlayerInstance activeChar = client.getActiveChar(); final PlayerInstance activeChar = client.getActiveChar();
final PlayerInstance player = World.getInstance().getPlayer(_characterToManipulate); final PlayerInstance player = World.getInstance().getPlayer(_characterToManipulate);
final Skill skill = SkillTable.getInstance().getInfo(idval, player.getSkillLevel(idval)); final Skill skill = SkillTable.getInstance().getSkill(idval, player.getSkillLevel(idval));
if (skill != null) if (skill != null)
{ {
player.sendMessage("Admin removed the skill " + skill.getName() + "."); player.sendMessage("Admin removed the skill " + skill.getName() + ".");
@@ -1257,7 +1257,7 @@ public class AdminCommands extends Thread
{ {
final PlayerInstance activeChar = client.getActiveChar(); final PlayerInstance activeChar = client.getActiveChar();
final int skillid = Integer.parseInt(value); final int skillid = Integer.parseInt(value);
final Skill skill = SkillTable.getInstance().getInfo(skillid, 1); final Skill skill = SkillTable.getInstance().getSkill(skillid, 1);
if ((skill != null) && (skill.getTargetType() == 0)) if ((skill != null) && (skill.getTargetType() == 0))
{ {
activeChar.setTarget(activeChar); activeChar.setTarget(activeChar);
@@ -167,7 +167,7 @@ public class SkillTable
return skill; return skill;
} }
public Skill getInfo(int magicId, int level) public Skill getSkill(int magicId, int level)
{ {
return _skills.get((magicId * 100) + level); return _skills.get((magicId * 100) + level);
} }
@@ -44,7 +44,7 @@ public class ScrollOfEscape implements IItemHandler
activeChar.disableAllSkills(); activeChar.disableAllSkills();
activeChar.setTarget(activeChar); activeChar.setTarget(activeChar);
final Skill skill = SkillTable.getInstance().getInfo(1050, 1); final Skill skill = SkillTable.getInstance().getSkill(1050, 1);
final MagicSkillUser msk = new MagicSkillUser(activeChar, 1050, 1, 20000, 0); final MagicSkillUser msk = new MagicSkillUser(activeChar, 1050, 1, 20000, 0);
activeChar.sendPacket(msk); activeChar.sendPacket(msk);
activeChar.broadcastPacket(msk); activeChar.broadcastPacket(msk);
@@ -363,22 +363,22 @@ public class PlayerInstance extends Creature
final int lvl = getLevel(); final int lvl = getLevel();
if (lvl == 5) if (lvl == 5)
{ {
final Skill skill = SkillTable.getInstance().getInfo(194, 1); final Skill skill = SkillTable.getInstance().getSkill(194, 1);
removeSkill(skill); removeSkill(skill);
} }
else if (lvl == 20) else if (lvl == 20)
{ {
final Skill skill = SkillTable.getInstance().getInfo(239, 1); final Skill skill = SkillTable.getInstance().getSkill(239, 1);
addSkill(skill); addSkill(skill);
} }
else if (lvl == 40) else if (lvl == 40)
{ {
final Skill skill = SkillTable.getInstance().getInfo(239, 2); final Skill skill = SkillTable.getInstance().getSkill(239, 2);
addSkill(skill); addSkill(skill);
} }
else if (lvl == 52) else if (lvl == 52)
{ {
final Skill skill = SkillTable.getInstance().getInfo(239, 3); final Skill skill = SkillTable.getInstance().getSkill(239, 3);
addSkill(skill); addSkill(skill);
} }
} }
@@ -524,7 +524,7 @@ public class ClientThread extends Thread
final int id = Integer.parseInt(st.nextToken()); final int id = Integer.parseInt(st.nextToken());
final int level = Integer.parseInt(st.nextToken()); final int level = Integer.parseInt(st.nextToken());
st.nextToken(); st.nextToken();
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
cha.addSkill(skill); cha.addSkill(skill);
} }
lnr.close(); lnr.close();
@@ -149,7 +149,7 @@ public class CharacterCreate extends ClientBasePacket
newChar.setClanId(0); newChar.setClanId(0);
for (SkillLearn startSkill : SkillTreeTable.getInstance().getAvailableSkills(newChar)) for (SkillLearn startSkill : SkillTreeTable.getInstance().getAvailableSkills(newChar))
{ {
newChar.addSkill(SkillTable.getInstance().getInfo(startSkill.getId(), startSkill.getLevel())); newChar.addSkill(SkillTable.getInstance().getSkill(startSkill.getId(), startSkill.getLevel()));
} }
client.saveCharToDisk(newChar); client.saveCharToDisk(newChar);
client.getConnection().sendPacket(new CharSelectInfo(client.getLoginName(), client.getSessionId())); client.getConnection().sendPacket(new CharSelectInfo(client.getLoginName(), client.getSessionId()));
@@ -62,7 +62,7 @@ public class RequestAquireSkill extends ClientBasePacket
return; return;
} }
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
Collection<SkillLearn> skills = SkillTreeTable.getInstance().getAvailableSkills(player); Collection<SkillLearn> skills = SkillTreeTable.getInstance().getAvailableSkills(player);
int requiredSp = 0; int requiredSp = 0;
@@ -34,7 +34,7 @@ public class RequestAquireSkillInfo extends ClientBasePacket
final int level = readD(); final int level = readD();
final PlayerInstance activeChar = client.getActiveChar(); final PlayerInstance activeChar = client.getActiveChar();
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
int requiredSp = 0; int requiredSp = 0;
for (SkillLearn skill2 : SkillTreeTable.getInstance().getAvailableSkills(activeChar)) for (SkillLearn skill2 : SkillTreeTable.getInstance().getAvailableSkills(activeChar))
{ {
@@ -39,7 +39,7 @@ public class RequestMagicSkillUse extends ClientBasePacket
final PlayerInstance activeChar = client.getActiveChar(); final PlayerInstance activeChar = client.getActiveChar();
final int level = activeChar.getSkillLevel(magicId); final int level = activeChar.getSkillLevel(magicId);
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
activeChar.stopMove(); activeChar.stopMove();
@@ -92,7 +92,7 @@ public class HotSprings extends Quest
{ {
final Effect info = creature.getFirstEffect(diseaseId); final Effect info = creature.getFirstEffect(diseaseId);
final int skillLevel = (info == null) ? 1 : (info.getSkill().getLevel() < 10) ? info.getSkill().getLevel() + 1 : 10; final int skillLevel = (info == null) ? 1 : (info.getSkill().getLevel() < 10) ? info.getSkill().getLevel() + 1 : 10;
final Skill skill = SkillTable.getInstance().getInfo(diseaseId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(diseaseId, skillLevel);
if ((skill != null) && !npc.isCastingNow() && !npc.isSkillDisabled(skill)) if ((skill != null) && !npc.isCastingNow() && !npc.isSkillDisabled(skill))
{ {
npc.setTarget(creature); npc.setTarget(creature);
@@ -690,12 +690,12 @@ public class Antharas extends Quest
case 29074: case 29074:
case 29075: case 29075:
{ {
skill = SkillTable.getInstance().getInfo(5097, 1); skill = SkillTable.getInstance().getSkill(5097, 1);
break; break;
} }
case 29076: case 29076:
{ {
skill = SkillTable.getInstance().getInfo(5094, 1); skill = SkillTable.getInstance().getSkill(5094, 1);
break; break;
} }
} }
@@ -932,12 +932,12 @@ public class Antharas extends Quest
case 29074: case 29074:
case 29075: case 29075:
{ {
skill = SkillTable.getInstance().getInfo(5097, 1); skill = SkillTable.getInstance().getSkill(5097, 1);
break; break;
} }
case 29076: case 29076:
{ {
skill = SkillTable.getInstance().getInfo(5094, 1); skill = SkillTable.getInstance().getSkill(5094, 1);
break; break;
} }
} }
@@ -270,7 +270,7 @@ public class Baium extends Quest
else if (((_lastAttackVsBaiumTime + 300000) < System.currentTimeMillis()) && (npc.getCurrentHp() < ((npc.getMaxHp() * 3) / 4.0))) else if (((_lastAttackVsBaiumTime + 300000) < System.currentTimeMillis()) && (npc.getCurrentHp() < ((npc.getMaxHp() * 3) / 4.0)))
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4135, 1)); npc.doCast(SkillTable.getInstance().getSkill(4135, 1));
if (GrandBossManager.getInstance().getBossStatus(LIVE_BAIUM) != AWAKE) if (GrandBossManager.getInstance().getBossStatus(LIVE_BAIUM) != AWAKE)
{ {
cancelQuestTimer("baium_despawn", npc, null); cancelQuestTimer("baium_despawn", npc, null);
@@ -398,7 +398,7 @@ public class Baium extends Quest
if (sk4258 == 0) if (sk4258 == 0)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4258, 1)); npc.doCast(SkillTable.getInstance().getSkill(4258, 1));
} }
} }
// update a variable with the last action against baium // update a variable with the last action against baium
@@ -500,7 +500,7 @@ public class Baium extends Quest
_target = getRandomTarget(npc); _target = getRandomTarget(npc);
if (_target != null) if (_target != null)
{ {
_skill = SkillTable.getInstance().getInfo(getRandomSkill(npc), 1); _skill = SkillTable.getInstance().getSkill(getRandomSkill(npc), 1);
} }
} }
@@ -508,7 +508,7 @@ public class Baium extends Quest
Skill skill = _skill; Skill skill = _skill;
if (skill == null) if (skill == null)
{ {
skill = SkillTable.getInstance().getInfo(getRandomSkill(npc), 1); skill = SkillTable.getInstance().getSkill(getRandomSkill(npc), 1);
} }
if ((target == null) || target.isDead() || !(_zone.isInsideZone(target))) if ((target == null) || target.isDead() || !(_zone.isInsideZone(target)))
{ {
@@ -217,7 +217,7 @@ public class Orfen extends Quest
{ {
attacker.teleToLocation(npc.getX(), npc.getY(), npc.getZ()); attacker.teleToLocation(npc.getX(), npc.getY(), npc.getZ());
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4064, 1)); npc.doCast(SkillTable.getInstance().getSkill(4064, 1));
} }
} }
else else
@@ -304,8 +304,8 @@ public class QueenAnt extends Quest
{ {
getIntoPosition(nurse, _larva); getIntoPosition(nurse, _larva);
nurse.setTarget(_larva); nurse.setTarget(_larva);
nurse.doCast(SkillTable.getInstance().getInfo(4020, 1)); nurse.doCast(SkillTable.getInstance().getSkill(4020, 1));
nurse.doCast(SkillTable.getInstance().getInfo(4024, 1)); nurse.doCast(SkillTable.getInstance().getSkill(4024, 1));
} }
continue; continue;
} }
@@ -315,7 +315,7 @@ public class QueenAnt extends Quest
{ {
getIntoPosition(nurse, _queen); getIntoPosition(nurse, _queen);
nurse.setTarget(_queen); nurse.setTarget(_queen);
nurse.doCast(SkillTable.getInstance().getInfo(4020, 1)); nurse.doCast(SkillTable.getInstance().getSkill(4020, 1));
} }
continue; continue;
} }
@@ -325,7 +325,7 @@ public class QueenAnt extends Quest
{ {
getIntoPosition(_nurses.get(k), nurse); getIntoPosition(_nurses.get(k), nurse);
_nurses.get(k).setTarget(nurse); _nurses.get(k).setTarget(nurse);
_nurses.get(k).doCast(SkillTable.getInstance().getInfo(4020, 1)); _nurses.get(k).doCast(SkillTable.getInstance().getSkill(4020, 1));
} }
} }
if (notCasting && (nurse.getTarget() != null)) if (notCasting && (nurse.getTarget() != null))
@@ -193,7 +193,7 @@ public class Valakas extends Quest
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 4))) if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 4)))
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4691, 4)); npc.doCast(SkillTable.getInstance().getSkill(4691, 4));
} }
} }
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 2) / 4.0)) else if (npc.getCurrentHp() > ((npc.getMaxHp() * 2) / 4.0))
@@ -201,7 +201,7 @@ public class Valakas extends Quest
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 3))) if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 3)))
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4691, 3)); npc.doCast(SkillTable.getInstance().getSkill(4691, 3));
} }
} }
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 3) / 4.0)) else if (npc.getCurrentHp() > ((npc.getMaxHp() * 3) / 4.0))
@@ -209,13 +209,13 @@ public class Valakas extends Quest
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 2))) if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 2)))
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4691, 2)); npc.doCast(SkillTable.getInstance().getSkill(4691, 2));
} }
} }
else if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 1))) else if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 1)))
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4691, 1)); npc.doCast(SkillTable.getInstance().getSkill(4691, 1));
} }
} }
else if (event.equals("launch_random_skill")) else if (event.equals("launch_random_skill"))
@@ -389,7 +389,7 @@ public class Valakas extends Quest
if (sk4258 == 0) if (sk4258 == 0)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4258, 1)); npc.doCast(SkillTable.getInstance().getSkill(4258, 1));
} }
} }
if (attacker.getZ() < (npc.getZ() + 200)) if (attacker.getZ() < (npc.getZ() + 200))
@@ -415,7 +415,7 @@ public class Valakas extends Quest
i_ai3 = 0; i_ai3 = 0;
i_ai4 = 0; i_ai4 = 0;
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4687, 1)); npc.doCast(SkillTable.getInstance().getSkill(4687, 1));
i_quest0 = 1; i_quest0 = 1;
} }
} }
@@ -687,45 +687,45 @@ public class Valakas extends Quest
{ {
if (Rnd.get(100) < 20) if (Rnd.get(100) < 20)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 15) else if (Rnd.get(100) < 15)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else if ((Rnd.get(100) < 15) && (i0 == 1) && (i_quest0 == 1)) else if ((Rnd.get(100) < 15) && (i0 == 1) && (i_quest0 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4685, 1); skill = SkillTable.getInstance().getSkill(4685, 1);
i_quest0 = 0; i_quest0 = 0;
} }
else if ((Rnd.get(100) < 10) && (i1 == 1)) else if ((Rnd.get(100) < 10) && (i1 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4688, 1); skill = SkillTable.getInstance().getSkill(4688, 1);
} }
else if (Rnd.get(100) < 35) else if (Rnd.get(100) < 35)
{ {
skill = SkillTable.getInstance().getInfo(4683, 1); skill = SkillTable.getInstance().getSkill(4683, 1);
} }
else if (Rnd.nextBoolean()) else if (Rnd.nextBoolean())
{ {
skill = SkillTable.getInstance().getInfo(4681, 1); // left hand skill = SkillTable.getInstance().getSkill(4681, 1); // left hand
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4682, 1); // right hand skill = SkillTable.getInstance().getSkill(4682, 1); // right hand
} }
} }
else if (Rnd.get(100) < 20) else if (Rnd.get(100) < 20)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 15) else if (Rnd.get(100) < 15)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4684, 1); skill = SkillTable.getInstance().getSkill(4684, 1);
} }
} }
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 2) / 4)) else if (npc.getCurrentHp() > ((npc.getMaxHp() * 2) / 4))
@@ -741,45 +741,45 @@ public class Valakas extends Quest
{ {
if (Rnd.get(100) < 5) if (Rnd.get(100) < 5)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 10) else if (Rnd.get(100) < 10)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else if ((Rnd.get(100) < 10) && (i0 == 1) && (i_quest0 == 1)) else if ((Rnd.get(100) < 10) && (i0 == 1) && (i_quest0 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4685, 1); skill = SkillTable.getInstance().getSkill(4685, 1);
i_quest0 = 0; i_quest0 = 0;
} }
else if ((Rnd.get(100) < 10) && (i1 == 1)) else if ((Rnd.get(100) < 10) && (i1 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4688, 1); skill = SkillTable.getInstance().getSkill(4688, 1);
} }
else if (Rnd.get(100) < 20) else if (Rnd.get(100) < 20)
{ {
skill = SkillTable.getInstance().getInfo(4683, 1); skill = SkillTable.getInstance().getSkill(4683, 1);
} }
else if (Rnd.nextBoolean()) else if (Rnd.nextBoolean())
{ {
skill = SkillTable.getInstance().getInfo(4681, 1); // left hand skill = SkillTable.getInstance().getSkill(4681, 1); // left hand
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4682, 1); // right hand skill = SkillTable.getInstance().getSkill(4682, 1); // right hand
} }
} }
else if (Rnd.get(100) < 5) else if (Rnd.get(100) < 5)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 10) else if (Rnd.get(100) < 10)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4684, 1); skill = SkillTable.getInstance().getSkill(4684, 1);
} }
} }
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 3) / 4.0)) else if (npc.getCurrentHp() > ((npc.getMaxHp() * 3) / 4.0))
@@ -795,45 +795,45 @@ public class Valakas extends Quest
{ {
if (Rnd.get(100) < 0) if (Rnd.get(100) < 0)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 5) else if (Rnd.get(100) < 5)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else if ((Rnd.get(100) < 5) && (i0 == 1) && (i_quest0 == 1)) else if ((Rnd.get(100) < 5) && (i0 == 1) && (i_quest0 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4685, 1); skill = SkillTable.getInstance().getSkill(4685, 1);
i_quest0 = 0; i_quest0 = 0;
} }
else if ((Rnd.get(100) < 10) && (i1 == 1)) else if ((Rnd.get(100) < 10) && (i1 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4688, 1); skill = SkillTable.getInstance().getSkill(4688, 1);
} }
else if (Rnd.get(100) < 15) else if (Rnd.get(100) < 15)
{ {
skill = SkillTable.getInstance().getInfo(4683, 1); skill = SkillTable.getInstance().getSkill(4683, 1);
} }
else if (Rnd.nextBoolean()) else if (Rnd.nextBoolean())
{ {
skill = SkillTable.getInstance().getInfo(4681, 1); // left hand skill = SkillTable.getInstance().getSkill(4681, 1); // left hand
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4682, 1); // right hand skill = SkillTable.getInstance().getSkill(4682, 1); // right hand
} }
} }
else if (Rnd.get(100) < 0) else if (Rnd.get(100) < 0)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 5) else if (Rnd.get(100) < 5)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4684, 1); skill = SkillTable.getInstance().getSkill(4684, 1);
} }
} }
else else
@@ -849,45 +849,45 @@ public class Valakas extends Quest
{ {
if (Rnd.get(100) < 0) if (Rnd.get(100) < 0)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 10) else if (Rnd.get(100) < 10)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else if ((Rnd.get(100) < 5) && (i0 == 1) && (i_quest0 == 1)) else if ((Rnd.get(100) < 5) && (i0 == 1) && (i_quest0 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4685, 1); skill = SkillTable.getInstance().getSkill(4685, 1);
i_quest0 = 0; i_quest0 = 0;
} }
else if ((Rnd.get(100) < 10) && (i1 == 1)) else if ((Rnd.get(100) < 10) && (i1 == 1))
{ {
skill = SkillTable.getInstance().getInfo(4688, 1); skill = SkillTable.getInstance().getSkill(4688, 1);
} }
else if (Rnd.get(100) < 15) else if (Rnd.get(100) < 15)
{ {
skill = SkillTable.getInstance().getInfo(4683, 1); skill = SkillTable.getInstance().getSkill(4683, 1);
} }
else if (Rnd.nextBoolean()) else if (Rnd.nextBoolean())
{ {
skill = SkillTable.getInstance().getInfo(4681, 1); // left hand skill = SkillTable.getInstance().getSkill(4681, 1); // left hand
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4682, 1); // right hand skill = SkillTable.getInstance().getSkill(4682, 1); // right hand
} }
} }
else if (Rnd.get(100) < 0) else if (Rnd.get(100) < 0)
{ {
skill = SkillTable.getInstance().getInfo(4690, 1); skill = SkillTable.getInstance().getSkill(4690, 1);
} }
else if (Rnd.get(100) < 10) else if (Rnd.get(100) < 10)
{ {
skill = SkillTable.getInstance().getInfo(4689, 1); skill = SkillTable.getInstance().getSkill(4689, 1);
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(4684, 1); skill = SkillTable.getInstance().getSkill(4684, 1);
} }
} }
} }
@@ -231,7 +231,7 @@ public class Zaken extends Quest
if (sk4223 == 1) // use night face if zaken have day face if (sk4223 == 1) // use night face if zaken have day face
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4224, 1)); npc.doCast(SkillTable.getInstance().getSkill(4224, 1));
_ai1 = npc.getX(); _ai1 = npc.getX();
_ai2 = npc.getY(); _ai2 = npc.getY();
_ai3 = npc.getZ(); _ai3 = npc.getZ();
@@ -239,7 +239,7 @@ public class Zaken extends Quest
if (sk4227 == 0) // use zaken regeneration if (sk4227 == 0) // use zaken regeneration
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4227, 1)); npc.doCast(SkillTable.getInstance().getSkill(4227, 1));
} }
if ((npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK) && (_ai0 == 0)) if ((npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK) && (_ai0 == 0))
{ {
@@ -362,7 +362,7 @@ public class Zaken extends Quest
_ai2 = Y_COORDS[i2] + Rnd.get(650); _ai2 = Y_COORDS[i2] + Rnd.get(650);
_ai3 = Z_COORDS[i2]; _ai3 = Z_COORDS[i2];
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4222, 1)); npc.doCast(SkillTable.getInstance().getSkill(4222, 1));
} }
} }
} }
@@ -411,13 +411,13 @@ public class Zaken extends Quest
else if (sk4223 == 0) // use day face if not night time else if (sk4223 == 0) // use day face if not night time
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4223, 1)); npc.doCast(SkillTable.getInstance().getSkill(4223, 1));
_quest2 = 3; _quest2 = 3;
} }
if (sk4227 == 1) // when switching to day time, cancel zaken night regen if (sk4227 == 1) // when switching to day time, cancel zaken night regen
{ {
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4242, 1)); npc.doCast(SkillTable.getInstance().getSkill(4242, 1));
} }
if (Rnd.get(40) < 1) if (Rnd.get(40) < 1)
{ {
@@ -426,7 +426,7 @@ public class Zaken extends Quest
_ai2 = Y_COORDS[i2] + Rnd.get(650); _ai2 = Y_COORDS[i2] + Rnd.get(650);
_ai3 = Z_COORDS[i2]; _ai3 = Z_COORDS[i2];
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4222, 1)); npc.doCast(SkillTable.getInstance().getSkill(4222, 1));
} }
startQuestTimer("1001", 30000, npc, null); startQuestTimer("1001", 30000, npc, null);
break; break;
@@ -434,7 +434,7 @@ public class Zaken extends Quest
case "1002": case "1002":
{ {
_quest0 = 0; _quest0 = 0;
npc.doCast(SkillTable.getInstance().getInfo(4222, 1)); npc.doCast(SkillTable.getInstance().getSkill(4222, 1));
_ai0 = 0; _ai0 = 0;
break; break;
} }
@@ -767,7 +767,7 @@ public class Zaken extends Quest
if (sk4258 == 0) if (sk4258 == 0)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4258, 1)); npc.doCast(SkillTable.getInstance().getSkill(4258, 1));
} }
} }
final Creature originalAttacker = isPet ? attacker.getPet() : attacker; final Creature originalAttacker = isPet ? attacker.getPet() : attacker;
@@ -779,22 +779,22 @@ public class Zaken extends Quest
if (i0 < 1) if (i0 < 1)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4216, 1)); npc.doCast(SkillTable.getInstance().getSkill(4216, 1));
} }
else if (i0 < 2) else if (i0 < 2)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4217, 1)); npc.doCast(SkillTable.getInstance().getSkill(4217, 1));
} }
else if (i0 < 4) else if (i0 < 4)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4219, 1)); npc.doCast(SkillTable.getInstance().getSkill(4219, 1));
} }
else if (i0 < 8) else if (i0 < 8)
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4218, 1)); npc.doCast(SkillTable.getInstance().getSkill(4218, 1));
} }
else if (i0 < 15) else if (i0 < 15)
{ {
@@ -807,14 +807,14 @@ public class Zaken extends Quest
if (attacker != ((Attackable) npc).getMostHated()) if (attacker != ((Attackable) npc).getMostHated())
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4221, 1)); npc.doCast(SkillTable.getInstance().getSkill(4221, 1));
} }
} }
} }
if (Rnd.nextBoolean() && (attacker == ((Attackable) npc).getMostHated())) if (Rnd.nextBoolean() && (attacker == ((Attackable) npc).getMostHated()))
{ {
npc.setTarget(attacker); npc.setTarget(attacker);
npc.doCast(SkillTable.getInstance().getInfo(4220, 1)); npc.doCast(SkillTable.getInstance().getSkill(4220, 1));
} }
} }
if ((getTimeHour() >= 5) && (npc.getCurrentHp() < ((npc.getMaxHp() * _quest2) / 4.0))) if ((getTimeHour() >= 5) && (npc.getCurrentHp() < ((npc.getMaxHp() * _quest2) / 4.0)))
@@ -825,7 +825,7 @@ public class Zaken extends Quest
_ai2 = Y_COORDS[i2] + Rnd.get(650); _ai2 = Y_COORDS[i2] + Rnd.get(650);
_ai3 = Z_COORDS[i2]; _ai3 = Z_COORDS[i2];
npc.setTarget(npc); npc.setTarget(npc);
npc.doCast(SkillTable.getInstance().getInfo(4222, 1)); npc.doCast(SkillTable.getInstance().getSkill(4222, 1));
} }
} }
return super.onAttack(npc, attacker, damage, isPet); return super.onAttack(npc, attacker, damage, isPet);
@@ -900,22 +900,22 @@ public class Zaken extends Quest
if (i0 < 1) if (i0 < 1)
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4216, 1)); npc.doCast(SkillTable.getInstance().getSkill(4216, 1));
} }
else if (i0 < 2) else if (i0 < 2)
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4217, 1)); npc.doCast(SkillTable.getInstance().getSkill(4217, 1));
} }
else if (i0 < 4) else if (i0 < 4)
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4219, 1)); npc.doCast(SkillTable.getInstance().getSkill(4219, 1));
} }
else if (i0 < 8) else if (i0 < 8)
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4218, 1)); npc.doCast(SkillTable.getInstance().getSkill(4218, 1));
} }
else if (i0 < 15) else if (i0 < 15)
{ {
@@ -928,14 +928,14 @@ public class Zaken extends Quest
if (player != ((Attackable) npc).getMostHated()) if (player != ((Attackable) npc).getMostHated())
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4221, 1)); npc.doCast(SkillTable.getInstance().getSkill(4221, 1));
} }
} }
} }
if (Rnd.nextBoolean() && (player == ((Attackable) npc).getMostHated())) if (Rnd.nextBoolean() && (player == ((Attackable) npc).getMostHated()))
{ {
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4220, 1)); npc.doCast(SkillTable.getInstance().getSkill(4220, 1));
} }
} }
} }
@@ -42,7 +42,7 @@ public class AncientEgg extends Quest
public String onAttack(NpcInstance npc, PlayerInstance attacker, int damage, boolean isPet) public String onAttack(NpcInstance npc, PlayerInstance attacker, int damage, boolean isPet)
{ {
attacker.setTarget(attacker); attacker.setTarget(attacker);
attacker.doCast(SkillTable.getInstance().getInfo(SIGNAL, 1)); attacker.doCast(SkillTable.getInstance().getSkill(SIGNAL, 1));
return null; return null;
} }
@@ -83,7 +83,7 @@ public class Monastery extends Quest
case 22124: case 22124:
case 22126: case 22126:
{ {
final Skill skill = SkillTable.getInstance().getInfo(4589, 8); final Skill skill = SkillTable.getInstance().getSkill(4589, 8);
npc.doCast(skill); npc.doCast(skill);
break; break;
} }
@@ -139,7 +139,7 @@ public class Monastery extends Quest
case 22126: case 22126:
case 22127: case 22127:
{ {
final Skill skill = SkillTable.getInstance().getInfo(4589, 8); final Skill skill = SkillTable.getInstance().getSkill(4589, 8);
npc.doCast(skill); npc.doCast(skill);
break; break;
} }
@@ -115,7 +115,7 @@ public class KetraOrcSupport extends Quest
// Haste: Requires 6 Buffalo Horns // Haste: Requires 6 Buffalo Horns
}; };
private static final Skill VARKA_KETRA_PETRIFICATION = SkillTable.getInstance().getInfo(4578, 1); private static final Skill VARKA_KETRA_PETRIFICATION = SkillTable.getInstance().getSkill(4578, 1);
/** /**
* Names of missions which will be automatically dropped if the alliance is broken. * Names of missions which will be automatically dropped if the alliance is broken.
@@ -163,7 +163,7 @@ public class KetraOrcSupport extends Quest
htmltext = "31372-4.htm"; htmltext = "31372-4.htm";
st.takeItems(HORN, buffInfo[1]); st.takeItems(HORN, buffInfo[1]);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(buffInfo[0], 1)); npc.doCast(SkillTable.getInstance().getSkill(buffInfo[0], 1));
npc.setCurrentHpMp(npc.getMaxHp(), npc.getMaxMp()); npc.setCurrentHpMp(npc.getMaxHp(), npc.getMaxMp());
} }
} }
@@ -114,7 +114,7 @@ public class VarkaSilenosSupport extends Quest
// Haste: Requires 6 Nepenthese Seeds // Haste: Requires 6 Nepenthese Seeds
}; };
private static final Skill VARKA_KETRA_PETRIFICATION = SkillTable.getInstance().getInfo(4578, 1); private static final Skill VARKA_KETRA_PETRIFICATION = SkillTable.getInstance().getSkill(4578, 1);
/** /**
* Names of missions which will be automatically dropped if the alliance is broken. * Names of missions which will be automatically dropped if the alliance is broken.
@@ -162,7 +162,7 @@ public class VarkaSilenosSupport extends Quest
htmltext = "31379-4.htm"; htmltext = "31379-4.htm";
st.takeItems(SEED, buffInfo[1]); st.takeItems(SEED, buffInfo[1]);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(buffInfo[0], 1)); npc.doCast(SkillTable.getInstance().getSkill(buffInfo[0], 1));
npc.setCurrentHpMp(npc.getMaxHp(), npc.getMaxMp()); npc.setCurrentHpMp(npc.getMaxHp(), npc.getMaxMp());
} }
} }
@@ -247,7 +247,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_1, 1); // give Starting Crystal st.giveItems(CRYSTAL_OF_PROGRESS_1, 1); // give Starting Crystal
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
// CAMONIELL // CAMONIELL
else if (event.equals("30636-02.htm")) else if (event.equals("30636-02.htm"))
@@ -267,7 +267,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_2, 1); st.giveItems(CRYSTAL_OF_PROGRESS_2, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
// BELTHUS // BELTHUS
else if (event.equals("30637-02.htm")) else if (event.equals("30637-02.htm"))
@@ -287,7 +287,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_3, 1); st.giveItems(CRYSTAL_OF_PROGRESS_3, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
// BASILLA // BASILLA
else if (event.equals("30638-02.htm")) else if (event.equals("30638-02.htm"))
@@ -307,7 +307,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_4, 1); st.giveItems(CRYSTAL_OF_PROGRESS_4, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
// CELESTIEL // CELESTIEL
else if (event.equals("30639-02.htm")) else if (event.equals("30639-02.htm"))
@@ -327,7 +327,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_5, 1); st.giveItems(CRYSTAL_OF_PROGRESS_5, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
// BRYNTHEA // BRYNTHEA
else if (event.equals("30640-02.htm")) else if (event.equals("30640-02.htm"))
@@ -347,7 +347,7 @@ public class Q230_TestOfTheSummoner extends Quest
st.giveItems(CRYSTAL_OF_PROGRESS_6, 1); st.giveItems(CRYSTAL_OF_PROGRESS_6, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(SkillTable.getInstance().getInfo(4126, 1)); npc.doCast(SkillTable.getInstance().getSkill(4126, 1));
} }
return htmltext; return htmltext;
@@ -148,7 +148,7 @@ public class Q365_DevilsLegacy extends Quest
htmltext = "30092-06.htm"; htmltext = "30092-06.htm";
// Curse effect ! // Curse effect !
final Skill skill = SkillTable.getInstance().getInfo(4082, 1); final Skill skill = SkillTable.getInstance().getSkill(4082, 1);
if ((skill != null) && (player.getFirstEffect(skill) == null)) if ((skill != null) && (player.getFirstEffect(skill) == null))
{ {
skill.getEffects(npc, player); skill.getEffects(npc, player);
@@ -233,7 +233,7 @@ public class Q421_LittleWingsBigAdventure extends Quest
// Curse if the registered objectId is the wrong one (switch flutes). // Curse if the registered objectId is the wrong one (switch flutes).
htmltext = "30747-18.htm"; htmltext = "30747-18.htm";
final Skill skill = SkillTable.getInstance().getInfo(4167, 1); final Skill skill = SkillTable.getInstance().getSkill(4167, 1);
if ((skill != null) && (player.getFirstEffect(skill) == null)) if ((skill != null) && (player.getFirstEffect(skill) == null))
{ {
skill.getEffects(npc, player); skill.getEffects(npc, player);
@@ -309,7 +309,7 @@ public class Q421_LittleWingsBigAdventure extends Quest
// Tree curses the killer. // Tree curses the killer.
if ((Rnd.get(100) < 30) && (originalKiller != null)) if ((Rnd.get(100) < 30) && (originalKiller != null))
{ {
final Skill skill = SkillTable.getInstance().getInfo(4243, 1); final Skill skill = SkillTable.getInstance().getSkill(4243, 1);
if ((skill != null) && (originalKiller.getFirstEffect(skill) == null)) if ((skill != null) && (originalKiller.getFirstEffect(skill) == null))
{ {
skill.getEffects(npc, originalKiller); skill.getEffects(npc, originalKiller);
@@ -169,7 +169,7 @@ public class Q501_ProofOfClanAlliance extends Quest
st.takeItems(SYMBOL_OF_LOYALTY, 1); st.takeItems(SYMBOL_OF_LOYALTY, 1);
st.takeItems(SYMBOL_OF_LOYALTY, 1); st.takeItems(SYMBOL_OF_LOYALTY, 1);
st.giveItems(ANTIDOTE_RECIPE_LIST, 1); st.giveItems(ANTIDOTE_RECIPE_LIST, 1);
SkillTable.getInstance().getInfo(4082, 1).getEffects(npc, player); SkillTable.getInstance().getSkill(4082, 1).getEffects(npc, player);
startQuestTimer("poison", 60000, npc, player, true); startQuestTimer("poison", 60000, npc, player, true);
st.playSound(QuestState.SOUND_MIDDLE); st.playSound(QuestState.SOUND_MIDDLE);
} }
@@ -521,7 +521,7 @@ public class Q501_ProofOfClanAlliance extends Quest
public void castSkill(NpcInstance npc, PlayerInstance player, int skillId) public void castSkill(NpcInstance npc, PlayerInstance player, int skillId)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, 1); final Skill skill = SkillTable.getInstance().getSkill(skillId, 1);
npc.setTarget(player); npc.setTarget(player);
npc.doCast(skill); npc.doCast(skill);
} }
@@ -36,11 +36,11 @@ public class HeroSkillTable
private HeroSkillTable() private HeroSkillTable()
{ {
HERO_SKILLS = new Skill[5]; HERO_SKILLS = new Skill[5];
HERO_SKILLS[0] = SkillTable.getInstance().getInfo(395, 1); HERO_SKILLS[0] = SkillTable.getInstance().getSkill(395, 1);
HERO_SKILLS[1] = SkillTable.getInstance().getInfo(396, 1); HERO_SKILLS[1] = SkillTable.getInstance().getSkill(396, 1);
HERO_SKILLS[2] = SkillTable.getInstance().getInfo(1374, 1); HERO_SKILLS[2] = SkillTable.getInstance().getSkill(1374, 1);
HERO_SKILLS[3] = SkillTable.getInstance().getInfo(1375, 1); HERO_SKILLS[3] = SkillTable.getInstance().getSkill(1375, 1);
HERO_SKILLS[4] = SkillTable.getInstance().getInfo(1376, 1); HERO_SKILLS[4] = SkillTable.getInstance().getSkill(1376, 1);
} }
public static Skill[] getHeroSkills() public static Skill[] getHeroSkills()
@@ -28,14 +28,14 @@ public class NobleSkillTable
private NobleSkillTable() private NobleSkillTable()
{ {
_nobleSkills = new Skill[8]; _nobleSkills = new Skill[8];
_nobleSkills[0] = SkillTable.getInstance().getInfo(1323, 1); _nobleSkills[0] = SkillTable.getInstance().getSkill(1323, 1);
_nobleSkills[1] = SkillTable.getInstance().getInfo(325, 1); _nobleSkills[1] = SkillTable.getInstance().getSkill(325, 1);
_nobleSkills[2] = SkillTable.getInstance().getInfo(326, 1); _nobleSkills[2] = SkillTable.getInstance().getSkill(326, 1);
_nobleSkills[3] = SkillTable.getInstance().getInfo(327, 1); _nobleSkills[3] = SkillTable.getInstance().getSkill(327, 1);
_nobleSkills[4] = SkillTable.getInstance().getInfo(1324, 1); _nobleSkills[4] = SkillTable.getInstance().getSkill(1324, 1);
_nobleSkills[5] = SkillTable.getInstance().getInfo(1325, 1); _nobleSkills[5] = SkillTable.getInstance().getSkill(1325, 1);
_nobleSkills[6] = SkillTable.getInstance().getInfo(1326, 1); _nobleSkills[6] = SkillTable.getInstance().getSkill(1326, 1);
_nobleSkills[7] = SkillTable.getInstance().getInfo(1327, 1); _nobleSkills[7] = SkillTable.getInstance().getSkill(1327, 1);
} }
public Skill[] GetNobleSkills() public Skill[] GetNobleSkills()
@@ -65,7 +65,7 @@ public class SkillTable
return (skillId * 256) + skillLevel; return (skillId * 256) + skillLevel;
} }
public Skill getInfo(int skillId, int level) public Skill getSkill(int skillId, int level)
{ {
return _skills.get(getSkillHashCode(skillId, level)); return _skills.get(getSkillHashCode(skillId, level));
} }
@@ -111,7 +111,7 @@ public class NpcTable
continue; continue;
} }
npcSkill = SkillTable.getInstance().getInfo(skillId, level); npcSkill = SkillTable.getInstance().getSkill(skillId, level);
if (npcSkill == null) if (npcSkill == null)
{ {
continue; continue;
@@ -619,7 +619,7 @@ public class SkillTreeTable
{ {
for (SkillLearn s : learnable) for (SkillLearn s : learnable)
{ {
final Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel()); final Skill sk = SkillTable.getInstance().getSkill(s.getId(), s.getLevel());
if ((sk == null) || ((sk.getId() == Skill.SKILL_DIVINE_INSPIRATION) && !Config.AUTO_LEARN_DIVINE_INSPIRATION && !player.isGM())) if ((sk == null) || ((sk.getId() == Skill.SKILL_DIVINE_INSPIRATION) && !Config.AUTO_LEARN_DIVINE_INSPIRATION && !player.isGM()))
{ {
unLearnable++; unLearnable++;
@@ -381,7 +381,7 @@ public abstract class DocumentBase
lvl = Integer.decode(getValue(attrs.getNamedItem("lvl").getNodeValue(), template)); lvl = Integer.decode(getValue(attrs.getNamedItem("lvl").getNodeValue(), template));
} }
final Skill skill = SkillTable.getInstance().getInfo(id, lvl); final Skill skill = SkillTable.getInstance().getSkill(id, lvl);
if (attrs.getNamedItem("chance") != null) if (attrs.getNamedItem("chance") != null)
{ {
if ((template instanceof Weapon) || (template instanceof Item)) if ((template instanceof Weapon) || (template instanceof Item))
@@ -1463,7 +1463,7 @@ public class AdminEditNpc implements IAdminCommandHandler
if (skillData.next()) if (skillData.next())
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillData.getInt("skillid"), skillData.getInt("level")); final Skill skill = SkillTable.getInstance().getSkill(skillData.getInt("skillid"), skillData.getInt("level"));
replyMSG.append("<table>"); replyMSG.append("<table>");
replyMSG.append("<tr><td>NPC</td><td>" + NpcTable.getInstance().getTemplate(skillData.getInt("npcid")).getName() + "</td></tr>"); replyMSG.append("<tr><td>NPC</td><td>" + NpcTable.getInstance().getTemplate(skillData.getInt("npcid")).getName() + "</td></tr>");
replyMSG.append("<tr><td>SKILL</td><td>" + skill.getName() + "(" + skillData.getInt("skillid") + ")</td></tr>"); replyMSG.append("<tr><td>SKILL</td><td>" + skill.getName() + "(" + skillData.getInt("skillid") + ")</td></tr>");
@@ -1491,7 +1491,7 @@ public class AdminEditNpc implements IAdminCommandHandler
private void updateNpcSkillData(PlayerInstance activeChar, int npcId, int skillId, int level) private void updateNpcSkillData(PlayerInstance activeChar, int npcId, int skillId, int level)
{ {
final Skill skillData = SkillTable.getInstance().getInfo(skillId, level); final Skill skillData = SkillTable.getInstance().getSkill(skillId, level);
if (skillData == null) if (skillData == null)
{ {
final NpcHtmlMessage adminReply = new NpcHtmlMessage(5); final NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
@@ -1560,7 +1560,7 @@ public class AdminEditNpc implements IAdminCommandHandler
private void addNpcSkillData(PlayerInstance activeChar, int npcId, int skillId, int level) private void addNpcSkillData(PlayerInstance activeChar, int npcId, int skillId, int level)
{ {
// skill check // skill check
final Skill skillData = SkillTable.getInstance().getInfo(skillId, level); final Skill skillData = SkillTable.getInstance().getSkill(skillId, level);
if (skillData == null) if (skillData == null)
{ {
final NpcHtmlMessage adminReply = new NpcHtmlMessage(5); final NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
@@ -1648,7 +1648,7 @@ public class AdminEditNpc implements IAdminCommandHandler
{ {
final int idval = skillDataList.getInt("skillid"); final int idval = skillDataList.getInt("skillid");
final int levelval = skillDataList.getInt("level"); final int levelval = skillDataList.getInt("level");
skillData = SkillTable.getInstance().getInfo(idval, levelval); skillData = SkillTable.getInstance().getSkill(idval, levelval);
if (skillData != null) if (skillData != null)
{ {
npcData.addSkill(skillData); npcData.addSkill(skillData);
@@ -71,7 +71,7 @@ public class AdminGmSpeed implements IAdminCommandHandler
} }
else if ((val >= 1) && (val <= 4)) else if ((val >= 1) && (val <= 4))
{ {
final Skill gmSpeedSkill = SkillTable.getInstance().getInfo(SUPER_HASTE_ID, val); final Skill gmSpeedSkill = SkillTable.getInstance().getSkill(SUPER_HASTE_ID, val);
player.doCast(gmSpeedSkill); player.doCast(gmSpeedSkill);
} }
} }
@@ -50,7 +50,7 @@ public class AdminRideWyvern implements IAdminCommandHandler
petRideId = 12621; petRideId = 12621;
// Add skill Wyvern Breath // Add skill Wyvern Breath
activeChar.addSkill(SkillTable.getInstance().getInfo(4289, 1)); activeChar.addSkill(SkillTable.getInstance().getSkill(4289, 1));
activeChar.sendSkillList(); activeChar.sendSkillList();
} }
else if (command.startsWith("admin_ride_strider")) else if (command.startsWith("admin_ride_strider"))
@@ -197,7 +197,7 @@ public class AdminSkill implements IAdminCommandHandler
{ {
for (SkillLearn s : skills) for (SkillLearn s : skills)
{ {
final Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel()); final Skill sk = SkillTable.getInstance().getSkill(s.getId(), s.getLevel());
if ((sk == null) || !sk.getCanLearn(player.getClassId())) if ((sk == null) || !sk.getCanLearn(player.getClassId()))
{ {
if (countUnlearnable) if (countUnlearnable)
@@ -460,7 +460,7 @@ public class AdminSkill implements IAdminCommandHandler
final String level = st.nextToken(); final String level = st.nextToken();
final int idval = Integer.parseInt(id); final int idval = Integer.parseInt(id);
final int levelval = Integer.parseInt(level); final int levelval = Integer.parseInt(level);
skill = SkillTable.getInstance().getInfo(idval, levelval); skill = SkillTable.getInstance().getSkill(idval, levelval);
} }
catch (Exception e) catch (Exception e)
{ {
@@ -498,7 +498,7 @@ public class AdminSkill implements IAdminCommandHandler
return; return;
} }
final Skill skill = SkillTable.getInstance().getInfo(idval, player.getSkillLevel(idval)); final Skill skill = SkillTable.getInstance().getSkill(idval, player.getSkillLevel(idval));
if (skill != null) if (skill != null)
{ {
final String skillname = skill.getName(); final String skillname = skill.getName();
@@ -549,7 +549,7 @@ public class AdminSkill implements IAdminCommandHandler
return; return;
} }
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
if (skill != null) if (skill != null)
{ {
final String skillname = skill.getName(); final String skillname = skill.getName();
@@ -63,7 +63,7 @@ public class AdminSuperHaste implements IAdminCommandHandler
} }
else if ((val >= 1) && (val <= 4)) else if ((val >= 1) && (val <= 4))
{ {
final Skill gmSpeedSkill = SkillTable.getInstance().getInfo(SUPER_HASTE_ID, val); final Skill gmSpeedSkill = SkillTable.getInstance().getSkill(SUPER_HASTE_ID, val);
player.doCast(gmSpeedSkill); player.doCast(gmSpeedSkill);
} }
} }
@@ -72,7 +72,7 @@ public class AdminTest implements IAdminCommandHandler
final Creature target = (Creature) activeChar.getTarget(); final Creature target = (Creature) activeChar.getTarget();
BuilderUtil.sendSysMessage(activeChar, "cast"); BuilderUtil.sendSysMessage(activeChar, "cast");
final Skill skill = SkillTable.getInstance().getInfo(1085, 3); final Skill skill = SkillTable.getInstance().getSkill(1085, 3);
if (target != null) if (target != null)
{ {
BuilderUtil.sendSysMessage(activeChar, "target locked"); BuilderUtil.sendSysMessage(activeChar, "target locked");
@@ -55,11 +55,11 @@ public class BeastSpice implements IItemHandler
final int itemId = item.getItemId(); final int itemId = item.getItemId();
if (itemId == 6643) // Golden Spice if (itemId == 6643) // Golden Spice
{ {
player.useMagic(SkillTable.getInstance().getInfo(2188, 1), false, false); player.useMagic(SkillTable.getInstance().getSkill(2188, 1), false, false);
} }
else if (itemId == 6644) // Crystal Spice else if (itemId == 6644) // Crystal Spice
{ {
player.useMagic(SkillTable.getInstance().getInfo(2189, 1), false, false); player.useMagic(SkillTable.getInstance().getSkill(2189, 1), false, false);
} }
} }
@@ -53,7 +53,7 @@ public class ChestKey implements IItemHandler
final PlayerInstance player = (PlayerInstance) playable; final PlayerInstance player = (PlayerInstance) playable;
final int itemId = item.getItemId(); final int itemId = item.getItemId();
final Skill skill = SkillTable.getInstance().getInfo(2229, itemId - 6664); // box key skill final Skill skill = SkillTable.getInstance().getSkill(2229, itemId - 6664); // box key skill
final WorldObject target = player.getTarget(); final WorldObject target = player.getTarget();
if (!(target instanceof ChestInstance)) if (!(target instanceof ChestInstance))
{ {
@@ -85,62 +85,62 @@ public class Crystals implements IItemHandler
{ {
case 7906: case 7906:
{ {
skill = SkillTable.getInstance().getInfo(2248, 1); skill = SkillTable.getInstance().getSkill(2248, 1);
break; break;
} }
case 7907: case 7907:
{ {
skill = SkillTable.getInstance().getInfo(2249, 1); skill = SkillTable.getInstance().getSkill(2249, 1);
break; break;
} }
case 7908: case 7908:
{ {
skill = SkillTable.getInstance().getInfo(2250, 1); skill = SkillTable.getInstance().getSkill(2250, 1);
break; break;
} }
case 7909: case 7909:
{ {
skill = SkillTable.getInstance().getInfo(2251, 1); skill = SkillTable.getInstance().getSkill(2251, 1);
break; break;
} }
case 7910: case 7910:
{ {
skill = SkillTable.getInstance().getInfo(2252, 1); skill = SkillTable.getInstance().getSkill(2252, 1);
break; break;
} }
case 7911: case 7911:
{ {
skill = SkillTable.getInstance().getInfo(2253, 1); skill = SkillTable.getInstance().getSkill(2253, 1);
break; break;
} }
case 7912: case 7912:
{ {
skill = SkillTable.getInstance().getInfo(2254, 1); skill = SkillTable.getInstance().getSkill(2254, 1);
break; break;
} }
case 7913: case 7913:
{ {
skill = SkillTable.getInstance().getInfo(2255, 1); skill = SkillTable.getInstance().getSkill(2255, 1);
break; break;
} }
case 7914: case 7914:
{ {
skill = SkillTable.getInstance().getInfo(2256, 1); skill = SkillTable.getInstance().getSkill(2256, 1);
break; break;
} }
case 7915: case 7915:
{ {
skill = SkillTable.getInstance().getInfo(2257, 1); skill = SkillTable.getInstance().getSkill(2257, 1);
break; break;
} }
case 7916: case 7916:
{ {
skill = SkillTable.getInstance().getInfo(2258, 1); skill = SkillTable.getInstance().getSkill(2258, 1);
break; break;
} }
case 7917: case 7917:
{ {
skill = SkillTable.getInstance().getInfo(2259, 1); skill = SkillTable.getInstance().getSkill(2259, 1);
break; break;
} }
} }
@@ -88,7 +88,7 @@ public class CustomPotions implements IItemHandler
public boolean usePotion(PlayerInstance player, int magicId, int level) public boolean usePotion(PlayerInstance player, int magicId, int level)
{ {
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
player.doCast(skill); player.doCast(skill);
@@ -84,7 +84,7 @@ public class EnergyStone implements IItemHandler
final EffectCharge effect = player.getChargeEffect(); final EffectCharge effect = player.getChargeEffect();
if (effect == null) if (effect == null)
{ {
final Skill dummy = SkillTable.getInstance().getInfo(skill.getId(), skill.getLevel()); final Skill dummy = SkillTable.getInstance().getSkill(skill.getId(), skill.getLevel());
if (dummy != null) if (dummy != null)
{ {
dummy.getEffects(player, player); dummy.getEffects(player, player);
@@ -130,7 +130,7 @@ public class Firework implements IItemHandler
public void useFw(PlayerInstance player, int magicId, int level) public void useFw(PlayerInstance player, int magicId, int level)
{ {
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
player.useMagic(skill, false, false); player.useMagic(skill, false, false);
@@ -65,7 +65,7 @@ public class Harvester implements IItemHandler
return; return;
} }
final Skill skill = SkillTable.getInstance().getInfo(2098, 1); // harvesting skill final Skill skill = SkillTable.getInstance().getSkill(2098, 1); // harvesting skill
player.useMagic(skill, false, false); player.useMagic(skill, false, false);
} }
@@ -59,7 +59,7 @@ public class Nectar implements IItemHandler
final int itemId = item.getItemId(); final int itemId = item.getItemId();
if (itemId == 6391) if (itemId == 6391)
{ {
player.useMagic(SkillTable.getInstance().getInfo(9998, 1), false, false); player.useMagic(SkillTable.getInstance().getSkill(9998, 1), false, false);
} }
} }
@@ -782,7 +782,7 @@ public class Potions implements IItemHandler
{ {
_herbstask -= 100; _herbstask -= 100;
} }
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
// Return false if potion is in reuse // Return false if potion is in reuse
@@ -828,7 +828,7 @@ public class Potions implements IItemHandler
else if (player instanceof PetInstance) else if (player instanceof PetInstance)
{ {
final PetInstance activeChar = (PetInstance) player; final PetInstance activeChar = (PetInstance) player;
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
// Return false if potion is in reuse so is not destroyed from inventory // Return false if potion is in reuse so is not destroyed from inventory
@@ -186,7 +186,7 @@ public class ScrollOfEscape implements IItemHandler
player.abortCast(true); player.abortCast(true);
player.disableAllSkills(); player.disableAllSkills();
final Skill skill = SkillTable.getInstance().getInfo(escapeSkill, 1); final Skill skill = SkillTable.getInstance().getSkill(escapeSkill, 1);
int hitTime = skill.getHitTime(); int hitTime = skill.getHitTime();
// C4 adjustment. // C4 adjustment.
if ((escapeSkill == 2036) || (escapeSkill == 2177) || (escapeSkill == 2178)) if ((escapeSkill == 2036) || (escapeSkill == 2177) || (escapeSkill == 2178))
@@ -186,7 +186,7 @@ public class ScrollOfResurrection implements IItemHandler
if (skillId != 0) if (skillId != 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
player.useMagic(skill, true, true); player.useMagic(skill, true, true);
// Consume the scroll // Consume the scroll
@@ -392,7 +392,7 @@ public class Scrolls implements IItemHandler
public void useScroll(PlayerInstance player, int magicId, int level) public void useScroll(PlayerInstance player, int magicId, int level)
{ {
final Skill skill = SkillTable.getInstance().getInfo(magicId, level); final Skill skill = SkillTable.getInstance().getSkill(magicId, level);
if (skill != null) if (skill != null)
{ {
player.doCast(skill); player.doCast(skill);
@@ -349,7 +349,7 @@ public class Seed implements IItemHandler
{ {
// TODO: get right skill level // TODO: get right skill level
monster.setSeeded(_seedId, player); monster.setSeeded(_seedId, player);
final Skill skill = SkillTable.getInstance().getInfo(2097, 3); // sowing skill final Skill skill = SkillTable.getInstance().getSkill(2097, 3); // sowing skill
player.useMagic(skill, false, false); player.useMagic(skill, false, false);
} }
else else
@@ -118,7 +118,7 @@ public class SoulCrystals implements IItemHandler
final int crystalId = item.getItemId(); final int crystalId = item.getItemId();
// Soul Crystal Casting section // Soul Crystal Casting section
final Skill skill = SkillTable.getInstance().getInfo(2096, 1); final Skill skill = SkillTable.getInstance().getSkill(2096, 1);
player.useMagic(skill, false, true); player.useMagic(skill, false, true);
// End Soul Crystal Casting section // End Soul Crystal Casting section
@@ -157,7 +157,7 @@ public class SummonItems implements IItemHandler
{ {
player.setTarget(player); player.setTarget(player);
// Skill 2046 used only for animation // Skill 2046 used only for animation
final Skill skill = SkillTable.getInstance().getInfo(2046, 1); final Skill skill = SkillTable.getInstance().getSkill(2046, 1);
player.useMagic(skill, true, true); player.useMagic(skill, true, true);
player.sendPacket(SystemMessageId.SUMMONING_YOUR_PET); player.sendPacket(SystemMessageId.SUMMONING_YOUR_PET);
ThreadPool.schedule(new PetSummonFinalizer(player, npcTemplate, item), 4800); ThreadPool.schedule(new PetSummonFinalizer(player, npcTemplate, item), 4800);
@@ -85,11 +85,11 @@ public class Continuous implements ISkillHandler
Skill skill; Skill skill;
if (skillLevel == 0) if (skillLevel == 0)
{ {
skill = SkillTable.getInstance().getInfo(skillEffectId, 1); skill = SkillTable.getInstance().getSkill(skillEffectId, 1);
} }
else else
{ {
skill = SkillTable.getInstance().getInfo(skillEffectId, skillLevel); skill = SkillTable.getInstance().getSkill(skillEffectId, skillLevel);
} }
if (skill != null) if (skill != null)
@@ -306,12 +306,12 @@ public class Pdam implements ISkillHandler
} }
else if (skill.getId() == 345) // Sonic Rage else if (skill.getId() == 345) // Sonic Rage
{ {
final Skill dummy = SkillTable.getInstance().getInfo(8, 7); // Lv7 Sonic Focus final Skill dummy = SkillTable.getInstance().getSkill(8, 7); // Lv7 Sonic Focus
dummy.getEffects(creature, creature, ss, sps, bss); dummy.getEffects(creature, creature, ss, sps, bss);
} }
else if (skill.getId() == 346) // Raging Force else if (skill.getId() == 346) // Raging Force
{ {
final Skill dummy = SkillTable.getInstance().getInfo(50, 7); // Lv7 Focused Force final Skill dummy = SkillTable.getInstance().getSkill(50, 7); // Lv7 Focused Force
dummy.getEffects(creature, creature, ss, sps, bss); dummy.getEffects(creature, creature, ss, sps, bss);
} }
} }
@@ -135,7 +135,7 @@ public class OfflineShop implements IUserCommandHandler
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
if ((player.isInStoreMode() && Config.OFFLINE_TRADE_ENABLE) || (player.isCrafting() && Config.OFFLINE_CRAFT_ENABLE)) if ((player.isInStoreMode() && Config.OFFLINE_TRADE_ENABLE) || (player.isCrafting() && Config.OFFLINE_CRAFT_ENABLE))
@@ -136,7 +136,7 @@ public class OfflineShop implements IVoicedCommandHandler
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
if ((player.isInStoreMode() && Config.OFFLINE_TRADE_ENABLE) || (player.isCrafting() && Config.OFFLINE_CRAFT_ENABLE)) if ((player.isInStoreMode() && Config.OFFLINE_TRADE_ENABLE) || (player.isCrafting() && Config.OFFLINE_CRAFT_ENABLE))
@@ -165,7 +165,7 @@ public class Wedding implements IVoicedCommandHandler
skillId = 4362; skillId = 4362;
} }
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (activeChar.getFirstEffect(skill) == null) if (activeChar.getFirstEffect(skill) == null)
{ {
skill.getEffects(activeChar, activeChar, false, false, false); skill.getEffects(activeChar, activeChar, false, false, false);
@@ -254,7 +254,7 @@ public class DayNightSpawnManager
private void ShadowSenseMsg(int mode) private void ShadowSenseMsg(int mode)
{ {
final Skill skill = SkillTable.getInstance().getInfo(294, 1); final Skill skill = SkillTable.getInstance().getSkill(294, 1);
if (skill == null) if (skill == null)
{ {
return; return;
@@ -73,8 +73,8 @@ public class FortSiegeManager
public void addSiegeSkills(PlayerInstance character) public void addSiegeSkills(PlayerInstance character)
{ {
character.addSkill(SkillTable.getInstance().getInfo(246, 1), false); character.addSkill(SkillTable.getInstance().getSkill(246, 1), false);
character.addSkill(SkillTable.getInstance().getInfo(247, 1), false); character.addSkill(SkillTable.getInstance().getSkill(247, 1), false);
} }
/** /**
@@ -162,8 +162,8 @@ public class FortSiegeManager
public void removeSiegeSkills(PlayerInstance character) public void removeSiegeSkills(PlayerInstance character)
{ {
character.removeSkill(SkillTable.getInstance().getInfo(246, 1)); character.removeSkill(SkillTable.getInstance().getSkill(246, 1));
character.removeSkill(SkillTable.getInstance().getInfo(247, 1)); character.removeSkill(SkillTable.getInstance().getSkill(247, 1));
} }
private final void load() private final void load()
@@ -75,8 +75,8 @@ public class SiegeManager
public void addSiegeSkills(PlayerInstance character) public void addSiegeSkills(PlayerInstance character)
{ {
character.addSkill(SkillTable.getInstance().getInfo(246, 1), false); character.addSkill(SkillTable.getInstance().getSkill(246, 1), false);
character.addSkill(SkillTable.getInstance().getInfo(247, 1), false); character.addSkill(SkillTable.getInstance().getSkill(247, 1), false);
} }
/** /**
@@ -177,8 +177,8 @@ public class SiegeManager
public void removeSiegeSkills(PlayerInstance character) public void removeSiegeSkills(PlayerInstance character)
{ {
character.removeSkill(SkillTable.getInstance().getInfo(246, 1)); character.removeSkill(SkillTable.getInstance().getSkill(246, 1));
character.removeSkill(SkillTable.getInstance().getInfo(247, 1)); character.removeSkill(SkillTable.getInstance().getSkill(247, 1));
} }
private final void load() private final void load()
@@ -124,15 +124,15 @@ public class CombatFlag
public void giveSkill() public void giveSkill()
{ {
_player.addSkill(SkillTable.getInstance().getInfo(3318, 1), false); _player.addSkill(SkillTable.getInstance().getSkill(3318, 1), false);
_player.addSkill(SkillTable.getInstance().getInfo(3358, 1), false); _player.addSkill(SkillTable.getInstance().getSkill(3358, 1), false);
_player.sendSkillList(); _player.sendSkillList();
} }
public void removeSkill() public void removeSkill()
{ {
_player.removeSkill(SkillTable.getInstance().getInfo(3318, 1), false); _player.removeSkill(SkillTable.getInstance().getSkill(3318, 1), false);
_player.removeSkill(SkillTable.getInstance().getInfo(3358, 1), false); _player.removeSkill(SkillTable.getInstance().getSkill(3358, 1), false);
_player.sendSkillList(); _player.sendSkillList();
} }
} }
@@ -58,7 +58,7 @@ public class ForceBuff
} }
else else
{ {
final Skill force = SkillTable.getInstance().getInfo(_forceId, _forceLevel); final Skill force = SkillTable.getInstance().getSkill(_forceId, _forceLevel);
if (force != null) if (force != null)
{ {
force.getEffects(_caster, _target, false, false, false); force.getEffects(_caster, _target, false, false, false);
@@ -2906,7 +2906,7 @@ public abstract class Skill
// Implements effect charge // Implements effect charge
if (e.getEffectType() == Effect.EffectType.CHARGE) if (e.getEffectType() == Effect.EffectType.CHARGE)
{ {
env.skill = SkillTable.getInstance().getInfo(8, effector.getSkillLevel(8)); env.skill = SkillTable.getInstance().getSkill(8, effector.getSkillLevel(8));
final EffectCharge effect = (EffectCharge) env.target.getFirstEffect(Effect.EffectType.CHARGE); final EffectCharge effect = (EffectCharge) env.target.getFirstEffect(Effect.EffectType.CHARGE);
if (effect != null) if (effect != null)
{ {
@@ -6203,7 +6203,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if (toBeCursed) if (toBeCursed)
{ {
final Skill skill = SkillTable.getInstance().getInfo(4515, 1); final Skill skill = SkillTable.getInstance().getSkill(4515, 1);
if (skill != null) if (skill != null)
{ {
abortAttack(); abortAttack();
@@ -6839,13 +6839,13 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if (newSkill.isChance() && newSkill.triggerAnotherSkill()) if (newSkill.isChance() && newSkill.triggerAnotherSkill())
{ {
final Skill triggeredSkill = SkillTable.getInstance().getInfo(newSkill.getTriggeredId(), newSkill.getTriggeredLevel()); final Skill triggeredSkill = SkillTable.getInstance().getSkill(newSkill.getTriggeredId(), newSkill.getTriggeredLevel());
addSkill(triggeredSkill); addSkill(triggeredSkill);
} }
if (newSkill.triggerAnotherSkill()) if (newSkill.triggerAnotherSkill())
{ {
_triggeredSkills.put(newSkill.getTriggeredId(), SkillTable.getInstance().getInfo(newSkill.getTriggeredId(), newSkill.getTriggeredLevel())); _triggeredSkills.put(newSkill.getTriggeredId(), SkillTable.getInstance().getSkill(newSkill.getTriggeredId(), newSkill.getTriggeredLevel()));
} }
} }
@@ -7955,7 +7955,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
{ {
if (skill.isMagic()) if (skill.isMagic())
{ {
final Skill tempSkill = SkillTable.getInstance().getInfo(4215, 1); final Skill tempSkill = SkillTable.getInstance().getSkill(4215, 1);
if (tempSkill != null) if (tempSkill != null)
{ {
abortAttack(); abortAttack();
@@ -7981,7 +7981,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
} }
else else
{ {
final Skill tempSkill = SkillTable.getInstance().getInfo(4515, 1); final Skill tempSkill = SkillTable.getInstance().getSkill(4515, 1);
if (tempSkill != null) if (tempSkill != null)
{ {
tempSkill.getEffects(creature, this, false, false, false); tempSkill.getEffects(creature, this, false, false, false);
@@ -807,7 +807,7 @@ public abstract class Summon extends Playable
} }
} }
final Skill skillToCast = SkillTable.getInstance().getInfo(skill.getId(), skillLevel); final Skill skillToCast = SkillTable.getInstance().getSkill(skill.getId(), skillLevel);
if (skillToCast != null) if (skillToCast != null)
{ {
super.doCast(skillToCast); super.doCast(skillToCast);
@@ -158,7 +158,7 @@ public class CabaleBufferInstance extends NpcInstance
return false; return false;
} }
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (player.getFirstEffect(skill) == null) if (player.getFirstEffect(skill) == null)
{ {
skill.getEffects(_caster, player, false, false, false); skill.getEffects(_caster, player, false, false, false);
@@ -209,7 +209,7 @@ public class ChestInstance extends MonsterInstance
return false; return false;
} }
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (creature.getFirstEffect(skill) == null) if (creature.getFirstEffect(skill) == null)
{ {
skill.getEffects(this, creature, false, false, false); skill.getEffects(this, creature, false, false, false);
@@ -849,7 +849,7 @@ public class ClanHallManagerInstance extends FolkInstance
{ {
skillLevel = Integer.parseInt(st.nextToken()); skillLevel = Integer.parseInt(st.nextToken());
} }
skill = SkillTable.getInstance().getInfo(skillId, skillLevel); skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (skill.getSkillType() == SkillType.SUMMON) if (skill.getSkillType() == SkillType.SUMMON)
{ {
player.doCast(skill); player.doCast(skill);
@@ -102,64 +102,64 @@ public class CubicInstance
{ {
case STORM_CUBIC: case STORM_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4049, level)); _skills.add(SkillTable.getInstance().getSkill(4049, level));
break; break;
} }
case VAMPIRIC_CUBIC: case VAMPIRIC_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4050, level)); _skills.add(SkillTable.getInstance().getSkill(4050, level));
break; break;
} }
case LIFE_CUBIC: case LIFE_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4051, level)); _skills.add(SkillTable.getInstance().getSkill(4051, level));
doAction(); doAction();
break; break;
} }
case VIPER_CUBIC: case VIPER_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4052, level)); _skills.add(SkillTable.getInstance().getSkill(4052, level));
break; break;
} }
case POLTERGEIST_CUBIC: case POLTERGEIST_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4053, level)); _skills.add(SkillTable.getInstance().getSkill(4053, level));
_skills.add(SkillTable.getInstance().getInfo(4054, level)); _skills.add(SkillTable.getInstance().getSkill(4054, level));
_skills.add(SkillTable.getInstance().getInfo(4055, level)); _skills.add(SkillTable.getInstance().getSkill(4055, level));
break; break;
} }
case BINDING_CUBIC: case BINDING_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4164, level)); _skills.add(SkillTable.getInstance().getSkill(4164, level));
break; break;
} }
case AQUA_CUBIC: case AQUA_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4165, level)); _skills.add(SkillTable.getInstance().getSkill(4165, level));
break; break;
} }
case SPARK_CUBIC: case SPARK_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(4166, level)); _skills.add(SkillTable.getInstance().getSkill(4166, level));
break; break;
} }
case ATTRACT_CUBIC: case ATTRACT_CUBIC:
{ {
_skills.add(SkillTable.getInstance().getInfo(5115, level)); _skills.add(SkillTable.getInstance().getSkill(5115, level));
_skills.add(SkillTable.getInstance().getInfo(5116, level)); _skills.add(SkillTable.getInstance().getSkill(5116, level));
break; break;
} }
case SMART_CUBIC_ARCANALORD: case SMART_CUBIC_ARCANALORD:
{ {
// _skills.add(SkillTable.getInstance().getInfo(4049,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4049,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation
_skills.add(SkillTable.getInstance().getInfo(4051, 7)); // have animation _skills.add(SkillTable.getInstance().getSkill(4051, 7)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation // _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4053,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4053,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation
_skills.add(SkillTable.getInstance().getInfo(4165, 9)); // have animation _skills.add(SkillTable.getInstance().getSkill(4165, 9)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation
@@ -168,7 +168,7 @@ public class CubicInstance
} }
case SMART_CUBIC_ELEMENTALMASTER: case SMART_CUBIC_ELEMENTALMASTER:
{ {
_skills.add(SkillTable.getInstance().getInfo(4049, 8)); // have animation _skills.add(SkillTable.getInstance().getSkill(4049, 8)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation // _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation
@@ -177,7 +177,7 @@ public class CubicInstance
// _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4165,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4165,9)); no animation
_skills.add(SkillTable.getInstance().getInfo(4166, 9)); // have animation _skills.add(SkillTable.getInstance().getSkill(4166, 9)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5579,4)); no need to add to the cubic skills list // _skills.add(SkillTable.getInstance().getInfo(5579,4)); no need to add to the cubic skills list
@@ -185,10 +185,10 @@ public class CubicInstance
} }
case SMART_CUBIC_SPECTRALMASTER: case SMART_CUBIC_SPECTRALMASTER:
{ {
_skills.add(SkillTable.getInstance().getInfo(4049, 8)); // have animation _skills.add(SkillTable.getInstance().getSkill(4049, 8)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation
_skills.add(SkillTable.getInstance().getInfo(4052, 6)); // have animation _skills.add(SkillTable.getInstance().getSkill(4052, 6)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4053,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4053,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation
@@ -206,11 +206,11 @@ public class CubicInstance
// _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation // _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation
_skills.add(SkillTable.getInstance().getInfo(4053, 8)); // have animation _skills.add(SkillTable.getInstance().getSkill(4053, 8)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4054,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation // _skills.add(SkillTable.getInstance().getInfo(4055,8)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation
_skills.add(SkillTable.getInstance().getInfo(4165, 9)); // have animation _skills.add(SkillTable.getInstance().getSkill(4165, 9)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5115,4)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation
@@ -219,7 +219,7 @@ public class CubicInstance
} }
case SMART_CUBIC_SHILLIENTEMPLAR: case SMART_CUBIC_SHILLIENTEMPLAR:
{ {
_skills.add(SkillTable.getInstance().getInfo(4049, 8)); // have animation _skills.add(SkillTable.getInstance().getSkill(4049, 8)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4050,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation // _skills.add(SkillTable.getInstance().getInfo(4051,7)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation // _skills.add(SkillTable.getInstance().getInfo(4052,6)); no animation
@@ -229,7 +229,7 @@ public class CubicInstance
// _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4164,9)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4165,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4165,9)); no animation
// _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation // _skills.add(SkillTable.getInstance().getInfo(4166,9)); no animation
_skills.add(SkillTable.getInstance().getInfo(5115, 4)); // have animation _skills.add(SkillTable.getInstance().getSkill(5115, 4)); // have animation
// _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation // _skills.add(SkillTable.getInstance().getInfo(5116,4)); no animation
// _skills.add(SkillTable.getInstance().getInfo(5579,4)); no need to add to the cubic skills list // _skills.add(SkillTable.getInstance().getInfo(5579,4)); no need to add to the cubic skills list
break; break;
@@ -145,7 +145,7 @@ public class DoormanInstance extends FolkInstance
player.sendPacket(mount); player.sendPacket(mount);
player.broadcastPacket(mount); player.broadcastPacket(mount);
player.setMountType(mount.getMountType()); player.setMountType(mount.getMountType());
player.addSkill(SkillTable.getInstance().getInfo(4289, 1)); player.addSkill(SkillTable.getInstance().getSkill(4289, 1));
player.sendMessage("The wyvern has been summoned successfully!"); player.sendMessage("The wyvern has been summoned successfully!");
} }
} }
@@ -121,7 +121,7 @@ public class FishermanInstance extends FolkInstance
int counts = 0; int counts = 0;
for (SkillLearn s : skills) for (SkillLearn s : skills)
{ {
final Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel()); final Skill sk = SkillTable.getInstance().getSkill(s.getId(), s.getLevel());
if (sk == null) if (sk == null)
{ {
continue; continue;
@@ -101,7 +101,7 @@ public class FolkInstance extends NpcInstance
int counts = 0; int counts = 0;
for (SkillLearn s : skills) for (SkillLearn s : skills)
{ {
final Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel()); final Skill sk = SkillTable.getInstance().getSkill(s.getId(), s.getLevel());
if ((sk == null) || !sk.getCanLearn(player.getClassId()) || !sk.canTeachBy(npcId)) if ((sk == null) || !sk.getCanLearn(player.getClassId()) || !sk.canTeachBy(npcId))
{ {
continue; continue;
@@ -189,7 +189,7 @@ public class FolkInstance extends NpcInstance
int counts = 0; int counts = 0;
for (EnchantSkillLearn s : skills) for (EnchantSkillLearn s : skills)
{ {
final Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel()); final Skill sk = SkillTable.getInstance().getSkill(s.getId(), s.getLevel());
if (sk == null) if (sk == null)
{ {
continue; continue;
@@ -111,7 +111,7 @@ public class FortWyvernManagerInstance extends NpcInstance
player.broadcastPacket(mount); player.broadcastPacket(mount);
player.setMountType(mount.getMountType()); player.setMountType(mount.getMountType());
player.addSkill(SkillTable.getInstance().getInfo(4289, 1)); player.addSkill(SkillTable.getInstance().getSkill(4289, 1));
player.sendMessage("The Wyvern has been summoned successfully!"); player.sendMessage("The Wyvern has been summoned successfully!");
} }
else else
@@ -1954,7 +1954,7 @@ public class NpcInstance extends Creature
} }
// Skill's animation // Skill's animation
final Skill skill = SkillTable.getInstance().getInfo(4380, 1); final Skill skill = SkillTable.getInstance().getSkill(4380, 1);
if (skill != null) if (skill != null)
{ {
broadcastPacket(new MagicSkillUse(this, player, skill.getId(), skill.getLevel(), 0, 0)); broadcastPacket(new MagicSkillUse(this, player, skill.getId(), skill.getLevel(), 0, 0));
@@ -2023,7 +2023,7 @@ public class NpcInstance extends Creature
{ {
if ((helperBuffItem.isMagicClassBuff() == player.isMageClass()) && (playerLevel >= helperBuffItem.getLowerLevel()) && (playerLevel <= helperBuffItem.getUpperLevel())) if ((helperBuffItem.isMagicClassBuff() == player.isMageClass()) && (playerLevel >= helperBuffItem.getLowerLevel()) && (playerLevel <= helperBuffItem.getUpperLevel()))
{ {
skill = SkillTable.getInstance().getInfo(helperBuffItem.getSkillID(), helperBuffItem.getSkillLevel()); skill = SkillTable.getInstance().getSkill(helperBuffItem.getSkillID(), helperBuffItem.getSkillLevel());
if (skill.getSkillType() == SkillType.SUMMON) if (skill.getSkillType() == SkillType.SUMMON)
{ {
player.doCast(skill); player.doCast(skill);
@@ -2141,7 +2141,7 @@ public class PlayerInstance extends Playable
_curWeightPenalty = newWeightPenalty; _curWeightPenalty = newWeightPenalty;
if (newWeightPenalty > 0) if (newWeightPenalty > 0)
{ {
super.addSkill(SkillTable.getInstance().getInfo(4270, newWeightPenalty)); super.addSkill(SkillTable.getInstance().getSkill(4270, newWeightPenalty));
sendSkillList(); // Fix visual bug sendSkillList(); // Fix visual bug
} }
else else
@@ -2244,7 +2244,7 @@ public class PlayerInstance extends Playable
final int penalties = _masteryWeapPenalty + _expertisePenalty + newMasteryPenalty; final int penalties = _masteryWeapPenalty + _expertisePenalty + newMasteryPenalty;
if (penalties > 0) if (penalties > 0)
{ {
super.addSkill(SkillTable.getInstance().getInfo(4267, 1)); // level used to be newPenalty super.addSkill(SkillTable.getInstance().getSkill(4267, 1)); // level used to be newPenalty
} }
else else
{ {
@@ -2433,7 +2433,7 @@ public class PlayerInstance extends Playable
final int penalties = _masteryPenalty + _expertisePenalty + newMasteryPenalty; final int penalties = _masteryPenalty + _expertisePenalty + newMasteryPenalty;
if (penalties > 0) if (penalties > 0)
{ {
super.addSkill(SkillTable.getInstance().getInfo(4267, 1)); // level used to be newPenalty super.addSkill(SkillTable.getInstance().getSkill(4267, 1)); // level used to be newPenalty
} }
else else
{ {
@@ -2503,7 +2503,7 @@ public class PlayerInstance extends Playable
_expertisePenalty = intensity; _expertisePenalty = intensity;
if (penalties > 0) if (penalties > 0)
{ {
super.addSkill(SkillTable.getInstance().getInfo(4267, intensity)); super.addSkill(SkillTable.getInstance().getSkill(4267, intensity));
sendSkillList(); sendSkillList();
} }
else else
@@ -2630,7 +2630,7 @@ public class PlayerInstance extends Playable
{ {
getSubClasses().get(_classIndex).setClassId(id); getSubClasses().get(_classIndex).setClassId(id);
} }
doCast(SkillTable.getInstance().getInfo(5103, 1)); doCast(SkillTable.getInstance().getSkill(5103, 1));
setClassTemplate(id); setClassTemplate(id);
} }
@@ -2767,7 +2767,7 @@ public class PlayerInstance extends Playable
// Remove beginner Lucky skill // Remove beginner Lucky skill
if (lvl == 10) if (lvl == 10)
{ {
removeSkill(SkillTable.getInstance().getInfo(194, 1)); removeSkill(SkillTable.getInstance().getSkill(194, 1));
} }
// Calculate the current higher Expertise of the PlayerInstance // Calculate the current higher Expertise of the PlayerInstance
@@ -2782,21 +2782,21 @@ public class PlayerInstance extends Playable
// Add the Expertise skill corresponding to its Expertise level // Add the Expertise skill corresponding to its Expertise level
if (getExpertiseIndex() > 0) if (getExpertiseIndex() > 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(239, getExpertiseIndex()); final Skill skill = SkillTable.getInstance().getSkill(239, getExpertiseIndex());
addSkill(skill, !restore); addSkill(skill, !restore);
} }
// Active skill dwarven craft // Active skill dwarven craft
if ((getSkillLevel(1321) < 1) && (getRace() == Race.DWARF)) if ((getSkillLevel(1321) < 1) && (getRace() == Race.DWARF))
{ {
final Skill skill = SkillTable.getInstance().getInfo(1321, 1); final Skill skill = SkillTable.getInstance().getSkill(1321, 1);
addSkill(skill, !restore); addSkill(skill, !restore);
} }
// Active skill common craft // Active skill common craft
if (getSkillLevel(1322) < 1) if (getSkillLevel(1322) < 1)
{ {
final Skill skill = SkillTable.getInstance().getInfo(1322, 1); final Skill skill = SkillTable.getInstance().getSkill(1322, 1);
addSkill(skill, !restore); addSkill(skill, !restore);
} }
@@ -2804,7 +2804,7 @@ public class PlayerInstance extends Playable
{ {
if ((lvl >= COMMON_CRAFT_LEVELS[i]) && (getSkillLevel(1320) < (i + 1))) if ((lvl >= COMMON_CRAFT_LEVELS[i]) && (getSkillLevel(1320) < (i + 1)))
{ {
final Skill skill = SkillTable.getInstance().getInfo(1320, (i + 1)); final Skill skill = SkillTable.getInstance().getSkill(1320, (i + 1));
addSkill(skill, !restore); addSkill(skill, !restore);
} }
} }
@@ -9095,7 +9095,7 @@ public class PlayerInstance extends Playable
} }
// Create a Skill object for each record // Create a Skill object for each record
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature // Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
super.addSkill(skill); super.addSkill(skill);
@@ -9121,7 +9121,7 @@ public class PlayerInstance extends Playable
} }
// Create a Skill object for each record // Create a Skill object for each record
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature // Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
super.addSkill(skill); super.addSkill(skill);
@@ -9178,7 +9178,7 @@ public class PlayerInstance extends Playable
if (activateEffects) if (activateEffects)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLvl); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLvl);
skill.getEffects(this, this, false, false, false); skill.getEffects(this, this, false, false, false);
for (Effect effect : getAllEffects()) for (Effect effect : getAllEffects())
{ {
@@ -9193,7 +9193,7 @@ public class PlayerInstance extends Playable
final long remainingTime = systime - currentTime; final long remainingTime = systime - currentTime;
if (remainingTime > 10) if (remainingTime > 10)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLvl); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLvl);
if (skill == null) if (skill == null)
{ {
continue; continue;
@@ -9222,7 +9222,7 @@ public class PlayerInstance extends Playable
final long remainingTime = systime - currentTime; final long remainingTime = systime - currentTime;
if (remainingTime > 0) if (remainingTime > 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLvl); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLvl);
if (skill == null) if (skill == null)
{ {
continue; continue;
@@ -10518,7 +10518,7 @@ public class PlayerInstance extends Playable
setRiding(true); setRiding(true);
if (isNoble()) if (isNoble())
{ {
final Skill striderAssaultSkill = SkillTable.getInstance().getInfo(325, 1); final Skill striderAssaultSkill = SkillTable.getInstance().getSkill(325, 1);
addSkill(striderAssaultSkill, false); // not saved to DB addSkill(striderAssaultSkill, false); // not saved to DB
} }
break; break;
@@ -11933,7 +11933,7 @@ public class PlayerInstance extends Playable
if (skillInfo.getMinLevel() <= 40) if (skillInfo.getMinLevel() <= 40)
{ {
final Skill prevSkill = prevSkillList.get(skillInfo.getId()); final Skill prevSkill = prevSkillList.get(skillInfo.getId());
final Skill newSkill = SkillTable.getInstance().getInfo(skillInfo.getId(), skillInfo.getLevel()); final Skill newSkill = SkillTable.getInstance().getSkill(skillInfo.getId(), skillInfo.getLevel());
if ((newSkill == null) || ((prevSkill != null) && (prevSkill.getLevel() > newSkill.getLevel()))) if ((newSkill == null) || ((prevSkill != null) && (prevSkill.getLevel() > newSkill.getLevel())))
{ {
continue; continue;
@@ -14550,7 +14550,7 @@ public class PlayerInstance extends Playable
if (getDeathPenaltyBuffLevel() != 0) if (getDeathPenaltyBuffLevel() != 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()); final Skill skill = SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel());
if (skill != null) if (skill != null)
{ {
removeSkill(skill, true); removeSkill(skill, true);
@@ -14559,7 +14559,7 @@ public class PlayerInstance extends Playable
_deathPenaltyBuffLevel++; _deathPenaltyBuffLevel++;
addSkill(SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()), false); addSkill(SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel()), false);
final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1);
sm.addNumber(getDeathPenaltyBuffLevel()); sm.addNumber(getDeathPenaltyBuffLevel());
sendPacket(sm); sendPacket(sm);
@@ -14576,7 +14576,7 @@ public class PlayerInstance extends Playable
return; return;
} }
final Skill skill = SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()); final Skill skill = SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel());
if (skill != null) if (skill != null)
{ {
removeSkill(skill, true); removeSkill(skill, true);
@@ -14587,7 +14587,7 @@ public class PlayerInstance extends Playable
if (getDeathPenaltyBuffLevel() > 0) if (getDeathPenaltyBuffLevel() > 0)
{ {
addSkill(SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()), false); addSkill(SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel()), false);
final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1);
sm.addNumber(getDeathPenaltyBuffLevel()); sm.addNumber(getDeathPenaltyBuffLevel());
sendPacket(sm); sendPacket(sm);
@@ -14628,7 +14628,7 @@ public class PlayerInstance extends Playable
*/ */
public void restoreDeathPenaltyBuffLevel() public void restoreDeathPenaltyBuffLevel()
{ {
final Skill skill = SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()); final Skill skill = SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel());
if (skill != null) if (skill != null)
{ {
removeSkill(skill, true); removeSkill(skill, true);
@@ -14636,7 +14636,7 @@ public class PlayerInstance extends Playable
if (getDeathPenaltyBuffLevel() > 0) if (getDeathPenaltyBuffLevel() > 0)
{ {
addSkill(SkillTable.getInstance().getInfo(5076, getDeathPenaltyBuffLevel()), false); addSkill(SkillTable.getInstance().getSkill(5076, getDeathPenaltyBuffLevel()), false);
final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOUR_DEATH_PENALTY_IS_NOW_LEVEL_S1);
sm.addNumber(getDeathPenaltyBuffLevel()); sm.addNumber(getDeathPenaltyBuffLevel());
sendPacket(sm); sendPacket(sm);
@@ -14854,7 +14854,7 @@ public class PlayerInstance extends Playable
setMountType(0); setMountType(0);
if (wasFlying) if (wasFlying)
{ {
removeSkill(SkillTable.getInstance().getInfo(4289, 1)); removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
broadcastPacket(new Ride(getObjectId(), Ride.ACTION_DISMOUNT, 0)); broadcastPacket(new Ride(getObjectId(), Ride.ACTION_DISMOUNT, 0));
setMountObjectID(0); setMountObjectID(0);
@@ -15376,7 +15376,7 @@ public class PlayerInstance extends Playable
for (Integer skillid : Config.AIO_SKILLS.keySet()) for (Integer skillid : Config.AIO_SKILLS.keySet())
{ {
final int skilllvl = Config.AIO_SKILLS.get(skillid); final int skilllvl = Config.AIO_SKILLS.get(skillid);
skill = SkillTable.getInstance().getInfo(skillid, skilllvl); skill = SkillTable.getInstance().getSkill(skillid, skilllvl);
if (skill != null) if (skill != null)
{ {
addSkill(skill, true); addSkill(skill, true);
@@ -15394,7 +15394,7 @@ public class PlayerInstance extends Playable
for (Integer skillid : Config.AIO_SKILLS.keySet()) for (Integer skillid : Config.AIO_SKILLS.keySet())
{ {
final int skilllvl = Config.AIO_SKILLS.get(skillid); final int skilllvl = Config.AIO_SKILLS.get(skillid);
skill = SkillTable.getInstance().getInfo(skillid, skilllvl); skill = SkillTable.getInstance().getSkill(skillid, skilllvl);
removeSkill(skill); removeSkill(skill);
} }
} }
@@ -80,7 +80,7 @@ public class ProtectorInstance extends NpcInstance
return false; return false;
} }
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (player.getFirstEffect(skill) == null) if (player.getFirstEffect(skill) == null)
{ {
final int objId = _caster.getObjectId(); final int objId = _caster.getObjectId();
@@ -101,7 +101,7 @@ public class ProtectorInstance extends NpcInstance
return false; return false;
} }
final Skill skill = SkillTable.getInstance().getInfo(skillId, skillLevel); final Skill skill = SkillTable.getInstance().getSkill(skillId, skillLevel);
if (player.getFirstEffect(skill) == null) if (player.getFirstEffect(skill) == null)
{ {
final int objId = _caster.getObjectId(); final int objId = _caster.getObjectId();
@@ -116,7 +116,7 @@ public class SchemeBufferInstance extends FolkInstance
{ {
for (int skillId : SchemeBufferTable.getInstance().getScheme(player.getObjectId(), schemeName)) for (int skillId : SchemeBufferTable.getInstance().getScheme(player.getObjectId(), schemeName))
{ {
SkillTable.getInstance().getInfo(skillId, SkillTable.getInstance().getMaxLevel(skillId, 1)).getEffects(this, target); SkillTable.getInstance().getSkill(skillId, SkillTable.getInstance().getMaxLevel(skillId, 1)).getEffects(this, target);
} }
} }
} }
@@ -316,33 +316,33 @@ public class SchemeBufferInstance extends FolkInstance
{ {
if (schemeSkills.contains(skillId)) if (schemeSkills.contains(skillId))
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill00", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill00", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>");
} }
else else
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill00", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill00", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>");
} }
} }
else if (skillId < 1000) else if (skillId < 1000)
{ {
if (schemeSkills.contains(skillId)) if (schemeSkills.contains(skillId))
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill0", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill0", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>");
} }
else else
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill0", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill0", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>");
} }
} }
else else
{ {
if (schemeSkills.contains(skillId)) if (schemeSkills.contains(skillId))
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillunselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>");
} }
else else
{ {
StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>"); StringUtil.append(sb, "<td height=40 width=40><img src=\"icon.skill", skillId, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getSkill(skillId, 1).getName(), "<br1><font color=\"B09878\">", SchemeBufferTable.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass -h npc_%objectId%_skillselect;", groupType, ";", schemeName, ";", skillId, ";", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>");
} }
} }
@@ -524,7 +524,7 @@ public class SepulcherMonsterInstance extends MonsterInstance
@Override @Override
public void run() public void run()
{ {
final Skill fp = SkillTable.getInstance().getInfo(4616, 1); // Invulnerable by petrification final Skill fp = SkillTable.getInstance().getSkill(4616, 1); // Invulnerable by petrification
fp.getEffects(activeChar, activeChar, false, false, false); fp.getEffects(activeChar, activeChar, false, false, false);
} }
} }
@@ -431,7 +431,7 @@ public class TamedBeastInstance extends FeedableBeastInstance
// emulate a call to the owner using food, but bypass all checks for range, etc // emulate a call to the owner using food, but bypass all checks for range, etc
// this also causes a call to the AI tasks handling feeding, which may call onReceiveFood as required. // this also causes a call to the AI tasks handling feeding, which may call onReceiveFood as required.
owner.callSkill(SkillTable.getInstance().getInfo(foodTypeSkillId, 1), targets); owner.callSkill(SkillTable.getInstance().getSkill(foodTypeSkillId, 1), targets);
owner.setTarget(oldTarget); owner.setTarget(oldTarget);
} }
else if (_tamedBeast.getRemainingTime() < (MAX_DURATION - 300000)) // if the owner has no food, the beast immediately despawns, except when it was only newly spawned. Newly spawned beasts can last up to 5 minutes else if (_tamedBeast.getRemainingTime() < (MAX_DURATION - 300000)) // if the owner has no food, the beast immediately despawns, except when it was only newly spawned. Newly spawned beasts can last up to 5 minutes
@@ -187,7 +187,7 @@ public class WeddingManagerInstance extends NpcInstance
ptarget.broadcastPacket(msu); ptarget.broadcastPacket(msu);
// fireworks // fireworks
final Skill skill = SkillTable.getInstance().getInfo(2025, 1); final Skill skill = SkillTable.getInstance().getSkill(2025, 1);
if (skill != null) if (skill != null)
{ {
msu = new MagicSkillUse(player, player, 2025, 1, 1, 0); msu = new MagicSkillUse(player, player, 2025, 1, 1, 0);
@@ -84,7 +84,7 @@ public class WyvernManagerInstance extends CastleChamberlainInstance
player.sendPacket(mount); player.sendPacket(mount);
player.broadcastPacket(mount); player.broadcastPacket(mount);
player.setMountType(mount.getMountType()); player.setMountType(mount.getMountType());
player.addSkill(SkillTable.getInstance().getInfo(4289, 1)); player.addSkill(SkillTable.getInstance().getSkill(4289, 1));
player.sendMessage("The wyvern has been summoned successfully!"); player.sendMessage("The wyvern has been summoned successfully!");
} }
} }
@@ -55,7 +55,7 @@ public class XmassTreeInstance extends NpcInstance
private boolean handleCast(PlayerInstance player, int skillId) private boolean handleCast(PlayerInstance player, int skillId)
{ {
final Skill skill = SkillTable.getInstance().getInfo(skillId, 1); final Skill skill = SkillTable.getInstance().getSkill(skillId, 1);
if (player.getFirstEffect(skill) == null) if (player.getFirstEffect(skill) == null)
{ {
setTarget(player); setTarget(player);
@@ -968,7 +968,7 @@ public class Clan
final int level = rset.getInt("skill_level"); final int level = rset.getInt("skill_level");
// Create a Skill object for each record // Create a Skill object for each record
final Skill skill = SkillTable.getInstance().getInfo(id, level); final Skill skill = SkillTable.getInstance().getSkill(id, level);
// Add the Skill object to the Clan _skills // Add the Skill object to the Clan _skills
_skills.put(skill.getId(), skill); _skills.put(skill.getId(), skill);
@@ -353,7 +353,7 @@ public class Rebirth
final String[] currSkill = readSkill.split(","); final String[] currSkill = readSkill.split(",");
if (loopBirth == (rebirthLevel - 1)) if (loopBirth == (rebirthLevel - 1))
{ {
skill = SkillTable.getInstance().getInfo(Integer.parseInt(currSkill[0]), Integer.parseInt(currSkill[1])); skill = SkillTable.getInstance().getSkill(Integer.parseInt(currSkill[0]), Integer.parseInt(currSkill[1]));
break; break;
} }
loopBirth++; loopBirth++;
@@ -367,7 +367,7 @@ public class Rebirth
final String[] currSkill = readSkill.split(","); final String[] currSkill = readSkill.split(",");
if (loopBirth == (rebirthLevel - 1)) if (loopBirth == (rebirthLevel - 1))
{ {
skill = SkillTable.getInstance().getInfo(Integer.parseInt(currSkill[0]), Integer.parseInt(currSkill[1])); skill = SkillTable.getInstance().getSkill(Integer.parseInt(currSkill[0]), Integer.parseInt(currSkill[1]));
break; break;
} }
loopBirth++; loopBirth++;
@@ -1574,7 +1574,7 @@ public class CTF implements EventTask
{ {
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0)); player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0));
@@ -1422,7 +1422,7 @@ public class DM implements EventTask
{ {
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0)); player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0));
@@ -1503,7 +1503,7 @@ public class TvT implements EventTask
{ {
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0)); player.broadcastPacket(new Ride(player.getObjectId(), Ride.ACTION_DISMOUNT, 0));
@@ -428,7 +428,7 @@ class OlympiadGame
// Wind Walk Buff for Both // Wind Walk Buff for Both
Skill skill; Skill skill;
SystemMessage sm; SystemMessage sm;
skill = SkillTable.getInstance().getInfo(1204, 2); skill = SkillTable.getInstance().getSkill(1204, 2);
skill.getEffects(player, player); skill.getEffects(player, player);
player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 2, skill.getHitTime(), 0)); player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 2, skill.getHitTime(), 0));
sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU); sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU);
@@ -437,7 +437,7 @@ class OlympiadGame
if (!player.isMageClass()) if (!player.isMageClass())
{ {
// Haste Buff to Fighters // Haste Buff to Fighters
skill = SkillTable.getInstance().getInfo(1086, 1); skill = SkillTable.getInstance().getSkill(1086, 1);
skill.getEffects(player, player); skill.getEffects(player, player);
player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 1, skill.getHitTime(), 0)); player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 1, skill.getHitTime(), 0));
sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU); sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU);
@@ -447,7 +447,7 @@ class OlympiadGame
else else
{ {
// Acumen Buff to Mages // Acumen Buff to Mages
skill = SkillTable.getInstance().getInfo(1085, 1); skill = SkillTable.getInstance().getSkill(1085, 1);
skill.getEffects(player, player); skill.getEffects(player, player);
player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 1, skill.getHitTime(), 0)); player.broadcastPacket(new MagicSkillUse(player, player, skill.getId(), 1, skill.getHitTime(), 0));
sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU); sm = new SystemMessage(SystemMessageId.THE_EFFECTS_OF_S1_FLOW_THROUGH_YOU);
@@ -212,7 +212,7 @@ public abstract class Inventory extends ItemContainer
if ((item.getItemId() == 9140) && (getOwner() instanceof PlayerInstance)) if ((item.getItemId() == 9140) && (getOwner() instanceof PlayerInstance))
{ {
player = (PlayerInstance) getOwner(); player = (PlayerInstance) getOwner();
skill = SkillTable.getInstance().getInfo(3261, 1); skill = SkillTable.getInstance().getSkill(3261, 1);
player.removeSkill(skill); player.removeSkill(skill);
player.sendSkillList(); player.sendSkillList();
} }
@@ -241,7 +241,7 @@ public abstract class Inventory extends ItemContainer
if ((item.getItemId() == 9140) && (getOwner() instanceof PlayerInstance)) if ((item.getItemId() == 9140) && (getOwner() instanceof PlayerInstance))
{ {
player = (PlayerInstance) getOwner(); player = (PlayerInstance) getOwner();
skill = SkillTable.getInstance().getInfo(3261, 1); skill = SkillTable.getInstance().getSkill(3261, 1);
player.addSkill(skill, false); player.addSkill(skill, false);
player.sendSkillList(); player.sendSkillList();
} }
@@ -407,7 +407,7 @@ public abstract class Inventory extends ItemContainer
{ {
if (armorSet.containAll(player)) if (armorSet.containAll(player))
{ {
final Skill skill = SkillTable.getInstance().getInfo(armorSet.getSkillId(), 1); final Skill skill = SkillTable.getInstance().getSkill(armorSet.getSkillId(), 1);
if (skill != null) if (skill != null)
{ {
player.addSkill(skill, false); player.addSkill(skill, false);
@@ -420,7 +420,7 @@ public abstract class Inventory extends ItemContainer
if (armorSet.containShield(player)) // has shield from set if (armorSet.containShield(player)) // has shield from set
{ {
final Skill skills = SkillTable.getInstance().getInfo(armorSet.getShieldSkillId(), 1); final Skill skills = SkillTable.getInstance().getSkill(armorSet.getShieldSkillId(), 1);
if (skills != null) if (skills != null)
{ {
player.addSkill(skills, false); player.addSkill(skills, false);
@@ -437,7 +437,7 @@ public abstract class Inventory extends ItemContainer
final int skillId = armorSet.getEnchant6skillId(); final int skillId = armorSet.getEnchant6skillId();
if (skillId > 0) if (skillId > 0)
{ {
final Skill skille = SkillTable.getInstance().getInfo(skillId, 1); final Skill skille = SkillTable.getInstance().getSkill(skillId, 1);
if (skille != null) if (skille != null)
{ {
player.addSkill(skille, false); player.addSkill(skille, false);
@@ -455,7 +455,7 @@ public abstract class Inventory extends ItemContainer
{ {
if (armorSet.containAll(player)) if (armorSet.containAll(player))
{ {
final Skill skills = SkillTable.getInstance().getInfo(armorSet.getShieldSkillId(), 1); final Skill skills = SkillTable.getInstance().getSkill(armorSet.getShieldSkillId(), 1);
if (skills != null) if (skills != null)
{ {
player.addSkill(skills, false); player.addSkill(skills, false);
@@ -527,7 +527,7 @@ public abstract class Inventory extends ItemContainer
{ {
if (removeSkillId1 != 0) if (removeSkillId1 != 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(removeSkillId1, 1); final Skill skill = SkillTable.getInstance().getSkill(removeSkillId1, 1);
if (skill != null) if (skill != null)
{ {
player.removeSkill(skill); player.removeSkill(skill);
@@ -540,7 +540,7 @@ public abstract class Inventory extends ItemContainer
if (removeSkillId2 != 0) if (removeSkillId2 != 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(removeSkillId2, 1); final Skill skill = SkillTable.getInstance().getSkill(removeSkillId2, 1);
if (skill != null) if (skill != null)
{ {
player.removeSkill(skill); player.removeSkill(skill);
@@ -553,7 +553,7 @@ public abstract class Inventory extends ItemContainer
if (removeSkillId3 != 0) if (removeSkillId3 != 0)
{ {
final Skill skill = SkillTable.getInstance().getInfo(removeSkillId3, 1); final Skill skill = SkillTable.getInstance().getSkill(removeSkillId3, 1);
if (skill != null) if (skill != null)
{ {
player.removeSkill(skill); player.removeSkill(skill);
@@ -65,7 +65,7 @@ public class Armor extends Item
final int sLv = set.getInt("item_skill_lvl", 0); final int sLv = set.getInt("item_skill_lvl", 0);
if ((sId > 0) && (sLv > 0)) if ((sId > 0) && (sLv > 0))
{ {
_itemSkill = SkillTable.getInstance().getInfo(sId, sLv); _itemSkill = SkillTable.getInstance().getSkill(sId, sLv);
} }
} }
@@ -101,14 +101,14 @@ public class Weapon extends Item
int sLv = set.getInt("item_skill_lvl", 0); int sLv = set.getInt("item_skill_lvl", 0);
if ((sId > 0) && (sLv > 0)) if ((sId > 0) && (sLv > 0))
{ {
_itemSkill = SkillTable.getInstance().getInfo(sId, sLv); _itemSkill = SkillTable.getInstance().getSkill(sId, sLv);
} }
sId = set.getInt("enchant4_skill_id", 0); sId = set.getInt("enchant4_skill_id", 0);
sLv = set.getInt("enchant4_skill_lvl", 0); sLv = set.getInt("enchant4_skill_lvl", 0);
if ((sId > 0) && (sLv > 0)) if ((sId > 0) && (sLv > 0))
{ {
_enchant4Skill = SkillTable.getInstance().getInfo(sId, sLv); _enchant4Skill = SkillTable.getInstance().getSkill(sId, sLv);
} }
sId = set.getInt("onCast_skill_id", 0); sId = set.getInt("onCast_skill_id", 0);
@@ -116,7 +116,7 @@ public class Weapon extends Item
int sCh = set.getInt("onCast_skill_chance", 0); int sCh = set.getInt("onCast_skill_chance", 0);
if ((sId > 0) && (sLv > 0) && (sCh > 0)) if ((sId > 0) && (sLv > 0) && (sCh > 0))
{ {
final Skill skill = SkillTable.getInstance().getInfo(sId, sLv); final Skill skill = SkillTable.getInstance().getSkill(sId, sLv);
skill.attach(new ConditionGameChance(sCh), true); skill.attach(new ConditionGameChance(sCh), true);
attachOnCast(skill); attachOnCast(skill);
} }
@@ -126,7 +126,7 @@ public class Weapon extends Item
sCh = set.getInt("onCrit_skill_chance", 0); sCh = set.getInt("onCrit_skill_chance", 0);
if ((sId > 0) && (sLv > 0) && (sCh > 0)) if ((sId > 0) && (sLv > 0) && (sCh > 0))
{ {
final Skill skill = SkillTable.getInstance().getInfo(sId, sLv); final Skill skill = SkillTable.getInstance().getSkill(sId, sLv);
skill.attach(new ConditionGameChance(sCh), true); skill.attach(new ConditionGameChance(sCh), true);
attachOnCrit(skill); attachOnCrit(skill);
} }
@@ -40,7 +40,7 @@ final class EffectBestowSkill extends Effect
@Override @Override
public void onStart() public void onStart()
{ {
final Skill tempSkill = SkillTable.getInstance().getInfo(getSkill().getTriggeredId(), getSkill().getTriggeredLevel()); final Skill tempSkill = SkillTable.getInstance().getSkill(getSkill().getTriggeredId(), getSkill().getTriggeredLevel());
if (tempSkill != null) if (tempSkill != null)
{ {
getEffected().addSkill(tempSkill); getEffected().addSkill(tempSkill);
@@ -75,7 +75,7 @@ public class EffectForce extends Effect
public void updateBuff() public void updateBuff()
{ {
exit(false); exit(false);
final Skill newSkill = SkillTable.getInstance().getInfo(getSkill().getId(), forces); final Skill newSkill = SkillTable.getInstance().getSkill(getSkill().getId(), forces);
if (newSkill != null) if (newSkill != null)
{ {
newSkill.getEffects(getEffector(), getEffected(), false, false, false); newSkill.getEffects(getEffector(), getEffected(), false, false, false);
@@ -72,6 +72,6 @@ public class EffectFusion extends Effect
private void updateBuff() private void updateBuff()
{ {
exit(false); exit(false);
SkillTable.getInstance().getInfo(getSkill().getId(), _effect).getEffects(getEffector(), getEffected(), false, false, false); SkillTable.getInstance().getSkill(getSkill().getId(), _effect).getEffects(getEffector(), getEffected(), false, false, false);
} }
} }
@@ -49,11 +49,11 @@ public class EffectSignet extends Effect
{ {
if (getSkill() instanceof SkillSignet) if (getSkill() instanceof SkillSignet)
{ {
_skill = SkillTable.getInstance().getInfo(((SkillSignet) getSkill()).effectId, getLevel()); _skill = SkillTable.getInstance().getSkill(((SkillSignet) getSkill()).effectId, getLevel());
} }
else if (getSkill() instanceof SkillSignetCasttime) else if (getSkill() instanceof SkillSignetCasttime)
{ {
_skill = SkillTable.getInstance().getInfo(((SkillSignetCasttime) getSkill()).effectId, getLevel()); _skill = SkillTable.getInstance().getSkill(((SkillSignetCasttime) getSkill()).effectId, getLevel());
} }
_actor = (EffectPointInstance) getEffected(); _actor = (EffectPointInstance) getEffected();
} }
@@ -51,6 +51,6 @@ public class SkillHolder
public Skill getSkill() public Skill getSkill()
{ {
return SkillTable.getInstance().getInfo(_skillId, _skillLvl); return SkillTable.getInstance().getSkill(_skillId, _skillLvl);
} }
} }
@@ -162,7 +162,7 @@ public class EffectZone extends ZoneType
protected Skill getSkill(int skillId, int skillLvl) protected Skill getSkill(int skillId, int skillLvl)
{ {
return SkillTable.getInstance().getInfo(skillId, skillLvl); return SkillTable.getInstance().getSkill(skillId, skillLvl);
} }
public int getChance() public int getChance()
@@ -122,7 +122,7 @@ public class PoisonZone extends ZoneType
public Skill getSkill() public Skill getSkill()
{ {
return SkillTable.getInstance().getInfo(_skillId, _skillLvl); return SkillTable.getInstance().getSkill(_skillId, _skillLvl);
} }
public String getTargetType() public String getTargetType()
@@ -608,7 +608,7 @@ public class GameClient extends MMOClient<MMOConnection<GameClient>> implements
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
if (Olympiad.getInstance().isRegistered(player)) if (Olympiad.getInstance().isRegistered(player))
@@ -679,7 +679,7 @@ public class GameClient extends MMOClient<MMOConnection<GameClient>> implements
if (player.isFlying()) if (player.isFlying())
{ {
player.removeSkill(SkillTable.getInstance().getInfo(4289, 1)); player.removeSkill(SkillTable.getInstance().getSkill(4289, 1));
} }
if (Olympiad.getInstance().isRegistered(player)) if (Olympiad.getInstance().isRegistered(player))
@@ -263,7 +263,7 @@ public class CharacterCreate extends GameClientPacket
for (SkillLearn startSkill : SkillTreeTable.getInstance().getAvailableSkills(newChar, newChar.getClassId())) for (SkillLearn startSkill : SkillTreeTable.getInstance().getAvailableSkills(newChar, newChar.getClassId()))
{ {
newChar.addSkill(SkillTable.getInstance().getInfo(startSkill.getId(), startSkill.getLevel()), true); newChar.addSkill(SkillTable.getInstance().getSkill(startSkill.getId(), startSkill.getLevel()), true);
if ((startSkill.getId() == 1001) || (startSkill.getId() == 1177)) if ((startSkill.getId() == 1001) || (startSkill.getId() == 1177))
{ {
newChar.registerShortCut(new ShortCut(1, 0, 2, startSkill.getId(), 1)); newChar.registerShortCut(new ShortCut(1, 0, 2, startSkill.getId(), 1));
@@ -451,7 +451,7 @@ public class EnterWorld extends GameClientPacket
// Apply night/day bonus on skill Shadow Sense // Apply night/day bonus on skill Shadow Sense
if (player.getRace().ordinal() == 2) if (player.getRace().ordinal() == 2)
{ {
final Skill skill = SkillTable.getInstance().getInfo(294, 1); final Skill skill = SkillTable.getInstance().getSkill(294, 1);
if ((skill != null) && (player.getSkillLevel(294) == 1)) if ((skill != null) && (player.getSkillLevel(294) == 1))
{ {
if (GameTimeController.getInstance().isNowNight()) if (GameTimeController.getInstance().isNowNight())
@@ -572,7 +572,7 @@ public class EnterWorld extends GameClientPacket
if (player.getFirstLog() && Config.NEW_PLAYER_EFFECT) if (player.getFirstLog() && Config.NEW_PLAYER_EFFECT)
{ {
final Skill skill = SkillTable.getInstance().getInfo(2025, 1); final Skill skill = SkillTable.getInstance().getSkill(2025, 1);
if (skill != null) if (skill != null)
{ {
final MagicSkillUse msu = new MagicSkillUse(player, player, 2025, 1, 1, 0); final MagicSkillUse msu = new MagicSkillUse(player, player, 2025, 1, 1, 0);

Some files were not shown because too many files have changed in this diff Show More