Addition of getters for creature template values.

This commit is contained in:
MobiusDevelopment 2020-01-24 19:46:48 +00:00
parent 7960f9fc58
commit d4a8f7b744
75 changed files with 1049 additions and 616 deletions

View File

@ -131,7 +131,7 @@ public class RaidbossInfo extends Quest
for (Spawn spawn : SpawnTable.getInstance().getSpawnTable().values())
{
final NpcTemplate template = NpcTable.getInstance().getTemplate(spawn.getNpcId());
if ((template != null) && template.type.equals(BOSS_CLASS_TYPE))
if ((template != null) && template.getType().equals(BOSS_CLASS_TYPE))
{
RADARS.put(spawn.getNpcId(), new Location(spawn.getX(), spawn.getY(), spawn.getZ()));
}

View File

@ -356,7 +356,7 @@ public class Q336_CoinsOfMagic extends Quest
final int npcId = npc.getNpcId();
if ((npcId == HARIT_LIZARDMAN_MATRIARCH) || (npcId == HARIT_LIZARDMAN_SHAMAN))
{
if ((cond == 2) && (Rnd.get(100) < (10.0 * npc.getTemplate().baseHpConsumeRate)))
if ((cond == 2) && (Rnd.get(100) < (10.0 * npc.getTemplate().getBaseHpConsumeRate())))
{
st.giveItems(KALDIS_COIN, 1);
st.set("cond", "3");
@ -378,7 +378,7 @@ public class Q336_CoinsOfMagic extends Quest
{
if (u == npcId)
{
if (Rnd.get(100) < (chance * npc.getTemplate().baseHpConsumeRate))
if (Rnd.get(100) < (chance * npc.getTemplate().getBaseHpConsumeRate()))
{
st.giveItems(BASIC_COINS[Rnd.get(BASIC_COINS.length)], 1);
}

View File

@ -752,7 +752,7 @@ public class AttackableAI extends CreatureAI
_actor.setTarget(originalAttackTarget);
skills = _actor.getAllSkills();
// dist2 = _actor.getPlanDistanceSq(originalAttackTarget.getX(), originalAttackTarget.getY());
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + originalAttackTarget.getTemplate().collisionRadius;
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + originalAttackTarget.getTemplate().getCollisionRadius();
}
catch (NullPointerException e)
{
@ -761,8 +761,8 @@ public class AttackableAI extends CreatureAI
}
final Weapon weapon = _actor.getActiveWeaponItem();
final int collision = _actor.getTemplate().collisionRadius;
final int combinedCollision = collision + originalAttackTarget.getTemplate().collisionRadius;
final int collision = _actor.getTemplate().getCollisionRadius();
final int combinedCollision = collision + originalAttackTarget.getTemplate().getCollisionRadius();
// ------------------------------------------------------
// In case many mobs are trying to hit from same place, move a bit,

View File

@ -193,7 +193,7 @@ public class ControllableMobAI extends AttackableAI
final Skill[] skills = _actor.getAllSkills();
final double dist2 = _actor.getPlanDistanceSq(target.getX(), target.getY());
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + target.getTemplate().collisionRadius;
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + target.getTemplate().getCollisionRadius();
int maxRange = range;
if (!_actor.isMuted() && (dist2 > ((range + 20) * (range + 20))))
@ -231,7 +231,7 @@ public class ControllableMobAI extends AttackableAI
_actor.setTarget(getForcedTarget());
final Skill[] skills = _actor.getAllSkills();
final double dist2 = _actor.getPlanDistanceSq(getForcedTarget().getX(), getForcedTarget().getY());
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + getForcedTarget().getTemplate().collisionRadius;
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + getForcedTarget().getTemplate().getCollisionRadius();
int maxRange = range;
if (!_actor.isMuted() && (dist2 > ((range + 20) * (range + 20))))
@ -301,7 +301,7 @@ public class ControllableMobAI extends AttackableAI
_actor.setTarget(getAttackTarget());
final Skill[] skills = _actor.getAllSkills();
final double dist2 = _actor.getPlanDistanceSq(getAttackTarget().getX(), getAttackTarget().getY());
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + getAttackTarget().getTemplate().collisionRadius;
final int range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + getAttackTarget().getTemplate().getCollisionRadius();
int maxRange = range;
if (!_actor.isMuted() && (dist2 > ((range + 20) * (range + 20))))

View File

@ -1000,10 +1000,10 @@ public class CreatureAI extends AbstractAI
return false;
}
int offsetWithCollision = offset + _actor.getTemplate().collisionRadius;
int offsetWithCollision = offset + _actor.getTemplate().getCollisionRadius();
if (target instanceof Creature)
{
offsetWithCollision += ((Creature) target).getTemplate().collisionRadius;
offsetWithCollision += ((Creature) target).getTemplate().getCollisionRadius();
}
if (!_actor.isInsideRadius(target, offsetWithCollision, false, false))

View File

@ -610,7 +610,7 @@ public class FortSiegeGuardAI extends CreatureAI implements Runnable
_actor.setTarget(attackTarget);
skills = _actor.getAllSkills();
dist2 = _actor.getPlanDistanceSq(attackTarget.getX(), attackTarget.getY());
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + attackTarget.getTemplate().collisionRadius;
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + attackTarget.getTemplate().getCollisionRadius();
if (attackTarget.isMoving())
{
range += 50;

View File

@ -331,7 +331,7 @@ public class SiegeGuardAI extends CreatureAI implements Runnable
_actor.setTarget(attackTarget);
skills = _actor.getAllSkills();
dist2 = _actor.getPlanDistanceSq(attackTarget.getX(), attackTarget.getY());
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().collisionRadius + attackTarget.getTemplate().collisionRadius;
range = _actor.getPhysicalAttackRange() + _actor.getTemplate().getCollisionRadius() + attackTarget.getTemplate().getCollisionRadius();
}
catch (NullPointerException e)
{

View File

@ -223,7 +223,7 @@ public class CharTemplateTable
ct.addItem(rset.getInt("items" + x));
}
}
_templates.put(ct.classId.getId(), ct);
_templates.put(ct.getClassId().getId(), ct);
}
statement.close();

View File

@ -107,7 +107,7 @@ public class NpcTable
final int skillId = npcskills.getInt("skillid");
final int level = npcskills.getInt("level");
if ((npcDat.race == null) && (skillId == 4416))
if ((npcDat.getRace() == null) && (skillId == 4416))
{
npcDat.setRace(level);
continue;
@ -548,7 +548,8 @@ public class NpcTable
{
categories.addAll(old.getDropData());
}
final ClassId[] classIds = old.getTeachInfo().clone();
final List<ClassId> classIds = old.getTeachInfo();
final List<MinionData> minions = new ArrayList<>();
@ -657,7 +658,7 @@ public class NpcTable
public void replaceTemplate(NpcTemplate npc)
{
_npcs.put(npc.npcId, npc);
_npcs.put(npc.getNpcId(), npc);
}
public NpcTemplate getTemplate(int id)
@ -669,7 +670,7 @@ public class NpcTable
{
for (NpcTemplate npcTemplate : _npcs.values())
{
if (npcTemplate.name.equalsIgnoreCase(name))
if (npcTemplate.getName().equalsIgnoreCase(name))
{
return npcTemplate;
}
@ -684,7 +685,7 @@ public class NpcTable
for (NpcTemplate t : _npcs.values())
{
if (t.level == lvl)
if (t.getLevel() == lvl)
{
list.add(t);
}
@ -699,7 +700,7 @@ public class NpcTable
for (NpcTemplate t : _npcs.values())
{
if ((t.level == lvl) && "Monster".equals(t.type))
if ((t.getLevel() == lvl) && "Monster".equals(t.getType()))
{
list.add(t);
}
@ -714,7 +715,7 @@ public class NpcTable
for (NpcTemplate t : _npcs.values())
{
if (t.name.startsWith(letter) && "Npc".equals(t.type))
if (t.getName().startsWith(letter) && "Npc".equals(t.getType()))
{
list.add(t);
}

View File

@ -82,19 +82,19 @@ public class SpawnTable
template1 = NpcTable.getInstance().getTemplate(rset.getInt("npc_templateid"));
if (template1 != null)
{
if (template1.type.equalsIgnoreCase("SiegeGuard"))
if (template1.getType().equalsIgnoreCase("SiegeGuard"))
{
// Don't spawn
}
else if (template1.type.equalsIgnoreCase("RaidBoss"))
else if (template1.getType().equalsIgnoreCase("RaidBoss"))
{
// Don't spawn raidboss
}
else if (template1.type.equalsIgnoreCase("GrandBoss"))
else if (template1.getType().equalsIgnoreCase("GrandBoss"))
{
// Don't spawn grandboss
}
else if (!Config.ALLOW_CLASS_MASTERS && template1.type.equals("ClassMaster"))
else if (!Config.ALLOW_CLASS_MASTERS && template1.getType().equals("ClassMaster"))
{
// Dont' spawn class masters
}
@ -188,15 +188,15 @@ public class SpawnTable
if (template1 != null)
{
if (template1.type.equalsIgnoreCase("SiegeGuard"))
if (template1.getType().equalsIgnoreCase("SiegeGuard"))
{
// Don't spawn
}
else if (template1.type.equalsIgnoreCase("RaidBoss"))
else if (template1.getType().equalsIgnoreCase("RaidBoss"))
{
// Don't spawn raidboss
}
else if (!Config.ALLOW_CLASS_MASTERS && template1.type.equals("ClassMaster"))
else if (!Config.ALLOW_CLASS_MASTERS && template1.getType().equals("ClassMaster"))
{
// Dont' spawn class masters
}
@ -368,7 +368,7 @@ public class SpawnTable
}
else
{
player.sendMessage(index + " - " + spawn.getTemplate().name + " (" + spawn.getId() + "): " + spawn.getX() + " " + spawn.getY() + " " + spawn.getZ());
player.sendMessage(index + " - " + spawn.getTemplate().getName() + " (" + spawn.getId() + "): " + spawn.getX() + " " + spawn.getY() + " " + spawn.getZ());
}
}
}

View File

@ -407,13 +407,13 @@ public class GeoEngine
double oheight = 0;
if (origin.isCreature())
{
oheight = ((Creature) origin).getTemplate().collisionHeight * 2;
oheight = ((Creature) origin).getTemplate().getCollisionHeight() * 2;
}
double theight = 0;
if (target.isCreature())
{
theight = ((Creature) target).getTemplate().collisionHeight * 2;
theight = ((Creature) target).getTemplate().getCollisionHeight() * 2;
}
// perform geodata check
@ -475,7 +475,7 @@ public class GeoEngine
double oheight = 0;
if (origin.isCreature())
{
oheight = ((Creature) origin).getTemplate().collisionHeight;
oheight = ((Creature) origin).getTemplate().getCollisionHeight();
}
// perform geodata check

View File

@ -503,7 +503,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
player.setBaseClass(classId);
}
final String newclass = player.getTemplate().className;
final String newclass = player.getTemplate().getClassName();
player.store();
if (player != activeChar)
{
@ -992,7 +992,7 @@ public class AdminEditChar implements IAdminCommandHandler
for (int i = CharactersStart; i < charactersEnd; i++)
{
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_info " + players[i].getName() + "\">" + players[i].getName() + "</a></td><td width=110>" + players[i].getTemplate().className + "</td><td width=40>" + players[i].getLevel() + "</td></tr>");
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_info " + players[i].getName() + "\">" + players[i].getName() + "</a></td><td width=110>" + players[i].getTemplate().getClassName() + "</td><td width=40>" + players[i].getLevel() + "</td></tr>");
}
adminReply.replace("%players%", replyMSG.toString());
@ -1038,7 +1038,7 @@ public class AdminEditChar implements IAdminCommandHandler
}
adminReply.replace("%xp%", String.valueOf(player.getExp()));
adminReply.replace("%sp%", String.valueOf(player.getSp()));
adminReply.replace("%class%", player.getTemplate().className);
adminReply.replace("%class%", player.getTemplate().getClassName());
adminReply.replace("%ordinal%", String.valueOf(player.getClassId().ordinal()));
adminReply.replace("%classid%", String.valueOf(player.getClassId()));
adminReply.replace("%x%", String.valueOf(player.getX()));
@ -1215,7 +1215,7 @@ public class AdminEditChar implements IAdminCommandHandler
if (name.toLowerCase().contains(characterToFind.toLowerCase()))
{
charactersFound = charactersFound + 1;
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_list " + name + "\">" + name + "</a></td><td width=110>" + player.getTemplate().className + "</td><td width=40>" + player.getLevel() + "</td></tr>");
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_list " + name + "\">" + name + "</a></td><td width=110>" + player.getTemplate().getClassName() + "</td><td width=40>" + player.getLevel() + "</td></tr>");
}
if (charactersFound > 20)
@ -1341,7 +1341,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
name = player.getName();
charactersFound = charactersFound + 1;
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_list " + name + "\">" + name + "</a></td><td width=110>" + player.getTemplate().className + "</td><td width=40>" + player.getLevel() + "</td></tr>");
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_character_list " + name + "\">" + name + "</a></td><td width=110>" + player.getTemplate().getClassName() + "</td><td width=40>" + player.getLevel() + "</td></tr>");
}
if (charactersFound > 20)

View File

@ -913,46 +913,46 @@ public class AdminEditNpc implements IAdminCommandHandler
if (content != null)
{
adminReply.setHtml(content);
adminReply.replace("%npcId%", String.valueOf(npc.npcId));
adminReply.replace("%templateId%", String.valueOf(npc.idTemplate));
adminReply.replace("%name%", npc.name);
adminReply.replace("%serverSideName%", npc.serverSideName ? "1" : "0");
adminReply.replace("%title%", npc.title);
adminReply.replace("%serverSideTitle%", npc.serverSideTitle ? "1" : "0");
adminReply.replace("%collisionRadius%", String.valueOf(npc.collisionRadius));
adminReply.replace("%collisionHeight%", String.valueOf(npc.collisionHeight));
adminReply.replace("%level%", String.valueOf(npc.level));
adminReply.replace("%sex%", npc.sex);
adminReply.replace("%type%", npc.type);
adminReply.replace("%attackRange%", String.valueOf(npc.baseAtkRange));
adminReply.replace("%hp%", String.valueOf(npc.baseHpMax));
adminReply.replace("%mp%", String.valueOf(npc.baseMpMax));
adminReply.replace("%hpRegen%", String.valueOf(npc.baseHpReg));
adminReply.replace("%mpRegen%", String.valueOf(npc.baseMpReg));
adminReply.replace("%str%", String.valueOf(npc.baseSTR));
adminReply.replace("%con%", String.valueOf(npc.baseCON));
adminReply.replace("%dex%", String.valueOf(npc.baseDEX));
adminReply.replace("%int%", String.valueOf(npc.baseINT));
adminReply.replace("%wit%", String.valueOf(npc.baseWIT));
adminReply.replace("%men%", String.valueOf(npc.baseMEN));
adminReply.replace("%exp%", String.valueOf(npc.rewardExp));
adminReply.replace("%sp%", String.valueOf(npc.rewardSp));
adminReply.replace("%pAtk%", String.valueOf(npc.basePAtk));
adminReply.replace("%pDef%", String.valueOf(npc.basePDef));
adminReply.replace("%mAtk%", String.valueOf(npc.baseMAtk));
adminReply.replace("%mDef%", String.valueOf(npc.baseMDef));
adminReply.replace("%pAtkSpd%", String.valueOf(npc.basePAtkSpd));
adminReply.replace("%aggro%", String.valueOf(npc.aggroRange));
adminReply.replace("%mAtkSpd%", String.valueOf(npc.baseMAtkSpd));
adminReply.replace("%rHand%", String.valueOf(npc.rhand));
adminReply.replace("%lHand%", String.valueOf(npc.lhand));
adminReply.replace("%armor%", String.valueOf(npc.armor));
adminReply.replace("%walkSpd%", String.valueOf(npc.baseWalkSpd));
adminReply.replace("%runSpd%", String.valueOf(npc.baseRunSpd));
adminReply.replace("%factionId%", npc.factionId == null ? "" : npc.factionId);
adminReply.replace("%factionRange%", String.valueOf(npc.factionRange));
adminReply.replace("%isUndead%", npc.isUndead ? "1" : "0");
adminReply.replace("%absorbLevel%", String.valueOf(npc.absorbLevel));
adminReply.replace("%npcId%", String.valueOf(npc.getNpcId()));
adminReply.replace("%templateId%", String.valueOf(npc.getIdTemplate()));
adminReply.replace("%name%", npc.getName());
adminReply.replace("%serverSideName%", npc.isServerSideName() ? "1" : "0");
adminReply.replace("%title%", npc.getTitle());
adminReply.replace("%serverSideTitle%", npc.isServerSideTitle() ? "1" : "0");
adminReply.replace("%collisionRadius%", String.valueOf(npc.getCollisionRadius()));
adminReply.replace("%collisionHeight%", String.valueOf(npc.getCollisionHeight()));
adminReply.replace("%level%", String.valueOf(npc.getLevel()));
adminReply.replace("%sex%", npc.getSex());
adminReply.replace("%type%", npc.getType());
adminReply.replace("%attackRange%", String.valueOf(npc.getBaseAtkRange()));
adminReply.replace("%hp%", String.valueOf(npc.getBaseHpMax()));
adminReply.replace("%mp%", String.valueOf(npc.getBaseMpMax()));
adminReply.replace("%hpRegen%", String.valueOf(npc.getBaseHpReg()));
adminReply.replace("%mpRegen%", String.valueOf(npc.getBaseMpReg()));
adminReply.replace("%str%", String.valueOf(npc.getBaseSTR()));
adminReply.replace("%con%", String.valueOf(npc.getBaseCON()));
adminReply.replace("%dex%", String.valueOf(npc.getBaseDEX()));
adminReply.replace("%int%", String.valueOf(npc.getBaseINT()));
adminReply.replace("%wit%", String.valueOf(npc.getBaseWIT()));
adminReply.replace("%men%", String.valueOf(npc.getBaseMEN()));
adminReply.replace("%exp%", String.valueOf(npc.getRewardExp()));
adminReply.replace("%sp%", String.valueOf(npc.getRewardSp()));
adminReply.replace("%pAtk%", String.valueOf(npc.getBasePAtk()));
adminReply.replace("%pDef%", String.valueOf(npc.getBasePDef()));
adminReply.replace("%mAtk%", String.valueOf(npc.getBaseMAtk()));
adminReply.replace("%mDef%", String.valueOf(npc.getBaseMDef()));
adminReply.replace("%pAtkSpd%", String.valueOf(npc.getBasePAtkSpd()));
adminReply.replace("%aggro%", String.valueOf(npc.getAggroRange()));
adminReply.replace("%mAtkSpd%", String.valueOf(npc.getBaseMAtkSpd()));
adminReply.replace("%rHand%", String.valueOf(npc.getRhand()));
adminReply.replace("%lHand%", String.valueOf(npc.getLhand()));
adminReply.replace("%armor%", String.valueOf(npc.getArmor()));
adminReply.replace("%walkSpd%", String.valueOf(npc.getBaseWalkSpd()));
adminReply.replace("%runSpd%", String.valueOf(npc.getBaseRunSpd()));
adminReply.replace("%factionId%", npc.getFactionId() == null ? "" : npc.getFactionId());
adminReply.replace("%factionRange%", String.valueOf(npc.getFactionRange()));
adminReply.replace("%isUndead%", npc.isUndead() ? "1" : "0");
adminReply.replace("%absorbLevel%", String.valueOf(npc.getAbsorbLevel()));
}
else
{
@ -1213,7 +1213,7 @@ public class AdminEditNpc implements IAdminCommandHandler
final NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
final StringBuilder replyMSG = new StringBuilder("<html><title>NPC: " + npcData.name + "(" + npcData.npcId + ") 's drop manage</title>");
final StringBuilder replyMSG = new StringBuilder("<html><title>NPC: " + npcData.getName() + "(" + npcData.getNpcId() + ") 's drop manage</title>");
replyMSG.append("<body>");
replyMSG.append("<br>Notes: click[drop_id]to show the detail of drop data,click[del] to delete the drop data!");
replyMSG.append("<table>");
@ -1226,10 +1226,10 @@ public class AdminEditNpc implements IAdminCommandHandler
itemTemplate = ItemTable.getInstance().getTemplate(drop.getItemId());
if (itemTemplate == null)
{
LOGGER.warning(getClass().getSimpleName() + ": Unkown item Id: " + drop.getItemId() + " for NPC: " + npcData.npcId);
LOGGER.warning(getClass().getSimpleName() + ": Unkown item Id: " + drop.getItemId() + " for NPC: " + npcData.getNpcId());
continue;
}
replyMSG.append("<tr><td><a action=\"bypass -h admin_edit_drop " + npcData.npcId + " " + drop.getItemId() + " " + cat.getCategoryType() + "\">" + npcData.npcId + " " + drop.getItemId() + " " + cat.getCategoryType() + "</a></td><td>" + itemTemplate.getName() + "[" + drop.getItemId() + "]</td><td>" + (drop.isQuestDrop() ? "Q" : cat.isSweep() ? "S" : "D") + "</td><td><a action=\"bypass -h admin_del_drop " + npcData.npcId + " " + drop.getItemId() + " " + cat.getCategoryType() + "\">del</a></td></tr>");
replyMSG.append("<tr><td><a action=\"bypass -h admin_edit_drop " + npcData.getNpcId() + " " + drop.getItemId() + " " + cat.getCategoryType() + "\">" + npcData.getNpcId() + " " + drop.getItemId() + " " + cat.getCategoryType() + "</a></td><td>" + itemTemplate.getName() + "[" + drop.getItemId() + "]</td><td>" + (drop.isQuestDrop() ? "Q" : cat.isSweep() ? "S" : "D") + "</td><td><a action=\"bypass -h admin_del_drop " + npcData.getNpcId() + " " + drop.getItemId() + " " + cat.getCategoryType() + "\">del</a></td></tr>");
}
}
@ -1258,7 +1258,7 @@ public class AdminEditNpc implements IAdminCommandHandler
if (dropData.next())
{
replyMSG.append("<table>");
replyMSG.append("<tr><td>Appertain of NPC</td><td>" + NpcTable.getInstance().getTemplate(dropData.getInt("mobId")).name + "</td></tr>");
replyMSG.append("<tr><td>Appertain of NPC</td><td>" + NpcTable.getInstance().getTemplate(dropData.getInt("mobId")).getName() + "</td></tr>");
replyMSG.append("<tr><td>ItemName</td><td>" + ItemTable.getInstance().getTemplate(dropData.getInt("itemId")).getName() + "(" + dropData.getInt("itemId") + ")</td></tr>");
replyMSG.append("<tr><td>Category</td><td>" + (category == -1 ? "sweep" : Integer.toString(category)) + "</td></tr>");
replyMSG.append("<tr><td>MIN(" + dropData.getInt("min") + ")</td><td><edit var=\"min\" width=80></td></tr>");
@ -1288,7 +1288,7 @@ public class AdminEditNpc implements IAdminCommandHandler
{
final NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
final StringBuilder replyMSG = new StringBuilder("<html><title>Add dropdata to " + npcData.name + "(" + npcData.npcId + ")</title>");
final StringBuilder replyMSG = new StringBuilder("<html><title>Add dropdata to " + npcData.getName() + "(" + npcData.getNpcId() + ")</title>");
replyMSG.append("<body>");
replyMSG.append("<table>");
replyMSG.append("<tr><td>Item-Id</td><td><edit var=\"itemId\" width=80></td></tr>");
@ -1298,8 +1298,8 @@ public class AdminEditNpc implements IAdminCommandHandler
replyMSG.append("<tr><td>CHANCE(0-1000000)</td><td><edit var=\"chance\" width=80></td></tr>");
replyMSG.append("</table>");
replyMSG.append("<center>");
replyMSG.append("<button value=\"SAVE\" action=\"bypass -h admin_add_drop " + npcData.npcId + " $itemId $category $min $max $chance\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("<br><button value=\"DropList\" action=\"bypass -h admin_show_droplist " + npcData.npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("<button value=\"SAVE\" action=\"bypass -h admin_add_drop " + npcData.getNpcId() + " $itemId $category $min $max $chance\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("<br><button value=\"DropList\" action=\"bypass -h admin_show_droplist " + npcData.getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("</center>");
replyMSG.append("</body></html>");
adminReply.setHtml(replyMSG.toString());

View File

@ -111,7 +111,7 @@ public class AdminExpSp implements IAdminCommandHandler
adminReply.replace("%level%", String.valueOf(player.getLevel()));
adminReply.replace("%xp%", String.valueOf(player.getExp()));
adminReply.replace("%sp%", String.valueOf(player.getSp()));
adminReply.replace("%class%", player.getTemplate().className);
adminReply.replace("%class%", player.getTemplate().getClassName());
activeChar.sendPacket(adminReply);
}

View File

@ -136,11 +136,11 @@ public class AdminFightCalculator implements IAdminCommandHandler
replyMSG.append("<table>");
replyMSG.append("<tr><td>First</td><td>Second</td></tr>");
replyMSG.append("<tr><td>level " + lvl1 + "</td><td>level " + lvl2 + "</td></tr>");
replyMSG.append("<tr><td>id " + npc1.npcId + "</td><td>id " + npc2.npcId + "</td></tr>");
replyMSG.append("<tr><td>" + npc1.name + "</td><td>" + npc2.name + "</td></tr>");
replyMSG.append("<tr><td>id " + npc1.getNpcId() + "</td><td>id " + npc2.getNpcId() + "</td></tr>");
replyMSG.append("<tr><td>" + npc1.getName() + "</td><td>" + npc2.getName() + "</td></tr>");
replyMSG.append("</table>");
replyMSG.append("<center><br><br><br>");
replyMSG.append("<button value=\"OK\" action=\"bypass -h admin_fight_calculator_show " + npc1.npcId + " " + npc2.npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("<button value=\"OK\" action=\"bypass -h admin_fight_calculator_show " + npc1.getNpcId() + " " + npc2.getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("</center>");
replyMSG.append("</body></html>");
}
@ -153,7 +153,7 @@ public class AdminFightCalculator implements IAdminCommandHandler
for (NpcTemplate n : npcs)
{
replyMSG.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + n.npcId + " mid2 " + mid2 + "\">" + n.name + "</a></td></tr>");
replyMSG.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + n.getNpcId() + " mid2 " + mid2 + "\">" + n.getName() + "</a></td></tr>");
}
replyMSG.append("</table></body></html>");
@ -167,7 +167,7 @@ public class AdminFightCalculator implements IAdminCommandHandler
for (NpcTemplate n : npcs)
{
replyMSG.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + mid1 + " mid2 " + n.npcId + "\">" + n.name + "</a></td></tr>");
replyMSG.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + mid1 + " mid2 " + n.getNpcId() + "\">" + n.getName() + "</a></td></tr>");
}
replyMSG.append("</table></body></html>");
@ -369,7 +369,7 @@ public class AdminFightCalculator implements IAdminCommandHandler
}
else
{
replyMSG.append("<tr><td width=140>Parameter</td><td width=70>" + ((NpcTemplate) npc1.getTemplate()).name + "</td><td width=70>" + ((NpcTemplate) npc2.getTemplate()).name + "</td></tr>");
replyMSG.append("<tr><td width=140>Parameter</td><td width=70>" + ((NpcTemplate) npc1.getTemplate()).getName() + "</td><td width=70>" + ((NpcTemplate) npc2.getTemplate()).getName() + "</td></tr>");
}
replyMSG.append("<tr><td>miss</td><td>" + miss1 + "%</td><td>" + miss2 + "%</td></tr>");
@ -412,7 +412,7 @@ public class AdminFightCalculator implements IAdminCommandHandler
}
else
{
replyMSG.append("<button value=\"Retry\" action=\"bypass -h admin_fight_calculator_show " + ((NpcTemplate) npc1.getTemplate()).npcId + " " + ((NpcTemplate) npc2.getTemplate()).npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
replyMSG.append("<button value=\"Retry\" action=\"bypass -h admin_fight_calculator_show " + ((NpcTemplate) npc1.getTemplate()).getNpcId() + " " + ((NpcTemplate) npc2.getTemplate()).getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
}
replyMSG.append("</center>");

View File

@ -166,7 +166,7 @@ public class AdminMammon implements IAdminCommandHandler
else
{
params[1] = params[1].replace('_', ' ');
npcId = NpcTable.getInstance().getTemplateByName(params[1]).npcId;
npcId = NpcTable.getInstance().getTemplateByName(params[1]).getNpcId();
}
if (params.length > 2)

View File

@ -650,7 +650,7 @@ public class AdminMobGroup implements IAdminCommandHandler
for (MobGroup mobGroup : mobGroupList)
{
activeChar.sendMessage(mobGroup.getGroupId() + ": " + mobGroup.getActiveMobCount() + " alive out of " + mobGroup.getMaxMobCount() + " of NPC ID " + mobGroup.getTemplate().npcId + " (" + mobGroup.getStatus() + ")");
activeChar.sendMessage(mobGroup.getGroupId() + ": " + mobGroup.getActiveMobCount() + " alive out of " + mobGroup.getMaxMobCount() + " of NPC ID " + mobGroup.getTemplate().getNpcId() + " (" + mobGroup.getStatus() + ")");
}
activeChar.sendPacket(SystemMessageId.FRIEND_LIST_FOOT);

View File

@ -288,7 +288,7 @@ public class AdminSkill implements IAdminCommandHandler
replyMSG.append("</tr></table>");
replyMSG.append("<br><br>");
replyMSG.append("<center>Editing <font color=\"LEVEL\">" + player.getName() + "</font></center>");
replyMSG.append("<br><table width=270><tr><td>Lv: " + player.getLevel() + " " + player.getTemplate().className + "</td></tr></table>");
replyMSG.append("<br><table width=270><tr><td>Lv: " + player.getLevel() + " " + player.getTemplate().getClassName() + "</td></tr></table>");
replyMSG.append("<br><table width=270><tr><td>Note: Dont forget that modifying players skills can</td></tr>");
replyMSG.append("<tr><td>ruin the game...</td></tr></table>");
replyMSG.append("<br><center>Click on the skill you wish to remove:</center>");
@ -343,7 +343,7 @@ public class AdminSkill implements IAdminCommandHandler
adminReply.setFile("data/html/admin/charskills.htm");
adminReply.replace("%name%", player.getName());
adminReply.replace("%level%", String.valueOf(player.getLevel()));
adminReply.replace("%class%", player.getTemplate().className);
adminReply.replace("%class%", player.getTemplate().getClassName());
activeChar.sendPacket(adminReply);
}

View File

@ -310,7 +310,7 @@ public class AdminSpawn implements IAdminCommandHandler
if (RaidBossSpawnManager.getInstance().isDefined(spawn.getNpcId()) || GrandBossManager.getInstance().isDefined(spawn.getNpcId()))
{
BuilderUtil.sendSysMessage(activeChar, "Another instance of " + template1.name + " already present into database:");
BuilderUtil.sendSysMessage(activeChar, "Another instance of " + template1.getName() + " already present into database:");
BuilderUtil.sendSysMessage(activeChar, "It will be spawned but not saved on Database");
BuilderUtil.sendSysMessage(activeChar, "After server restart or raid dead, the spawned npc will desappear");
permanent = false;
@ -333,7 +333,7 @@ public class AdminSpawn implements IAdminCommandHandler
spawn.stopRespawn();
}
BuilderUtil.sendSysMessage(activeChar, "Created " + template1.name + " on " + target.getObjectId());
BuilderUtil.sendSysMessage(activeChar, "Created " + template1.getName() + " on " + target.getObjectId());
}
catch (Exception e)
{
@ -356,7 +356,7 @@ public class AdminSpawn implements IAdminCommandHandler
boolean ended = true;
for (int i = from; i < mobs.length; i++)
{
final String txt = "<a action=\"bypass -h admin_spawn_monster " + mobs[i].npcId + "\">" + mobs[i].name + "</a><br1>";
final String txt = "<a action=\"bypass -h admin_spawn_monster " + mobs[i].getNpcId() + "\">" + mobs[i].getName() + "</a><br1>";
if ((tb.length() + txt.length() + end2.length()) > 8192)
{
@ -396,7 +396,7 @@ public class AdminSpawn implements IAdminCommandHandler
boolean ended = true;
for (int i = from; i < mobs.length; i++)
{
final String txt = "<a action=\"bypass -h admin_spawn_monster " + mobs[i].npcId + "\">" + mobs[i].name + "</a><br1>";
final String txt = "<a action=\"bypass -h admin_spawn_monster " + mobs[i].getNpcId() + "\">" + mobs[i].getName() + "</a><br1>";
if ((tb.length() + txt.length() + end2.length()) > 8192)
{

View File

@ -590,7 +590,7 @@ public class AdminTeleport implements IAdminCommandHandler
{
final NpcInstance target = (NpcInstance) obj;
final int monsterTemplate = target.getTemplate().npcId;
final int monsterTemplate = target.getTemplate().getNpcId();
final NpcTemplate template1 = NpcTable.getInstance().getTemplate(monsterTemplate);
@ -632,7 +632,7 @@ public class AdminTeleport implements IAdminCommandHandler
spawn.init();
final SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
sm.addString("Created " + template1.name + " on " + target.getObjectId() + ".");
sm.addString("Created " + template1.getName() + " on " + target.getObjectId() + ".");
activeChar.sendPacket(sm);
}
catch (Exception e)

View File

@ -63,12 +63,12 @@ public class AdminTest implements IAdminCommandHandler
final Creature target = (Creature) activeChar.getTarget();
BuilderUtil.sendSysMessage(activeChar, "Activechar Mcrit " + activeChar.getMCriticalHit(null, null));
BuilderUtil.sendSysMessage(activeChar, "Activechar baseMCritRate " + activeChar.getTemplate().baseMCritRate);
BuilderUtil.sendSysMessage(activeChar, "Activechar baseMCritRate " + activeChar.getTemplate().getBaseMCritRate());
if (target != null)
{
BuilderUtil.sendSysMessage(activeChar, "Target Mcrit " + target.getMCriticalHit(null, null));
BuilderUtil.sendSysMessage(activeChar, "Target baseMCritRate " + target.getTemplate().baseMCritRate);
BuilderUtil.sendSysMessage(activeChar, "Target baseMCritRate " + target.getTemplate().getBaseMCritRate());
}
}
if (command.equals("admin_addbufftest"))

View File

@ -75,7 +75,7 @@ public class JackpotSeed implements IItemHandler
gourd.setOwner(player.getName());
player.destroyItem("Consume", item.getObjectId(), 1, null, false);
final SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
sm.addString("Created " + template1.name + " at x: " + spawn.getX() + " y: " + spawn.getY() + " z: " + spawn.getZ());
sm.addString("Created " + template1.getName() + " at x: " + spawn.getX() + " y: " + spawn.getY() + " z: " + spawn.getZ());
player.sendPacket(sm);
}
catch (Exception e)

View File

@ -153,7 +153,7 @@ public class SummonItems implements IItemHandler
spawn.setZ(player.getZ());
World.getInstance().storeObject(spawn.doSpawn());
player.destroyItem("Summon", item.getObjectId(), 1, null, false);
player.sendMessage("Created " + npcTemplate.name + " at x: " + spawn.getX() + " y: " + spawn.getY() + " z: " + spawn.getZ());
player.sendMessage("Created " + npcTemplate.getName() + " at x: " + spawn.getX() + " y: " + spawn.getY() + " z: " + spawn.getZ());
}
catch (Exception e)
{

View File

@ -97,7 +97,7 @@ public class Mount implements IUserCommandHandler
return false;
}
final Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, pet.getTemplate().npcId);
final Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, pet.getTemplate().getNpcId());
Broadcast.toSelfAndKnownPlayersInRadius(player, mount, 810000/* 900 */);
player.setMountType(mount.getMountType());
player.setMountObjectID(pet.getControlItemId());

View File

@ -448,7 +448,7 @@ public class GrandBossManager
return null;
}
if (!template.type.equalsIgnoreCase("GrandBoss"))
if (!template.getType().equalsIgnoreCase("GrandBoss"))
{
return null;
}

View File

@ -484,7 +484,7 @@ public class RaidBossSpawnManager
return null;
}
if (!template.type.equalsIgnoreCase("RaidBoss"))
if (!template.getType().equalsIgnoreCase("RaidBoss"))
{
return null;
}

View File

@ -1965,7 +1965,7 @@ public class Attackable extends NpcInstance
// Instant Item Drop :>
final double rateHp = getStat().calcStat(Stats.MAX_HP, 1, this, null);
if ((rateHp < 2) && npcTemplate.type.contentEquals("Monster")) // only Monster with <= 1x HP can drop herbs
if ((rateHp < 2) && npcTemplate.getType().contentEquals("Monster")) // only Monster with <= 1x HP can drop herbs
{
boolean hp = false;
boolean mp = false;
@ -2670,7 +2670,7 @@ public class Attackable extends NpcInstance
boolean doLevelup = true;
final boolean isBossMob = maxAbsorbLevel > 10;
final NpcTemplate.AbsorbCrystalType absorbType = getTemplate().absorbType;
final NpcTemplate.AbsorbCrystalType absorbType = getTemplate().getAbsorbType();
final PlayerInstance killer = attacker instanceof Summon ? ((Summon) attacker).getOwner() : (PlayerInstance) attacker;
@ -3194,7 +3194,7 @@ public class Attackable extends NpcInstance
private int getAbsorbLevel()
{
return getTemplate().absorbLevel;
return getTemplate().getAbsorbLevel();
}
/**

View File

@ -923,7 +923,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if ((target instanceof NpcInstance) && Config.DISABLE_ATTACK_NPC_TYPE)
{
final String mobtype = ((NpcInstance) target).getTemplate().type;
final String mobtype = ((NpcInstance) target).getTemplate().getType();
if (!Config.LIST_ALLOWED_NPC_TYPES.contains(mobtype))
{
final SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
@ -1665,7 +1665,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if ((creature instanceof PlayerInstance) && (target instanceof NpcInstance) && Config.DISABLE_ATTACK_NPC_TYPE)
{
final String mobtype = ((NpcInstance) target).getTemplate().type;
final String mobtype = ((NpcInstance) target).getTemplate().getType();
if (!Config.LIST_ALLOWED_NPC_TYPES.contains(mobtype))
{
final SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
@ -2838,7 +2838,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
*/
public boolean isUndead()
{
return _template.isUndead;
return _template.isUndead();
}
@Override
@ -6480,7 +6480,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if (this instanceof Summon)
{
final int mobId = ((Summon) this).getTemplate().npcId;
final int mobId = ((Summon) this).getTemplate().getNpcId();
sm.addNpcName(mobId);
}
else
@ -6528,14 +6528,14 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
{
MonsterInstance bossInstance = null;
if (bossTemplate.type.equals("RaidBoss"))
if (bossTemplate.getType().equals("RaidBoss"))
{
if (RaidBossSpawnManager.getInstance().getStatsSet(bossId) != null)
{
bossInstance = RaidBossSpawnManager.getInstance().getBoss(bossId);
}
}
else if (bossTemplate.type.equals("GrandBoss"))
else if (bossTemplate.getType().equals("GrandBoss"))
{
if (GrandBossManager.getInstance().getStatsSet(bossId) != null)
{
@ -6897,7 +6897,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
if ((target instanceof NpcInstance) && Config.DISABLE_ATTACK_NPC_TYPE)
{
final String mobtype = ((NpcInstance) target).getTemplate().type;
final String mobtype = ((NpcInstance) target).getTemplate().getType();
if (Config.LIST_ALLOWED_NPC_TYPES.contains(mobtype))
{
return false;
@ -8360,14 +8360,14 @@ public abstract class Creature extends WorldObject implements ISkillsHolder
{
MonsterInstance bossInstance = null;
if (bossTemplate.type.equals("RaidBoss"))
if (bossTemplate.getType().equals("RaidBoss"))
{
if (RaidBossSpawnManager.getInstance().getStatsSet(bossId) != null)
{
bossInstance = RaidBossSpawnManager.getInstance().getBoss(bossId);
}
}
else if (bossTemplate.type.equals("GrandBoss"))
else if (bossTemplate.getType().equals("GrandBoss"))
{
if (GrandBossManager.getInstance().getStatsSet(bossId) != null)
{

View File

@ -277,7 +277,7 @@ public abstract class Summon extends Playable
public int getNpcId()
{
return getTemplate().npcId;
return getTemplate().getNpcId();
}
@Override

View File

@ -536,7 +536,7 @@ public class CastleChamberlainInstance extends FolkInstance
}
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
html.setFile("data/html/chamberlain/" + getTemplate().npcId + "-d.htm");
html.setFile("data/html/chamberlain/" + getTemplate().getNpcId() + "-d.htm");
html.replace("%objectId%", String.valueOf(getObjectId()));
html.replace("%npcname%", getName());
player.sendPacket(html);

View File

@ -72,7 +72,7 @@ public class ChestInstance extends MonsterInstance
@Override
public void doItemDrop(NpcTemplate npcTemplate, Creature lastAttacker)
{
int id = getTemplate().npcId;
int id = getTemplate().getNpcId();
if (!_specialDrop)
{
@ -115,7 +115,7 @@ public class ChestInstance extends MonsterInstance
int trapSkillId = 0;
final int rnd = Rnd.get(120);
if (getTemplate().level >= 61)
if (getTemplate().getLevel() >= 61)
{
if (rnd >= 90)
{
@ -134,7 +134,7 @@ public class ChestInstance extends MonsterInstance
trapSkillId = 223; // sting
}
}
else if (getTemplate().level >= 41)
else if (getTemplate().getLevel() >= 41)
{
if (rnd >= 90)
{
@ -153,7 +153,7 @@ public class ChestInstance extends MonsterInstance
trapSkillId = 4118; // area paralysys
}
}
else if (getTemplate().level >= 21)
else if (getTemplate().getLevel() >= 21)
{
if (rnd >= 80)
{
@ -192,7 +192,7 @@ public class ChestInstance extends MonsterInstance
private boolean handleCast(Creature creature, int skillId)
{
int skillLevel = 1;
final byte lvl = getTemplate().level;
final byte lvl = getTemplate().getLevel();
if ((lvl > 20) && (lvl <= 40))
{
skillLevel = 3;

View File

@ -304,7 +304,7 @@ public class CubicInstance
public int getMCriticalHit(Creature target, Skill skill)
{
// TODO: Temporary now mcrit for cubics is the baseMCritRate of its owner
return _owner.getTemplate().baseMCritRate;
return _owner.getTemplate().getBaseMCritRate();
}
/**

View File

@ -257,20 +257,20 @@ public class DoormanInstance extends FolkInstance
public void showMessageWindow(PlayerInstance player)
{
player.sendPacket(ActionFailed.STATIC_PACKET);
String filename = "data/html/doorman/" + getTemplate().npcId + "-no.htm";
String filename = "data/html/doorman/" + getTemplate().getNpcId() + "-no.htm";
final int condition = validateCondition(player);
if (condition == COND_BUSY_BECAUSE_OF_SIEGE)
{
filename = "data/html/doorman/" + getTemplate().npcId + "-busy.htm"; // Busy because of siege
filename = "data/html/doorman/" + getTemplate().getNpcId() + "-busy.htm"; // Busy because of siege
}
else if (condition == COND_CASTLE_OWNER)
{
filename = "data/html/doorman/" + getTemplate().npcId + ".htm"; // Owner message window
filename = "data/html/doorman/" + getTemplate().getNpcId() + ".htm"; // Owner message window
}
else if (condition == COND_FORT_OWNER)
{
filename = "data/html/doorman/fortress/" + getTemplate().npcId + ".htm"; // Owner message window
filename = "data/html/doorman/fortress/" + getTemplate().getNpcId() + ".htm"; // Owner message window
}
// Prepare doorman for clan hall

View File

@ -16,6 +16,8 @@
*/
package org.l2jmobius.gameserver.model.actor.instance;
import java.util.List;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.datatables.SkillTable;
import org.l2jmobius.gameserver.datatables.sql.SkillTreeTable;
@ -36,7 +38,7 @@ import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
*/
public class FolkInstance extends NpcInstance
{
private final ClassId[] _classesToTeach;
private final List<ClassId> _classesToTeach;
/**
* Instantiates a new l2 folk instance.
@ -63,7 +65,7 @@ public class FolkInstance extends NpcInstance
*/
public void showSkillList(PlayerInstance player, ClassId classId)
{
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
if (_classesToTeach == null)
{
@ -145,7 +147,7 @@ public class FolkInstance extends NpcInstance
*/
public void showEnchantSkillList(PlayerInstance player, ClassId classId)
{
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
if (_classesToTeach == null)
{
@ -268,7 +270,7 @@ public class FolkInstance extends NpcInstance
}
// make a list of classes
if (_classesToTeach.length != 0)
if (!_classesToTeach.isEmpty())
{
int count = 0;
ClassId classCheck = player.getClassId();

View File

@ -69,7 +69,7 @@ public class GourdInstance extends MonsterInstance
{
damage = 0;
}
if ((getTemplate().npcId == 12778) || (getTemplate().npcId == 12779))
if ((getTemplate().getNpcId() == 12778) || (getTemplate().getNpcId() == 12779))
{
if ((attacker.getActiveWeaponInstance().getItemId() == 4202) || (attacker.getActiveWeaponInstance().getItemId() == 5133) || (attacker.getActiveWeaponInstance().getItemId() == 5817) || (attacker.getActiveWeaponInstance().getItemId() == 7058))
{

View File

@ -203,7 +203,7 @@ public class MerchantInstance extends FolkInstance
*/
public void showRentPetWindow(PlayerInstance player)
{
if (!Config.LIST_PET_RENT_NPC.contains(getTemplate().npcId))
if (!Config.LIST_PET_RENT_NPC.contains(getTemplate().getNpcId()))
{
return;
}
@ -316,7 +316,7 @@ public class MerchantInstance extends FolkInstance
html1.append("<tr><td><br></td></tr>");
html1.append("<tr><td>Object ID: " + getObjectId() + "</td></tr>");
html1.append("<tr><td>Template ID: " + getTemplate().npcId + "</td></tr>");
html1.append("<tr><td>Template ID: " + getTemplate().getNpcId() + "</td></tr>");
html1.append("<tr><td><br></td></tr>");
html1.append("<tr><td>HP: " + getCurrentHp() + "</td></tr>");
@ -327,15 +327,15 @@ public class MerchantInstance extends FolkInstance
html1.append("<tr><td>Class: " + getClass().getName() + "</td></tr>");
html1.append("<tr><td><br></td></tr>");
html1.append("</table><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td>");
html1.append("</table><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td>");
html1.append("<td><button value=\"Kill\" action=\"bypass -h admin_kill\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<td><button value=\"Delete\" action=\"bypass -h admin_delete\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("</table>");
if (player.isGM())
{
html1.append("<button value=\"View Shop\" action=\"bypass -h admin_showShop " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></br>");
html1.append("<button value=\"View Shop\" action=\"bypass -h admin_showShop " + getTemplate().getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></br>");
html1.append("<button value=\"Lease next week\" action=\"bypass -h npc_" + getObjectId() + "_Lease\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
html1.append("<button value=\"Abort current leasing\" action=\"bypass -h npc_" + getObjectId() + "_Lease next\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
html1.append("<button value=\"Manage items\" action=\"bypass -h npc_" + getObjectId() + "_Lease manage\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");

View File

@ -110,7 +110,7 @@ public class MonsterInstance extends Attackable
@Override
public boolean isAggressive()
{
return (getTemplate().aggroRange > 0) && !isEventMob;
return (getTemplate().getAggroRange() > 0) && !isEventMob;
}
@Override
@ -139,7 +139,7 @@ public class MonsterInstance extends Attackable
{
}
switch (getTemplate().npcId)
switch (getTemplate().getNpcId())
{
case 12372: // baium
{

View File

@ -228,14 +228,14 @@ public class NpcInstance extends Creature
initCharStatusUpdateValues();
// initialize the "current" equipment
_currentLHandId = getTemplate().lhand;
_currentRHandId = getTemplate().rhand;
_currentLHandId = getTemplate().getLhand();
_currentRHandId = getTemplate().getRhand();
// initialize the "current" collisions
_currentCollisionHeight = getTemplate().collisionHeight;
_currentCollisionRadius = getTemplate().collisionRadius;
_currentCollisionHeight = getTemplate().getCollisionHeight();
_currentCollisionRadius = getTemplate().getCollisionRadius();
// Set the name of the Creature
setName(template.name);
setName(template.getName());
}
public int getScriptValue()
@ -303,7 +303,7 @@ public class NpcInstance extends Creature
*/
public int getNpcId()
{
return getTemplate().npcId;
return getTemplate().getNpcId();
}
@Override
@ -323,7 +323,7 @@ public class NpcInstance extends Creature
*/
public String getFactionId()
{
return getTemplate().factionId;
return getTemplate().getFactionId();
}
/**
@ -334,7 +334,7 @@ public class NpcInstance extends Creature
@Override
public int getLevel()
{
return getTemplate().level;
return getTemplate().getLevel();
}
/**
@ -354,7 +354,7 @@ public class NpcInstance extends Creature
*/
public int getAggroRange()
{
return getTemplate().aggroRange;
return getTemplate().getAggroRange();
}
/**
@ -364,7 +364,7 @@ public class NpcInstance extends Creature
*/
public int getFactionRange()
{
return getTemplate().factionRange;
return getTemplate().getFactionRange();
}
/**
@ -375,7 +375,7 @@ public class NpcInstance extends Creature
@Override
public boolean isUndead()
{
return getTemplate().isUndead;
return getTemplate().isUndead();
}
/**
@ -847,7 +847,7 @@ public class NpcInstance extends Creature
final String className = getClass().getSimpleName();
html1.append("<br>");
html1.append("Instance Type: " + className + "<br1>Faction: " + getTemplate().factionId + "<br1>Location ID: " + (_spawn != null ? _spawn.getLocation() : 0) + "<br1>");
html1.append("Instance Type: " + className + "<br1>Faction: " + getTemplate().getFactionId() + "<br1>Location ID: " + (_spawn != null ? _spawn.getLocation() : 0) + "<br1>");
if (this instanceof ControllableMobInstance)
{
@ -859,9 +859,9 @@ public class NpcInstance extends Creature
}
html1.append("<table border=\"0\" width=\"100%\">");
html1.append("<tr><td>Object ID</td><td>" + getObjectId() + "</td><td>NPC ID</td><td>" + getTemplate().npcId + "</td></tr>");
html1.append("<tr><td>Object ID</td><td>" + getObjectId() + "</td><td>NPC ID</td><td>" + getTemplate().getNpcId() + "</td></tr>");
html1.append("<tr><td>Castle</td><td>" + getCastle().getCastleId() + "</td><td>Coords</td><td>" + getX() + "," + getY() + "," + getZ() + "</td></tr>");
html1.append("<tr><td>Level</td><td>" + getTemplate().level + "</td><td>Aggro</td><td>" + (this instanceof Attackable ? ((Attackable) this).getAggroRange() : 0) + "</td></tr>");
html1.append("<tr><td>Level</td><td>" + getTemplate().getLevel() + "</td><td>Aggro</td><td>" + (this instanceof Attackable ? ((Attackable) this).getAggroRange() : 0) + "</td></tr>");
html1.append("</table><br>");
html1.append("<font color=\"LEVEL\">Combat</font>");
@ -881,11 +881,11 @@ public class NpcInstance extends Creature
html1.append("<tr><td>INT</td><td>" + getINT() + "</td><td>WIT</td><td>" + getWIT() + "</td><td>MEN</td><td>" + getMEN() + "</td></tr>");
html1.append("</table>");
html1.append("<br><center><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br1></td>");
html1.append("<br><center><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br1></td>");
html1.append("<td><button value=\"Kill\" action=\"bypass -h admin_kill\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td><br1></tr>");
html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().getNpcId() + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<td><button value=\"Delete\" action=\"bypass -h admin_delete\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<tr><td><button value=\"Show Skillist\" action=\"bypass -h admin_show_skilllist_npc " + getTemplate().npcId + "\" width=100 height=20 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td><td></td></tr>");
html1.append("<tr><td><button value=\"Show Skillist\" action=\"bypass -h admin_show_skilllist_npc " + getTemplate().getNpcId() + "\" width=100 height=20 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td><td></td></tr>");
html1.append("</table></center><br>");
html1.append("</body></html>");
@ -923,7 +923,7 @@ public class NpcInstance extends Creature
html1.append("<tr><td>Accuracy</td><td>" + getAccuracy() + "</td><td>Evasion</td><td>" + getEvasionRate(null) + "</td></tr>");
html1.append("<tr><td>Critical</td><td>" + getCriticalHit(null, null) + "</td><td>Speed</td><td>" + getRunSpeed() + "</td></tr>");
html1.append("<tr><td>Atk.Speed</td><td>" + getPAtkSpd() + "</td><td>Cast.Speed</td><td>" + getMAtkSpd() + "</td></tr>");
html1.append("<tr><td>Race</td><td>" + getTemplate().race + "</td><td></td><td></td></tr>");
html1.append("<tr><td>Race</td><td>" + getTemplate().getRace() + "</td><td></td><td></td></tr>");
html1.append("</table>");
html1.append("<br><center><font color=\"LEVEL\">[Basic Stats]</font></center>");
@ -1583,7 +1583,7 @@ public class NpcInstance extends Creature
public Weapon getActiveWeaponItem()
{
// Get the weapon identifier equiped in the right hand of the NpcInstance
final int weaponId = getTemplate().rhand;
final int weaponId = getTemplate().getRhand();
if (weaponId < 1)
{
@ -1591,7 +1591,7 @@ public class NpcInstance extends Creature
}
// Get the weapon item equiped in the right hand of the NpcInstance
final Item item = ItemTable.getInstance().getTemplate(getTemplate().rhand);
final Item item = ItemTable.getInstance().getTemplate(getTemplate().getRhand());
if (!(item instanceof Weapon))
{
@ -1653,7 +1653,7 @@ public class NpcInstance extends Creature
public Weapon getSecondaryWeaponItem()
{
// Get the weapon identifier equiped in the right hand of the NpcInstance
final int weaponId = getTemplate().lhand;
final int weaponId = getTemplate().getLhand();
if (weaponId < 1)
{
@ -1661,7 +1661,7 @@ public class NpcInstance extends Creature
}
// Get the weapon item equiped in the right hand of the NpcInstance
final Item item = ItemTable.getInstance().getTemplate(getTemplate().lhand);
final Item item = ItemTable.getInstance().getTemplate(getTemplate().getLhand());
if (!(item instanceof Weapon))
{
@ -1878,7 +1878,7 @@ public class NpcInstance extends Creature
// collect awaiting quests and start points
final List<Quest> options = new ArrayList<>();
final List<QuestState> awaits = player.getQuestsForTalk(getTemplate().npcId);
final List<QuestState> awaits = player.getQuestsForTalk(getTemplate().getNpcId());
final List<Quest> starts = getTemplate().getEventQuests(EventType.QUEST_START);
// Quests are limited between 1 and 999 because those are the quests that are supported by the client.
@ -1949,7 +1949,7 @@ public class NpcInstance extends Creature
// >24 - check lottery ticket by item object id
public void showLotoWindow(PlayerInstance player, int val)
{
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
String filename;
SystemMessage sm;
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
@ -2207,7 +2207,7 @@ public class NpcInstance extends Creature
*/
public void makeCPRecovery(PlayerInstance player)
{
if ((getTemplate().npcId != 31225) && (getTemplate().npcId != 31226))
if ((getTemplate().getNpcId() != 31225) && (getTemplate().getNpcId() != 31226))
{
return;
}
@ -2400,12 +2400,12 @@ public class NpcInstance extends Creature
}
}
if ((getTemplate().type == "Auctioneer") && (val == 0))
if ((getTemplate().getType() == "Auctioneer") && (val == 0))
{
return;
}
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
/* For use with Seven Signs implementation */
String filename = SevenSigns.SEVEN_SIGNS_HTML_PATH;
@ -2913,7 +2913,7 @@ public class NpcInstance extends Creature
public int getExpReward()
{
final double rateXp = getStat().calcStat(Stats.MAX_HP, 1, this, null);
return (int) (getTemplate().rewardExp * rateXp * Config.RATE_XP);
return (int) (getTemplate().getRewardExp() * rateXp * Config.RATE_XP);
}
/**
@ -2924,7 +2924,7 @@ public class NpcInstance extends Creature
public int getSpReward()
{
final double rateSp = getStat().calcStat(Stats.MAX_HP, 1, this, null);
return (int) (getTemplate().rewardSp * rateSp * Config.RATE_SP);
return (int) (getTemplate().getRewardSp() * rateSp * Config.RATE_SP);
}
/**
@ -2956,10 +2956,10 @@ public class NpcInstance extends Creature
}
// Normally this wouldn't really be needed, but for those few exceptions, we do need to reset the weapons back to the initial templated weapon.
_currentLHandId = getTemplate().lhand;
_currentRHandId = getTemplate().rhand;
_currentCollisionHeight = getTemplate().collisionHeight;
_currentCollisionRadius = getTemplate().collisionRadius;
_currentLHandId = getTemplate().getLhand();
_currentRHandId = getTemplate().getRhand();
_currentCollisionHeight = getTemplate().getCollisionHeight();
_currentCollisionRadius = getTemplate().getCollisionRadius();
DecayTaskManager.getInstance().addDecayTask(this);
return true;
}
@ -3073,7 +3073,7 @@ public class NpcInstance extends Creature
@Override
public String toString()
{
return getTemplate().name;
return getTemplate().getName();
}
/**

View File

@ -81,7 +81,7 @@ public class PetInstance extends Summon
{
if (_data == null)
{
_data = PetDataTable.getInstance().getPetData(getTemplate().npcId, getStat().getLevel());
_data = PetDataTable.getInstance().getPetData(getTemplate().getNpcId(), getStat().getLevel());
}
return _data;
@ -143,7 +143,7 @@ public class PetInstance extends Summon
getOwner().sendMessage("Your pet is too hungry to stay summoned.");
}
final int foodId = PetDataTable.getFoodItemId(getTemplate().npcId);
final int foodId = PetDataTable.getFoodItemId(getTemplate().getNpcId());
if (foodId == 0)
{
return;
@ -221,18 +221,18 @@ public class PetInstance extends Summon
// Hatcling : Level 35
// Tested and confirmed on official servers
// Sin-eaters are defaulted at the owner's level
if (template.npcId == 12564)
if (template.getNpcId() == 12564)
{
getStat().setLevel((byte) getOwner().getLevel());
}
else
{
getStat().setLevel(template.level);
getStat().setLevel(template.getLevel());
}
_inventory = new PetInventory(this);
final int npcId = template.npcId;
final int npcId = template.getNpcId();
_mountable = PetDataTable.isMountable(npcId);
}
@ -845,7 +845,7 @@ public class PetInstance extends Summon
try (Connection con = DatabaseFactory.getConnection())
{
if (template.type.compareToIgnoreCase("BabyPet") == 0)
if (template.getType().compareToIgnoreCase("BabyPet") == 0)
{
pet = new BabyPetInstance(IdFactory.getInstance().getNextId(), template, owner, control);
}

View File

@ -2867,7 +2867,7 @@ public class PlayerInstance extends Playable
*/
public ClassId getClassId()
{
return getTemplate().classId;
return getTemplate().getClassId();
}
/**
@ -3212,9 +3212,9 @@ public class PlayerInstance extends Playable
{
if (!isSubClassActive())
{
return getTemplate().race;
return getTemplate().getRace();
}
return CharTemplateTable.getInstance().getTemplate(_baseClass).race;
return CharTemplateTable.getInstance().getTemplate(_baseClass).getRace();
}
/**
@ -8667,8 +8667,8 @@ public class PlayerInstance extends Playable
statement.setInt(31, getAppearance().isFemale() ? 1 : 0);
statement.setDouble(32, 1/* getMovementMultiplier() */);
statement.setDouble(33, 1/* getAttackSpeedMultiplier() */);
statement.setDouble(34, getTemplate().collisionRadius/* getCollisionRadius() */);
statement.setDouble(35, getTemplate().collisionHeight/* getCollisionHeight() */);
statement.setDouble(34, getTemplate().getCollisionRadius());
statement.setDouble(35, getTemplate().getCollisionHeight());
statement.setLong(36, getExp());
statement.setInt(37, getSp());
statement.setInt(38, getKarma());
@ -10945,7 +10945,7 @@ public class PlayerInstance extends Playable
// Calculate the distance between the PlayerInstance and the target
if (sklTargetType == SkillTargetType.TARGET_GROUND)
{
if (!isInsideRadius(getCurrentSkillWorldPosition().getX(), getCurrentSkillWorldPosition().getY(), getCurrentSkillWorldPosition().getZ(), (int) (skill.getCastRange() + getTemplate().getCollisionRadius()), false, false))
if (!isInsideRadius(getCurrentSkillWorldPosition().getX(), getCurrentSkillWorldPosition().getY(), getCurrentSkillWorldPosition().getZ(), skill.getCastRange() + getTemplate().getCollisionRadius(), false, false))
{
// Send a System Message to the caster
sendPacket(SystemMessageId.TARGET_TOO_FAR);
@ -10955,7 +10955,7 @@ public class PlayerInstance extends Playable
return;
}
}
else if ((skill.getCastRange() > 0) && !isInsideRadius(target, skill.getCastRange() + getTemplate().collisionRadius, false, false)) // Calculate the distance between the PlayerInstance and the target
else if ((skill.getCastRange() > 0) && !isInsideRadius(target, skill.getCastRange() + getTemplate().getCollisionRadius(), false, false)) // Calculate the distance between the PlayerInstance and the target
{
// Send a System Message to the caster
sendPacket(SystemMessageId.TARGET_TOO_FAR);
@ -10966,7 +10966,7 @@ public class PlayerInstance extends Playable
}
}
// Check range for SIGNET skills
else if ((sklType == SkillType.SIGNET) && !isInsideRadius(getCurrentSkillWorldPosition().getX(), getCurrentSkillWorldPosition().getY(), getCurrentSkillWorldPosition().getZ(), (int) (skill.getCastRange() + getTemplate().getCollisionRadius()), false, false))
else if ((sklType == SkillType.SIGNET) && !isInsideRadius(getCurrentSkillWorldPosition().getX(), getCurrentSkillWorldPosition().getY(), getCurrentSkillWorldPosition().getZ(), skill.getCastRange() + getTemplate().getCollisionRadius(), false, false))
{
// Send a System Message to the caster
sendPacket(SystemMessageId.TARGET_TOO_FAR);

View File

@ -298,7 +298,7 @@ public class RaceManagerInstance extends NpcInstance
{
return;
}
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
String filename;
String search;
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
@ -308,7 +308,7 @@ public class RaceManagerInstance extends NpcInstance
{
final int n = i + 1;
search = "Mob" + n;
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().name);
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().getName());
}
html.replace("1race", String.valueOf(_raceNumber));
html.replace("%objectId%", String.valueOf(getObjectId()));
@ -318,7 +318,7 @@ public class RaceManagerInstance extends NpcInstance
public void showMonsterInfo(PlayerInstance player)
{
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
String filename;
String search;
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
@ -328,7 +328,7 @@ public class RaceManagerInstance extends NpcInstance
{
final int n = i + 1;
search = "Mob" + n;
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().name);
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().getName());
}
html.replace("%objectId%", String.valueOf(getObjectId()));
player.sendPacket(html);
@ -341,7 +341,7 @@ public class RaceManagerInstance extends NpcInstance
{
return;
}
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
SystemMessage sm;
String filename;
String search;
@ -355,7 +355,7 @@ public class RaceManagerInstance extends NpcInstance
{
final int n = i + 1;
search = "Mob" + n;
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().name);
html.replace(search, MonsterRace.getInstance().getMonsters()[i].getTemplate().getName());
}
search = "No1";
if (val == 0)
@ -378,7 +378,7 @@ public class RaceManagerInstance extends NpcInstance
html.setFile(filename);
html.replace("0place", "" + player.getRace(0));
search = "Mob1";
replace = MonsterRace.getInstance().getMonsters()[player.getRace(0) - 1].getTemplate().name;
replace = MonsterRace.getInstance().getMonsters()[player.getRace(0) - 1].getTemplate().getName();
html.replace(search, replace);
search = "0adena";
if (val == 10)
@ -401,7 +401,7 @@ public class RaceManagerInstance extends NpcInstance
html.setFile(filename);
html.replace("0place", "" + player.getRace(0));
search = "Mob1";
replace = MonsterRace.getInstance().getMonsters()[player.getRace(0) - 1].getTemplate().name;
replace = MonsterRace.getInstance().getMonsters()[player.getRace(0) - 1].getTemplate().getName();
html.replace(search, replace);
search = "0adena";
final int price = _cost[player.getRace(1) - 1];

View File

@ -79,7 +79,7 @@ public class SiegeNpcInstance extends FolkInstance
if (siege.getIsInProgress())
{
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
html.setFile("data/html/siege/" + getTemplate().npcId + "-busy.htm");
html.setFile("data/html/siege/" + getTemplate().getNpcId() + "-busy.htm");
html.replace("%castlename%", getCastle().getName());
html.replace("%objectId%", String.valueOf(getObjectId()));
player.sendPacket(html);

View File

@ -95,7 +95,7 @@ public class SummonInstance extends Summon
@Override
public int getLevel()
{
return getTemplate() != null ? getTemplate().level : 0;
return getTemplate() != null ? getTemplate().getLevel() : 0;
}
@Override
@ -181,7 +181,7 @@ public class SummonInstance extends Summon
if (attacker instanceof NpcInstance)
{
sm.addNpcName(((NpcInstance) attacker).getTemplate().npcId);
sm.addNpcName(((NpcInstance) attacker).getTemplate().getNpcId());
}
else
{

View File

@ -79,7 +79,7 @@ public class TeleporterInstance extends FolkInstance
if (actualCommand.equalsIgnoreCase("goto"))
{
final int npcId = getTemplate().npcId;
final int npcId = getTemplate().getNpcId();
switch (npcId)
{

View File

@ -153,7 +153,7 @@ public class CreatureStat
return 1;
}
return (float) ((1.1 * getPAtkSpd()) / _creature.getTemplate().basePAtkSpd);
return (float) ((1.1 * getPAtkSpd()) / _creature.getTemplate().getBasePAtkSpd());
}
/**
@ -167,7 +167,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_CON, _creature.getTemplate().baseCON, null, null);
return (int) calcStat(Stats.STAT_CON, _creature.getTemplate().getBaseCON(), null, null);
}
/**
@ -194,7 +194,7 @@ public class CreatureStat
return 1;
}
int criticalHit = (int) ((calcStat(Stats.CRITICAL_RATE, _creature.getTemplate().baseCritRate, target, skill) * 10.0) + 0.5);
int criticalHit = (int) ((calcStat(Stats.CRITICAL_RATE, _creature.getTemplate().getBaseCritRate(), target, skill) * 10.0) + 0.5);
criticalHit /= 10;
@ -218,7 +218,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_DEX, _creature.getTemplate().baseDEX, null, null);
return (int) calcStat(Stats.STAT_DEX, _creature.getTemplate().getBaseDEX(), null, null);
}
/**
@ -265,7 +265,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_INT, _creature.getTemplate().baseINT, null, null);
return (int) calcStat(Stats.STAT_INT, _creature.getTemplate().getBaseINT(), null, null);
}
/**
@ -303,7 +303,7 @@ public class CreatureStat
return 1;
}
return _creature.getTemplate().baseAtkRange;
return _creature.getTemplate().getBaseAtkRange();
}
/**
@ -317,7 +317,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.MAX_CP, _creature.getTemplate().baseCpMax, null, null);
return (int) calcStat(Stats.MAX_CP, _creature.getTemplate().getBaseCpMax(), null, null);
}
/**
@ -331,7 +331,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.MAX_HP, _creature.getTemplate().baseHpMax, null, null);
return (int) calcStat(Stats.MAX_HP, _creature.getTemplate().getBaseHpMax(), null, null);
}
/**
@ -345,7 +345,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.MAX_MP, _creature.getTemplate().baseMpMax, null, null);
return (int) calcStat(Stats.MAX_MP, _creature.getTemplate().getBaseMpMax(), null, null);
}
/**
@ -373,7 +373,7 @@ public class CreatureStat
bonusAtk = Config.L2JMOD_CHAMPION_ATK;
}
double attack = _creature.getTemplate().baseMAtk * bonusAtk;
double attack = _creature.getTemplate().getBaseMAtk() * bonusAtk;
// Get the skill type to calculate its effect in function of base stats of the Creature target.
final Stats stat = skill == null ? null : skill.getStat();
@ -384,72 +384,72 @@ public class CreatureStat
{
case AGGRESSION:
{
attack += _creature.getTemplate().baseAggression;
attack += _creature.getTemplate().getBaseAggression();
break;
}
case BLEED:
{
attack += _creature.getTemplate().baseBleed;
attack += _creature.getTemplate().getBaseBleed();
break;
}
case POISON:
{
attack += _creature.getTemplate().basePoison;
attack += _creature.getTemplate().getBasePoison();
break;
}
case STUN:
{
attack += _creature.getTemplate().baseStun;
attack += _creature.getTemplate().getBaseStun();
break;
}
case ROOT:
{
attack += _creature.getTemplate().baseRoot;
attack += _creature.getTemplate().getBaseRoot();
break;
}
case MOVEMENT:
{
attack += _creature.getTemplate().baseMovement;
attack += _creature.getTemplate().getBaseMovement();
break;
}
case CONFUSION:
{
attack += _creature.getTemplate().baseConfusion;
attack += _creature.getTemplate().getBaseConfusion();
break;
}
case SLEEP:
{
attack += _creature.getTemplate().baseSleep;
attack += _creature.getTemplate().getBaseSleep();
break;
}
case FIRE:
{
attack += _creature.getTemplate().baseFire;
attack += _creature.getTemplate().getBaseFire();
break;
}
case WIND:
{
attack += _creature.getTemplate().baseWind;
attack += _creature.getTemplate().getBaseWind();
break;
}
case WATER:
{
attack += _creature.getTemplate().baseWater;
attack += _creature.getTemplate().getBaseWater();
break;
}
case EARTH:
{
attack += _creature.getTemplate().baseEarth;
attack += _creature.getTemplate().getBaseEarth();
break;
}
case HOLY:
{
attack += _creature.getTemplate().baseHoly;
attack += _creature.getTemplate().getBaseHoly();
break;
}
case DARK:
{
attack += _creature.getTemplate().baseDark;
attack += _creature.getTemplate().getBaseDark();
break;
}
}
@ -483,7 +483,7 @@ public class CreatureStat
bonusSpdAtk = Config.L2JMOD_CHAMPION_SPD_ATK;
}
double val = calcStat(Stats.MAGIC_ATTACK_SPEED, _creature.getTemplate().baseMAtkSpd * bonusSpdAtk, null, null);
double val = calcStat(Stats.MAGIC_ATTACK_SPEED, _creature.getTemplate().getBaseMAtkSpd() * bonusSpdAtk, null, null);
val /= _creature.getArmourExpertisePenalty();
@ -508,7 +508,7 @@ public class CreatureStat
return 1;
}
double mrate = calcStat(Stats.MCRITICAL_RATE, (_creature.getTemplate().baseMCritRate) * Config.MCRIT_RATE_MUL, target, skill);
double mrate = calcStat(Stats.MCRITICAL_RATE, (_creature.getTemplate().getBaseMCritRate()) * Config.MCRIT_RATE_MUL, target, skill);
if (mrate > Config.MAX_MCRIT_RATE)
{
@ -536,7 +536,7 @@ public class CreatureStat
}
// Get the base MDef of the Creature
double defence = _creature.getTemplate().baseMDef;
double defence = _creature.getTemplate().getBaseMDef();
// Calculate modifier for Raid Bosses
if (_creature.isRaid())
@ -559,7 +559,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_MEN, _creature.getTemplate().baseMEN, null, null);
return (int) calcStat(Stats.STAT_MEN, _creature.getTemplate().getBaseMEN(), null, null);
}
/**
@ -573,7 +573,7 @@ public class CreatureStat
return 1;
}
return Math.max(1, getRunSpeed() / _creature.getTemplate().baseRunSpd);
return Math.max(1, getRunSpeed() / _creature.getTemplate().getBaseRunSpd());
}
public void setGmSpeedMultiplier(float multipier)
@ -612,7 +612,7 @@ public class CreatureStat
return 1;
}
return calcStat(Stats.MAGIC_REUSE_RATE, _creature.getTemplate().baseMReuseRate, null, skill);
return calcStat(Stats.MAGIC_REUSE_RATE, _creature.getTemplate().getBaseMReuseRate(), null, skill);
}
/**
@ -627,7 +627,7 @@ public class CreatureStat
return 1;
}
return calcStat(Stats.P_REUSE, _creature.getTemplate().baseMReuseRate, null, skill);
return calcStat(Stats.P_REUSE, _creature.getTemplate().getBaseMReuseRate(), null, skill);
}
/**
@ -649,7 +649,7 @@ public class CreatureStat
bonusAtk = Config.L2JMOD_CHAMPION_ATK;
}
return (int) calcStat(Stats.POWER_ATTACK, _creature.getTemplate().basePAtk * bonusAtk, target, null);
return (int) calcStat(Stats.POWER_ATTACK, _creature.getTemplate().getBasePAtk() * bonusAtk, target, null);
}
/**
@ -730,7 +730,7 @@ public class CreatureStat
bonusAtk = Config.L2JMOD_CHAMPION_SPD_ATK;
}
double val = calcStat(Stats.POWER_ATTACK_SPEED, _creature.getTemplate().basePAtkSpd * bonusAtk, null, null);
double val = calcStat(Stats.POWER_ATTACK_SPEED, _creature.getTemplate().getBasePAtkSpd() * bonusAtk, null, null);
val /= _creature.getArmourExpertisePenalty();
@ -835,7 +835,7 @@ public class CreatureStat
}
// Get the base PDef of the Creature
double defence = _creature.getTemplate().basePDef;
double defence = _creature.getTemplate().getBasePDef();
// Calculate modifier for Raid Bosses
if (_creature.isRaid())
@ -857,7 +857,7 @@ public class CreatureStat
{
return 1;
}
return (int) calcStat(Stats.POWER_ATTACK_RANGE, _creature.getTemplate().baseAtkRange, null, null);
return (int) calcStat(Stats.POWER_ATTACK_RANGE, _creature.getTemplate().getBaseAtkRange(), null, null);
}
/**
@ -882,7 +882,7 @@ public class CreatureStat
}
// err we should be adding TO the persons run speed not making it a constant
int val = (int) calcStat(Stats.RUN_SPEED, _creature.getTemplate().baseRunSpd, null, null) + Config.RUN_SPD_BOOST;
int val = (int) calcStat(Stats.RUN_SPEED, _creature.getTemplate().getBaseRunSpd(), null, null) + Config.RUN_SPD_BOOST;
if (_creature.isInsideZone(ZoneId.WATER))
{
val /= 2;
@ -947,7 +947,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_STR, _creature.getTemplate().baseSTR, null, null);
return (int) calcStat(Stats.STAT_STR, _creature.getTemplate().getBaseSTR(), null, null);
}
/**
@ -965,7 +965,7 @@ public class CreatureStat
{
return (getRunSpeed() * 70) / 100;
}
return (int) calcStat(Stats.WALK_SPEED, _creature.getTemplate().baseWalkSpd, null, null);
return (int) calcStat(Stats.WALK_SPEED, _creature.getTemplate().getBaseWalkSpd(), null, null);
}
/**
@ -979,7 +979,7 @@ public class CreatureStat
return 1;
}
return (int) calcStat(Stats.STAT_WIT, _creature.getTemplate().baseWIT, null, null);
return (int) calcStat(Stats.STAT_WIT, _creature.getTemplate().getBaseWIT(), null, null);
}
/**

View File

@ -25,7 +25,7 @@ public class NpcStat extends CreatureStat
{
super(activeChar);
setLevel(getActiveChar().getTemplate().level);
setLevel(getActiveChar().getTemplate().getLevel());
}
@Override
@ -37,6 +37,6 @@ public class NpcStat extends CreatureStat
@Override
public int getMaxHp()
{
return (int) calcStat(Stats.MAX_HP, getActiveChar().getTemplate().baseHpMax, null, null);
return (int) calcStat(Stats.MAX_HP, getActiveChar().getTemplate().getBaseHpMax(), null, null);
}
}

View File

@ -132,7 +132,7 @@ public class PetStat extends SummonStat
getActiveChar().stopFeed();
super.setLevel(value);
getActiveChar().setPetData(PetDataTable.getInstance().getPetData(getActiveChar().getTemplate().npcId, getLevel()));
getActiveChar().setPetData(PetDataTable.getInstance().getPetData(getActiveChar().getTemplate().getNpcId(), getLevel()));
getActiveChar().startFeed(false);
if (getActiveChar().getControlItem() != null)
@ -170,72 +170,72 @@ public class PetStat extends SummonStat
{
case AGGRESSION:
{
attack += getActiveChar().getTemplate().baseAggression;
attack += getActiveChar().getTemplate().getBaseAggression();
break;
}
case BLEED:
{
attack += getActiveChar().getTemplate().baseBleed;
attack += getActiveChar().getTemplate().getBaseBleed();
break;
}
case POISON:
{
attack += getActiveChar().getTemplate().basePoison;
attack += getActiveChar().getTemplate().getBasePoison();
break;
}
case STUN:
{
attack += getActiveChar().getTemplate().baseStun;
attack += getActiveChar().getTemplate().getBaseStun();
break;
}
case ROOT:
{
attack += getActiveChar().getTemplate().baseRoot;
attack += getActiveChar().getTemplate().getBaseRoot();
break;
}
case MOVEMENT:
{
attack += getActiveChar().getTemplate().baseMovement;
attack += getActiveChar().getTemplate().getBaseMovement();
break;
}
case CONFUSION:
{
attack += getActiveChar().getTemplate().baseConfusion;
attack += getActiveChar().getTemplate().getBaseConfusion();
break;
}
case SLEEP:
{
attack += getActiveChar().getTemplate().baseSleep;
attack += getActiveChar().getTemplate().getBaseSleep();
break;
}
case FIRE:
{
attack += getActiveChar().getTemplate().baseFire;
attack += getActiveChar().getTemplate().getBaseFire();
break;
}
case WIND:
{
attack += getActiveChar().getTemplate().baseWind;
attack += getActiveChar().getTemplate().getBaseWind();
break;
}
case WATER:
{
attack += getActiveChar().getTemplate().baseWater;
attack += getActiveChar().getTemplate().getBaseWater();
break;
}
case EARTH:
{
attack += getActiveChar().getTemplate().baseEarth;
attack += getActiveChar().getTemplate().getBaseEarth();
break;
}
case HOLY:
{
attack += getActiveChar().getTemplate().baseHoly;
attack += getActiveChar().getTemplate().getBaseHoly();
break;
}
case DARK:
{
attack += getActiveChar().getTemplate().baseDark;
attack += getActiveChar().getTemplate().getBaseDark();
break;
}
}

View File

@ -54,7 +54,7 @@ public class PetStatus extends SummonStatus
if (attacker instanceof NpcInstance)
{
sm.addNpcName(((NpcInstance) attacker).getTemplate().idTemplate);
sm.addNpcName(((NpcInstance) attacker).getTemplate().getIdTemplate());
}
else
{

View File

@ -155,11 +155,11 @@ public class PlayerStatus extends PlayableStatus
if (attacker instanceof NpcInstance)
{
smsg.addNpcName(((NpcInstance) attacker).getTemplate().idTemplate);
smsg.addNpcName(((NpcInstance) attacker).getTemplate().getIdTemplate());
}
else if (attacker instanceof Summon)
{
smsg.addNpcName(((Summon) attacker).getTemplate().idTemplate);
smsg.addNpcName(((Summon) attacker).getTemplate().getIdTemplate());
}
else
{

View File

@ -18,153 +18,450 @@ package org.l2jmobius.gameserver.model.actor.templates;
import org.l2jmobius.gameserver.model.StatsSet;
/**
* @version $Revision: 1.2.4.6 $ $Date: 2005/04/02 15:57:51 $
*/
public class CreatureTemplate
{
// BaseStats
public int baseSTR;
public int baseCON;
public int baseDEX;
public int baseINT;
public int baseWIT;
public int baseMEN;
public float baseHpMax;
public float baseCpMax;
public float baseMpMax;
private final int _baseSTR;
private final int _baseCON;
private final int _baseDEX;
private final int _baseINT;
private final int _baseWIT;
private final int _baseMEN;
private final float _baseHpMax;
private final float _baseCpMax;
private final float _baseMpMax;
/** HP Regen base */
public float baseHpReg;
private final float _baseHpReg;
/** MP Regen base */
public float baseMpReg;
private final float _baseMpReg;
public int basePAtk;
public int baseMAtk;
public int basePDef;
public int baseMDef;
public int basePAtkSpd;
public int baseMAtkSpd;
public float baseMReuseRate;
public int baseShldDef;
public int baseAtkRange;
public int baseShldRate;
public int baseCritRate;
public int baseMCritRate;
public int baseWalkSpd;
public int baseRunSpd;
private final int _basePAtk;
private final int _baseMAtk;
private final int _basePDef;
private final int _baseMDef;
private final int _basePAtkSpd;
private final int _baseMAtkSpd;
private final float _baseMReuseRate;
private final int _baseShldDef;
private final int _baseAtkRange;
private final int _baseShldRate;
private final int _baseCritRate;
private final int _baseMCritRate;
private final int _baseWalkSpd;
private final int _baseRunSpd;
// SpecialStats
public int baseBreath;
public int baseAggression;
public int baseBleed;
public int basePoison;
public int baseStun;
public int baseRoot;
public int baseMovement;
public int baseConfusion;
public int baseSleep;
public int baseFire;
public int baseWind;
public int baseWater;
public int baseEarth;
public int baseHoly;
public int baseDark;
public double baseAggressionVuln;
public double baseBleedVuln;
public double basePoisonVuln;
public double baseStunVuln;
public double baseRootVuln;
public double baseMovementVuln;
public double baseConfusionVuln;
public double baseSleepVuln;
public double baseFireVuln;
public double baseWindVuln;
public double baseWaterVuln;
public double baseEarthVuln;
public double baseHolyVuln;
public double baseDarkVuln;
public double baseCritVuln;
private final int _baseBreath;
private final int _baseAggression;
private final int _baseBleed;
private final int _basePoison;
private final int _baseStun;
private final int _baseRoot;
private final int _baseMovement;
private final int _baseConfusion;
private final int _baseSleep;
private final int _baseFire;
private final int _baseWind;
private final int _baseWater;
private final int _baseEarth;
private final int _baseHoly;
private final int _baseDark;
private final double _baseAggressionVuln;
private final double _baseBleedVuln;
private final double _basePoisonVuln;
private final double _baseStunVuln;
private final double _baseRootVuln;
private final double _baseMovementVuln;
private final double _baseConfusionVuln;
private final double _baseSleepVuln;
private final double _baseFireVuln;
private final double _baseWindVuln;
private final double _baseWaterVuln;
private final double _baseEarthVuln;
private final double _baseHolyVuln;
private final double _baseDarkVuln;
private final double _baseCritVuln;
public boolean isUndead;
private final boolean _isUndead;
// C4 Stats
public int baseMpConsumeRate;
public int baseHpConsumeRate;
private final int _baseMpConsumeRate;
private final int _baseHpConsumeRate;
public int collisionRadius;
public int collisionHeight;
private final int _collisionRadius;
private final int _collisionHeight;
public CreatureTemplate(StatsSet set)
{
// Base stats
baseSTR = set.getInt("baseSTR");
baseCON = set.getInt("baseCON");
baseDEX = set.getInt("baseDEX");
baseINT = set.getInt("baseINT");
baseWIT = set.getInt("baseWIT");
baseMEN = set.getInt("baseMEN");
baseHpMax = set.getFloat("baseHpMax");
baseCpMax = set.getFloat("baseCpMax");
baseMpMax = set.getFloat("baseMpMax");
baseHpReg = set.getFloat("baseHpReg");
baseMpReg = set.getFloat("baseMpReg");
basePAtk = set.getInt("basePAtk");
baseMAtk = set.getInt("baseMAtk");
basePDef = set.getInt("basePDef");
baseMDef = set.getInt("baseMDef");
basePAtkSpd = set.getInt("basePAtkSpd");
baseMAtkSpd = set.getInt("baseMAtkSpd");
baseMReuseRate = set.getFloat("baseMReuseDelay", 1.f);
baseShldDef = set.getInt("baseShldDef");
baseAtkRange = set.getInt("baseAtkRange");
baseShldRate = set.getInt("baseShldRate");
baseCritRate = set.getInt("baseCritRate");
baseMCritRate = set.getInt("baseMCritRate", 5);
baseWalkSpd = set.getInt("baseWalkSpd");
baseRunSpd = set.getInt("baseRunSpd");
_baseSTR = set.getInt("baseSTR");
_baseCON = set.getInt("baseCON");
_baseDEX = set.getInt("baseDEX");
_baseINT = set.getInt("baseINT");
_baseWIT = set.getInt("baseWIT");
_baseMEN = set.getInt("baseMEN");
_baseHpMax = set.getFloat("baseHpMax");
_baseCpMax = set.getFloat("baseCpMax");
_baseMpMax = set.getFloat("baseMpMax");
_baseHpReg = set.getFloat("baseHpReg");
_baseMpReg = set.getFloat("baseMpReg");
_basePAtk = set.getInt("basePAtk");
_baseMAtk = set.getInt("baseMAtk");
_basePDef = set.getInt("basePDef");
_baseMDef = set.getInt("baseMDef");
_basePAtkSpd = set.getInt("basePAtkSpd");
_baseMAtkSpd = set.getInt("baseMAtkSpd");
_baseMReuseRate = set.getFloat("baseMReuseDelay", 1.f);
_baseShldDef = set.getInt("baseShldDef");
_baseAtkRange = set.getInt("baseAtkRange");
_baseShldRate = set.getInt("baseShldRate");
_baseCritRate = set.getInt("baseCritRate");
_baseMCritRate = set.getInt("baseMCritRate", 5);
_baseWalkSpd = set.getInt("baseWalkSpd");
_baseRunSpd = set.getInt("baseRunSpd");
// SpecialStats
baseBreath = set.getInt("baseBreath", 100);
baseAggression = set.getInt("baseAggression", 0);
baseBleed = set.getInt("baseBleed", 0);
basePoison = set.getInt("basePoison", 0);
baseStun = set.getInt("baseStun", 0);
baseRoot = set.getInt("baseRoot", 0);
baseMovement = set.getInt("baseMovement", 0);
baseConfusion = set.getInt("baseConfusion", 0);
baseSleep = set.getInt("baseSleep", 0);
baseFire = set.getInt("baseFire", 0);
baseWind = set.getInt("baseWind", 0);
baseWater = set.getInt("baseWater", 0);
baseEarth = set.getInt("baseEarth", 0);
baseHoly = set.getInt("baseHoly", 0);
baseDark = set.getInt("baseDark", 0);
baseAggressionVuln = set.getInt("baseAaggressionVuln", 1);
baseBleedVuln = set.getInt("baseBleedVuln", 1);
basePoisonVuln = set.getInt("basePoisonVuln", 1);
baseStunVuln = set.getInt("baseStunVuln", 1);
baseRootVuln = set.getInt("baseRootVuln", 1);
baseMovementVuln = set.getInt("baseMovementVuln", 1);
baseConfusionVuln = set.getInt("baseConfusionVuln", 1);
baseSleepVuln = set.getInt("baseSleepVuln", 1);
baseFireVuln = set.getInt("baseFireVuln", 1);
baseWindVuln = set.getInt("baseWindVuln", 1);
baseWaterVuln = set.getInt("baseWaterVuln", 1);
baseEarthVuln = set.getInt("baseEarthVuln", 1);
baseHolyVuln = set.getInt("baseHolyVuln", 1);
baseDarkVuln = set.getInt("baseDarkVuln", 1);
baseCritVuln = set.getInt("baseCritVuln", 1);
_baseBreath = set.getInt("baseBreath", 100);
_baseAggression = set.getInt("baseAggression", 0);
_baseBleed = set.getInt("baseBleed", 0);
_basePoison = set.getInt("basePoison", 0);
_baseStun = set.getInt("baseStun", 0);
_baseRoot = set.getInt("baseRoot", 0);
_baseMovement = set.getInt("baseMovement", 0);
_baseConfusion = set.getInt("baseConfusion", 0);
_baseSleep = set.getInt("baseSleep", 0);
_baseFire = set.getInt("baseFire", 0);
_baseWind = set.getInt("baseWind", 0);
_baseWater = set.getInt("baseWater", 0);
_baseEarth = set.getInt("baseEarth", 0);
_baseHoly = set.getInt("baseHoly", 0);
_baseDark = set.getInt("baseDark", 0);
_baseAggressionVuln = set.getInt("baseAaggressionVuln", 1);
_baseBleedVuln = set.getInt("baseBleedVuln", 1);
_basePoisonVuln = set.getInt("basePoisonVuln", 1);
_baseStunVuln = set.getInt("baseStunVuln", 1);
_baseRootVuln = set.getInt("baseRootVuln", 1);
_baseMovementVuln = set.getInt("baseMovementVuln", 1);
_baseConfusionVuln = set.getInt("baseConfusionVuln", 1);
_baseSleepVuln = set.getInt("baseSleepVuln", 1);
_baseFireVuln = set.getInt("baseFireVuln", 1);
_baseWindVuln = set.getInt("baseWindVuln", 1);
_baseWaterVuln = set.getInt("baseWaterVuln", 1);
_baseEarthVuln = set.getInt("baseEarthVuln", 1);
_baseHolyVuln = set.getInt("baseHolyVuln", 1);
_baseDarkVuln = set.getInt("baseDarkVuln", 1);
_baseCritVuln = set.getInt("baseCritVuln", 1);
isUndead = set.getInt("isUndead", 0) == 1;
_isUndead = set.getInt("isUndead", 0) == 1;
// C4 Stats
baseMpConsumeRate = set.getInt("baseMpConsumeRate", 0);
baseHpConsumeRate = set.getInt("baseHpConsumeRate", 0);
_baseMpConsumeRate = set.getInt("baseMpConsumeRate", 0);
_baseHpConsumeRate = set.getInt("baseHpConsumeRate", 0);
// Geometry
collisionRadius = set.getInt("collision_radius");
collisionHeight = set.getInt("collision_height");
_collisionRadius = set.getInt("collision_radius");
_collisionHeight = set.getInt("collision_height");
}
public int getBaseSTR()
{
return _baseSTR;
}
public int getBaseCON()
{
return _baseCON;
}
public int getBaseDEX()
{
return _baseDEX;
}
public int getBaseINT()
{
return _baseINT;
}
public int getBaseWIT()
{
return _baseWIT;
}
public int getBaseMEN()
{
return _baseMEN;
}
public float getBaseHpMax()
{
return _baseHpMax;
}
public float getBaseCpMax()
{
return _baseCpMax;
}
public float getBaseMpMax()
{
return _baseMpMax;
}
public float getBaseHpReg()
{
return _baseHpReg;
}
public float getBaseMpReg()
{
return _baseMpReg;
}
public int getBasePAtk()
{
return _basePAtk;
}
public int getBaseMAtk()
{
return _baseMAtk;
}
public int getBasePDef()
{
return _basePDef;
}
public int getBaseMDef()
{
return _baseMDef;
}
public int getBasePAtkSpd()
{
return _basePAtkSpd;
}
public int getBaseMAtkSpd()
{
return _baseMAtkSpd;
}
public float getBaseMReuseRate()
{
return _baseMReuseRate;
}
public int getBaseShldDef()
{
return _baseShldDef;
}
public int getBaseAtkRange()
{
return _baseAtkRange;
}
public int getBaseShldRate()
{
return _baseShldRate;
}
public int getBaseCritRate()
{
return _baseCritRate;
}
public int getBaseMCritRate()
{
return _baseMCritRate;
}
public int getBaseWalkSpd()
{
return _baseWalkSpd;
}
public int getBaseRunSpd()
{
return _baseRunSpd;
}
public int getBaseBreath()
{
return _baseBreath;
}
public int getBaseAggression()
{
return _baseAggression;
}
public int getBaseBleed()
{
return _baseBleed;
}
public int getBasePoison()
{
return _basePoison;
}
public int getBaseStun()
{
return _baseStun;
}
public int getBaseRoot()
{
return _baseRoot;
}
public int getBaseMovement()
{
return _baseMovement;
}
public int getBaseConfusion()
{
return _baseConfusion;
}
public int getBaseSleep()
{
return _baseSleep;
}
public int getBaseFire()
{
return _baseFire;
}
public int getBaseWind()
{
return _baseWind;
}
public int getBaseWater()
{
return _baseWater;
}
public int getBaseEarth()
{
return _baseEarth;
}
public int getBaseHoly()
{
return _baseHoly;
}
public int getBaseDark()
{
return _baseDark;
}
public double getBaseAggressionVuln()
{
return _baseAggressionVuln;
}
public double getBaseBleedVuln()
{
return _baseBleedVuln;
}
public double getBasePoisonVuln()
{
return _basePoisonVuln;
}
public double getBaseStunVuln()
{
return _baseStunVuln;
}
public double getBaseRootVuln()
{
return _baseRootVuln;
}
public double getBaseMovementVuln()
{
return _baseMovementVuln;
}
public double getBaseConfusionVuln()
{
return _baseConfusionVuln;
}
public double getBaseSleepVuln()
{
return _baseSleepVuln;
}
public double getBaseFireVuln()
{
return _baseFireVuln;
}
public double getBaseWindVuln()
{
return _baseWindVuln;
}
public double getBaseWaterVuln()
{
return _baseWaterVuln;
}
public double getBaseEarthVuln()
{
return _baseEarthVuln;
}
public double getBaseHolyVuln()
{
return _baseHolyVuln;
}
public double getBaseDarkVuln()
{
return _baseDarkVuln;
}
public double getBaseCritVuln()
{
return _baseCritVuln;
}
public boolean isUndead()
{
return _isUndead;
}
public int getBaseMpConsumeRate()
{
return _baseMpConsumeRate;
}
public int getBaseHpConsumeRate()
{
return _baseHpConsumeRate;
}
public int getCollisionRadius()
{
return _collisionRadius;
}
public int getCollisionHeight()
{
return _collisionHeight;
}
}

View File

@ -56,26 +56,26 @@ public class NpcTemplate extends CreatureTemplate
{
protected static final Logger LOGGER = Logger.getLogger(NpcTemplate.class.getName());
public int npcId;
public int idTemplate;
public String type;
public String name;
public boolean serverSideName;
public String title;
public boolean serverSideTitle;
public String sex;
public byte level;
public int rewardExp;
public int rewardSp;
public int aggroRange;
public int rhand;
public int lhand;
public int armor;
public String factionId;
public int factionRange;
public int absorbLevel;
public AbsorbCrystalType absorbType;
public Race race;
private final int _npcId;
private final int _idTemplate;
private final String _type;
private final String _name;
private final boolean _serverSideName;
private final String _title;
private final boolean _serverSideTitle;
private final String _sex;
private final byte _level;
private final int _rewardExp;
private final int _rewardSp;
private final int _aggroRange;
private final int _rhand;
private final int _lhand;
private final int _armor;
private final int _absorbLevel;
private final AbsorbCrystalType _absorbType;
private String _factionId;
private final int _factionRange;
private Race _race;
private final boolean _custom;
@ -129,41 +129,40 @@ public class NpcTemplate extends CreatureTemplate
private final Map<EventType, List<Quest>> _questEvents = new EnumMap<>(EventType.class);
/**
* Constructor of Creature.<BR>
* <BR>
* Constructor of Creature.
* @param set The StatsSet object to transfer data to the method
* @param custom
*/
public NpcTemplate(StatsSet set, boolean custom)
{
super(set);
npcId = set.getInt("npcId");
idTemplate = set.getInt("idTemplate");
type = set.getString("type");
name = set.getString("name");
serverSideName = set.getBoolean("serverSideName");
title = set.getString("title");
serverSideTitle = set.getBoolean("serverSideTitle");
sex = set.getString("sex");
level = set.getByte("level");
rewardExp = set.getInt("rewardExp");
rewardSp = set.getInt("rewardSp");
aggroRange = set.getInt("aggroRange");
rhand = set.getInt("rhand");
lhand = set.getInt("lhand");
armor = set.getInt("armor");
_npcId = set.getInt("npcId");
_idTemplate = set.getInt("idTemplate");
_type = set.getString("type");
_name = set.getString("name");
_serverSideName = set.getBoolean("serverSideName");
_title = set.getString("title");
_serverSideTitle = set.getBoolean("serverSideTitle");
_sex = set.getString("sex");
_level = set.getByte("level");
_rewardExp = set.getInt("rewardExp");
_rewardSp = set.getInt("rewardSp");
_aggroRange = set.getInt("aggroRange");
_rhand = set.getInt("rhand");
_lhand = set.getInt("lhand");
_armor = set.getInt("armor");
_absorbLevel = set.getInt("absorb_level", 0);
_absorbType = AbsorbCrystalType.valueOf(set.getString("absorb_type"));
final String f = set.getString("factionId", null);
if (f == null)
{
factionId = null;
setFactionId(null);
}
else
{
factionId = f.intern();
setFactionId(f.intern());
}
factionRange = set.getInt("factionRange", 0);
absorbLevel = set.getInt("absorb_level", 0);
absorbType = AbsorbCrystalType.valueOf(set.getString("absorb_type"));
_factionRange = set.getInt("factionRange", 0);
_npcStatsSet = set;
_custom = custom;
}
@ -173,9 +172,9 @@ public class NpcTemplate extends CreatureTemplate
_teachInfo.add(classId);
}
public ClassId[] getTeachInfo()
public List<ClassId> getTeachInfo()
{
return _teachInfo.toArray(new ClassId[_teachInfo.size()]);
return _teachInfo;
}
public boolean canTeach(ClassId classId)
@ -200,7 +199,7 @@ public class NpcTemplate extends CreatureTemplate
// if the category exists, add the drop to this category.
if (cat.getCategoryType() == categoryType)
{
cat.addDropData(drop, type.equalsIgnoreCase("RaidBoss") || type.equalsIgnoreCase("GrandBoss"));
cat.addDropData(drop, _type.equalsIgnoreCase("RaidBoss") || _type.equalsIgnoreCase("GrandBoss"));
catExists = true;
break;
}
@ -209,7 +208,7 @@ public class NpcTemplate extends CreatureTemplate
if (!catExists)
{
final DropCategory cat = new DropCategory(categoryType);
cat.addDropData(drop, type.equalsIgnoreCase("RaidBoss") || type.equalsIgnoreCase("GrandBoss"));
cat.addDropData(drop, _type.equalsIgnoreCase("RaidBoss") || _type.equalsIgnoreCase("GrandBoss"));
_categories.add(cat);
}
}
@ -230,6 +229,11 @@ public class NpcTemplate extends CreatureTemplate
_vulnerabilities.put(id, vuln);
}
public String getType()
{
return _type;
}
public double getVulnerability(Stats id)
{
if (_vulnerabilities.get(id) == null)
@ -246,8 +250,7 @@ public class NpcTemplate extends CreatureTemplate
}
/**
* Return the list of all possible UNCATEGORIZED drops of this NpcTemplate.<BR>
* <BR>
* Return the list of all possible UNCATEGORIZED drops of this NpcTemplate.
* @return
*/
public List<DropCategory> getDropData()
@ -258,7 +261,6 @@ public class NpcTemplate extends CreatureTemplate
/**
* Return the list of all possible item drops of this NpcTemplate.<BR>
* (ie full drops and part drops, mats, miscellaneous & UNCATEGORIZED)<BR>
* <BR>
* @return
*/
public List<DropData> getAllDropData()
@ -321,7 +323,7 @@ public class NpcTemplate extends CreatureTemplate
}
else
{
LOGGER.warning("Quest event not allowed in multiple quests. Skipped addition of Event Type \"" + eventType + "\" for NPC \"" + name + "\" and quest \"" + q.getName() + "\".");
LOGGER.warning("Quest event not allowed in multiple quests. Skipped addition of Event Type \"" + eventType + "\" for NPC \"" + _name + "\" and quest \"" + q.getName() + "\".");
}
}
else
@ -362,122 +364,122 @@ public class NpcTemplate extends CreatureTemplate
{
case 1:
{
race = Race.UNDEAD;
_race = Race.UNDEAD;
break;
}
case 2:
{
race = Race.MAGICCREATURE;
_race = Race.MAGICCREATURE;
break;
}
case 3:
{
race = Race.BEAST;
_race = Race.BEAST;
break;
}
case 4:
{
race = Race.ANIMAL;
_race = Race.ANIMAL;
break;
}
case 5:
{
race = Race.PLANT;
_race = Race.PLANT;
break;
}
case 6:
{
race = Race.HUMANOID;
_race = Race.HUMANOID;
break;
}
case 7:
{
race = Race.SPIRIT;
_race = Race.SPIRIT;
break;
}
case 8:
{
race = Race.ANGEL;
_race = Race.ANGEL;
break;
}
case 9:
{
race = Race.DEMON;
_race = Race.DEMON;
break;
}
case 10:
{
race = Race.DRAGON;
_race = Race.DRAGON;
break;
}
case 11:
{
race = Race.GIANT;
_race = Race.GIANT;
break;
}
case 12:
{
race = Race.BUG;
_race = Race.BUG;
break;
}
case 13:
{
race = Race.FAIRIE;
_race = Race.FAIRIE;
break;
}
case 14:
{
race = Race.HUMAN;
_race = Race.HUMAN;
break;
}
case 15:
{
race = Race.ELVE;
_race = Race.ELVE;
break;
}
case 16:
{
race = Race.DARKELVE;
_race = Race.DARKELVE;
break;
}
case 17:
{
race = Race.ORC;
_race = Race.ORC;
break;
}
case 18:
{
race = Race.DWARVE;
_race = Race.DWARVE;
break;
}
case 19:
{
race = Race.OTHER;
_race = Race.OTHER;
break;
}
case 20:
{
race = Race.NONLIVING;
_race = Race.NONLIVING;
break;
}
case 21:
{
race = Race.SIEGEWEAPON;
_race = Race.SIEGEWEAPON;
break;
}
case 22:
{
race = Race.DEFENDINGARMY;
_race = Race.DEFENDINGARMY;
break;
}
case 23:
{
race = Race.MERCENARIE;
_race = Race.MERCENARIE;
break;
}
default:
{
race = Race.UNKNOWN;
_race = Race.UNKNOWN;
break;
}
}
@ -485,36 +487,106 @@ public class NpcTemplate extends CreatureTemplate
public Race getRace()
{
if (race == null)
if (_race == null)
{
race = Race.UNKNOWN;
_race = Race.UNKNOWN;
}
return race;
return _race;
}
/**
* @return the level
*/
public byte getLevel()
{
return level;
return _level;
}
/**
* @return the name
*/
public String getName()
{
return name;
return _name;
}
/**
* @return the npcId
*/
public int getNpcId()
{
return npcId;
return _npcId;
}
public int getIdTemplate()
{
return _idTemplate;
}
public boolean isServerSideName()
{
return _serverSideName;
}
public String getTitle()
{
return _title;
}
public boolean isServerSideTitle()
{
return _serverSideTitle;
}
public String getSex()
{
return _sex;
}
public int getRewardExp()
{
return _rewardExp;
}
public int getRewardSp()
{
return _rewardSp;
}
public int getAggroRange()
{
return _aggroRange;
}
public int getRhand()
{
return _rhand;
}
public int getLhand()
{
return _lhand;
}
public int getArmor()
{
return _armor;
}
public int getAbsorbLevel()
{
return _absorbLevel;
}
public AbsorbCrystalType getAbsorbType()
{
return _absorbType;
}
public String getFactionId()
{
return _factionId;
}
public void setFactionId(String id)
{
_factionId = id;
}
public int getFactionRange()
{
return _factionRange;
}
public boolean isCustom()

View File

@ -31,47 +31,47 @@ import org.l2jmobius.gameserver.model.items.Item;
public class PlayerTemplate extends CreatureTemplate
{
/** The Class object of the PlayerInstance */
public Race race;
public ClassId classId;
private final Race _race;
private final ClassId _classId;
public int _currentCollisionRadius;
public int _currentCollisionHeight;
public String className;
private final int _currentCollisionRadius;
private final int _currentCollisionHeight;
private final String _className;
public int spawnX;
public int spawnY;
public int spawnZ;
private final int _spawnX;
private final int _spawnY;
private final int _spawnZ;
public int classBaseLevel;
public float lvlHpAdd;
public float lvlHpMod;
public float lvlCpAdd;
public float lvlCpMod;
public float lvlMpAdd;
public float lvlMpMod;
private final int _classBaseLevel;
private final float _lvlHpAdd;
private final float _lvlHpMod;
private final float _lvlCpAdd;
private final float _lvlCpMod;
private final float _lvlMpAdd;
private final float _lvlMpMod;
private final List<Item> _items = new ArrayList<>();
public PlayerTemplate(StatsSet set)
{
super(set);
classId = ClassId.getClassId(set.getInt("classId"));
race = Race.values()[set.getInt("raceId")];
className = set.getString("className");
_classId = ClassId.getClassId(set.getInt("classId"));
_race = Race.values()[set.getInt("raceId")];
_className = set.getString("className");
_currentCollisionRadius = set.getInt("collision_radius");
_currentCollisionHeight = set.getInt("collision_height");
spawnX = set.getInt("spawnX");
spawnY = set.getInt("spawnY");
spawnZ = set.getInt("spawnZ");
_spawnX = set.getInt("spawnX");
_spawnY = set.getInt("spawnY");
_spawnZ = set.getInt("spawnZ");
classBaseLevel = set.getInt("classBaseLevel");
lvlHpAdd = set.getFloat("lvlHpAdd");
lvlHpMod = set.getFloat("lvlHpMod");
lvlCpAdd = set.getFloat("lvlCpAdd");
lvlCpMod = set.getFloat("lvlCpMod");
lvlMpAdd = set.getFloat("lvlMpAdd");
lvlMpMod = set.getFloat("lvlMpMod");
_classBaseLevel = set.getInt("classBaseLevel");
_lvlHpAdd = set.getFloat("lvlHpAdd");
_lvlHpMod = set.getFloat("lvlHpMod");
_lvlCpAdd = set.getFloat("lvlCpAdd");
_lvlCpMod = set.getFloat("lvlCpMod");
_lvlMpAdd = set.getFloat("lvlMpAdd");
_lvlMpMod = set.getFloat("lvlMpMod");
}
/**
@ -95,39 +95,100 @@ public class PlayerTemplate extends CreatureTemplate
return _items.toArray(new Item[_items.size()]);
}
/**
* @return
*/
public double getCollisionRadius()
public Race getRace()
{
return _race;
}
public ClassId getClassId()
{
return _classId;
}
@Override
public int getCollisionRadius()
{
return _currentCollisionRadius;
}
/**
* @return
*/
public double getCollisionHeight()
@Override
public int getCollisionHeight()
{
return _currentCollisionHeight;
}
public String getClassName()
{
return _className;
}
public int getSpawnX()
{
return _spawnX;
}
public int getSpawnY()
{
return _spawnY;
}
public int getSpawnZ()
{
return _spawnZ;
}
public int getClassBaseLevel()
{
return _classBaseLevel;
}
public float getLvlHpAdd()
{
return _lvlHpAdd;
}
public float getLvlHpMod()
{
return _lvlHpMod;
}
public float getLvlCpAdd()
{
return _lvlCpAdd;
}
public float getLvlCpMod()
{
return _lvlCpMod;
}
public float getLvlMpAdd()
{
return _lvlMpAdd;
}
public float getLvlMpMod()
{
return _lvlMpMod;
}
public int getBaseFallSafeHeight(boolean female)
{
if ((classId.getRace() == Race.DARK_ELF) || (classId.getRace() == Race.ELF))
if ((_classId.getRace() == Race.DARK_ELF) || (_classId.getRace() == Race.ELF))
{
return classId.isMage() ? (female ? 330 : 300) : female ? 380 : 350;
return _classId.isMage() ? (female ? 330 : 300) : female ? 380 : 350;
}
else if (classId.getRace() == Race.DWARF)
else if (_classId.getRace() == Race.DWARF)
{
return female ? 200 : 180;
}
else if (classId.getRace() == Race.HUMAN)
else if (_classId.getRace() == Race.HUMAN)
{
return classId.isMage() ? (female ? 220 : 200) : female ? 270 : 250;
return _classId.isMage() ? (female ? 220 : 200) : female ? 270 : 250;
}
else if (classId.getRace() == Race.ORC)
else if (_classId.getRace() == Race.ORC)
{
return classId.isMage() ? (female ? 280 : 250) : female ? 220 : 200;
return _classId.isMage() ? (female ? 280 : 250) : female ? 220 : 200;
}
return 400;

View File

@ -51,7 +51,7 @@ public class MonsterRace
{
for (int j = i - 1; j >= 0; j--)
{
if (_monsters[j].getTemplate().npcId == (id + random))
if (_monsters[j].getTemplate().getNpcId() == (id + random))
{
random = Rnd.get(24);
}
@ -61,7 +61,7 @@ public class MonsterRace
try
{
final NpcTemplate template = NpcTable.getInstance().getTemplate(id + random);
final Constructor<?> constructor = Class.forName("org.l2jmobius.gameserver.model.actor.instance." + template.type + "Instance").getConstructors()[0];
final Constructor<?> constructor = Class.forName("org.l2jmobius.gameserver.model.actor.instance." + template.getType() + "Instance").getConstructors()[0];
final int objectId = IdFactory.getInstance().getNextId();
_monsters[i] = (NpcInstance) constructor.newInstance(objectId, template);
}

View File

@ -88,7 +88,7 @@ public class Rebirth
}
// Returns true if BASE CLASS is a mage.
final boolean isMage = player.getBaseTemplate().classId.isMage();
final boolean isMage = player.getBaseTemplate().getClassId().isMage();
// Returns the skill based on next Birth and if isMage.
final Skill skill = getRebirthSkill((currBirth + 1), isMage);
@ -305,7 +305,7 @@ public class Rebirth
// returns the current Rebirth Level
final int rebirthLevel = getRebirthLevel(player);
// Returns true if BASE CLASS is a mage.
final boolean isMage = player.getBaseTemplate().classId.isMage();
final boolean isMage = player.getBaseTemplate().getClassId().isMage();
// Simply return since no bonus skills are granted.
if (rebirthLevel == 0)

View File

@ -306,7 +306,7 @@ public class VIP
}
final NpcTemplate npctmp = NpcTable.getInstance().getTemplate(id);
return npctmp.name;
return npctmp.getName();
}
public static String getItemName(int id, PlayerInstance player)

View File

@ -713,10 +713,10 @@ public class Formulas
public void calc(Env env)
{
final PlayerTemplate t = (PlayerTemplate) env.player.getTemplate();
final int lvl = env.player.getLevel() - t.classBaseLevel;
final double hpmod = t.lvlHpMod * lvl;
final double hpmax = (t.lvlHpAdd + hpmod) * lvl;
final double hpmin = (t.lvlHpAdd * lvl) + hpmod;
final int lvl = env.player.getLevel() - t.getClassBaseLevel();
final double hpmod = t.getLvlHpMod() * lvl;
final double hpmax = (t.getLvlHpAdd() + hpmod) * lvl;
final double hpmin = (t.getLvlHpAdd() * lvl) + hpmod;
env.value += (hpmax + hpmin) / 2;
}
}
@ -760,10 +760,10 @@ public class Formulas
public void calc(Env env)
{
final PlayerTemplate t = (PlayerTemplate) env.player.getTemplate();
final int lvl = env.player.getLevel() - t.classBaseLevel;
final double cpmod = t.lvlCpMod * lvl;
final double cpmax = (t.lvlCpAdd + cpmod) * lvl;
final double cpmin = (t.lvlCpAdd * lvl) + cpmod;
final int lvl = env.player.getLevel() - t.getClassBaseLevel();
final double cpmod = t.getLvlCpMod() * lvl;
final double cpmax = (t.getLvlCpAdd() + cpmod) * lvl;
final double cpmin = (t.getLvlCpAdd() * lvl) + cpmod;
env.value += (cpmax + cpmin) / 2;
}
}
@ -807,10 +807,10 @@ public class Formulas
public void calc(Env env)
{
final PlayerTemplate t = (PlayerTemplate) env.player.getTemplate();
final int lvl = env.player.getLevel() - t.classBaseLevel;
final double mpmod = t.lvlMpMod * lvl;
final double mpmax = (t.lvlMpAdd + mpmod) * lvl;
final double mpmin = (t.lvlMpAdd * lvl) + mpmod;
final int lvl = env.player.getLevel() - t.getClassBaseLevel();
final double mpmod = t.getLvlMpMod() * lvl;
final double mpmax = (t.getLvlMpAdd() + mpmod) * lvl;
final double mpmin = (t.getLvlMpAdd() * lvl) + mpmod;
env.value += (mpmax + mpmin) / 2;
}
}
@ -999,7 +999,7 @@ public class Formulas
*/
public static final double calcHpRegen(Creature creature)
{
double init = creature.getTemplate().baseHpReg;
double init = creature.getTemplate().getBaseHpReg();
double hpRegenMultiplier = creature.isRaid() ? Config.RAID_HP_REGEN_MULTIPLIER : Config.HP_REGEN_MULTIPLIER;
double hpRegenBonus = 0;
@ -1082,7 +1082,7 @@ public class Formulas
*/
public static final double calcMpRegen(Creature creature)
{
double init = creature.getTemplate().baseMpReg;
double init = creature.getTemplate().getBaseMpReg();
double mpRegenMultiplier = creature.isRaid() ? Config.RAID_MP_REGEN_MULTIPLIER : Config.MP_REGEN_MULTIPLIER;
double mpRegenBonus = 0;
@ -1152,7 +1152,7 @@ public class Formulas
*/
public static final double calcCpRegen(Creature creature)
{
double init = creature.getTemplate().baseHpReg;
double init = creature.getTemplate().getBaseHpReg();
double cpRegenMultiplier = Config.CP_REGEN_MULTIPLIER;
final double cpRegenBonus = 0;
@ -2185,72 +2185,72 @@ public class Formulas
{
case AGGRESSION:
{
multiplier = target.getTemplate().baseAggressionVuln;
multiplier = target.getTemplate().getBaseAggressionVuln();
break;
}
case BLEED:
{
multiplier = target.getTemplate().baseBleedVuln;
multiplier = target.getTemplate().getBaseBleedVuln();
break;
}
case POISON:
{
multiplier = target.getTemplate().basePoisonVuln;
multiplier = target.getTemplate().getBasePoisonVuln();
break;
}
case STUN:
{
multiplier = target.getTemplate().baseStunVuln;
multiplier = target.getTemplate().getBaseStunVuln();
break;
}
case ROOT:
{
multiplier = target.getTemplate().baseRootVuln;
multiplier = target.getTemplate().getBaseRootVuln();
break;
}
case MOVEMENT:
{
multiplier = target.getTemplate().baseMovementVuln;
multiplier = target.getTemplate().getBaseMovementVuln();
break;
}
case CONFUSION:
{
multiplier = target.getTemplate().baseConfusionVuln;
multiplier = target.getTemplate().getBaseConfusionVuln();
break;
}
case SLEEP:
{
multiplier = target.getTemplate().baseSleepVuln;
multiplier = target.getTemplate().getBaseSleepVuln();
break;
}
case FIRE:
{
multiplier = target.getTemplate().baseFireVuln;
multiplier = target.getTemplate().getBaseFireVuln();
break;
}
case WIND:
{
multiplier = target.getTemplate().baseWindVuln;
multiplier = target.getTemplate().getBaseWindVuln();
break;
}
case WATER:
{
multiplier = target.getTemplate().baseWaterVuln;
multiplier = target.getTemplate().getBaseWaterVuln();
break;
}
case EARTH:
{
multiplier = target.getTemplate().baseEarthVuln;
multiplier = target.getTemplate().getBaseEarthVuln();
break;
}
case HOLY:
{
multiplier = target.getTemplate().baseHolyVuln;
multiplier = target.getTemplate().getBaseHolyVuln();
break;
}
case DARK:
{
multiplier = target.getTemplate().baseDarkVuln;
multiplier = target.getTemplate().getBaseDarkVuln();
break;
}
default:

View File

@ -42,9 +42,9 @@ public class ConditionTargetRaceId extends Condition
}
final NpcInstance target = (NpcInstance) env.target;
if ((target.getTemplate() != null) && (target.getTemplate().race != null))
if ((target.getTemplate() != null) && (target.getTemplate().getRace() != null))
{
return _raceIds.contains(((NpcInstance) env.target).getTemplate().race.ordinal() + 1);
return _raceIds.contains(((NpcInstance) env.target).getTemplate().getRace().ordinal() + 1);
}
return false;
}

View File

@ -53,8 +53,8 @@ public class EffectGrow extends Effect
if (getEffected() instanceof NpcInstance)
{
final NpcInstance npc = (NpcInstance) getEffected();
npc.setCollisionHeight(npc.getTemplate().collisionHeight);
npc.setCollisionRadius(npc.getTemplate().collisionRadius);
npc.setCollisionHeight(npc.getTemplate().getCollisionHeight());
npc.setCollisionRadius(npc.getTemplate().getCollisionRadius());
getEffected().stopAbnormalEffect(Creature.ABNORMAL_EFFECT_GROW);
}
@ -67,8 +67,8 @@ public class EffectGrow extends Effect
if (getEffected() instanceof NpcInstance)
{
final NpcInstance npc = (NpcInstance) getEffected();
npc.setCollisionHeight(npc.getTemplate().collisionHeight);
npc.setCollisionRadius(npc.getTemplate().collisionRadius);
npc.setCollisionHeight(npc.getTemplate().getCollisionHeight());
npc.setCollisionRadius(npc.getTemplate().getCollisionRadius());
getEffected().stopAbnormalEffect(Creature.ABNORMAL_EFFECT_GROW);
}

View File

@ -208,7 +208,7 @@ public class SkillSummon extends Skill
LOGGER.warning("Summon attempt for nonexisting NPC ID:" + _npcId + ", skill ID:" + getId());
return; // npcID doesn't exist
}
if (summonTemplate.type.equalsIgnoreCase("SiegeSummon"))
if (summonTemplate.getType().equalsIgnoreCase("SiegeSummon"))
{
summon = new SiegeSummonInstance(IdFactory.getInstance().getNextId(), summonTemplate, activeChar, this);
}
@ -217,7 +217,7 @@ public class SkillSummon extends Skill
summon = new SummonInstance(IdFactory.getInstance().getNextId(), summonTemplate, activeChar, this);
}
summon.setName(summonTemplate.name);
summon.setName(summonTemplate.getName());
summon.setTitle(activeChar.getName());
summon.setExpPenalty(_expPenalty);
if (summon.getLevel() >= ExperienceData.getInstance().getMaxLevel())

View File

@ -47,7 +47,7 @@ public class GroupSpawn extends Spawn
try
{
if (_template.type.equalsIgnoreCase("Pet") || _template.type.equalsIgnoreCase("Minion"))
if (_template.getType().equalsIgnoreCase("Pet") || _template.getType().equalsIgnoreCase("Minion"))
{
return null;
}

View File

@ -95,14 +95,14 @@ public class Spawn
}
// The Name of the NpcInstance type managed by this Spawn
String implementationName = _template.type; // implementing class name
String implementationName = _template.getType(); // implementing class name
if (mobTemplate.npcId == 30995)
if (mobTemplate.getNpcId() == 30995)
{
implementationName = "RaceManager";
}
if ((mobTemplate.npcId >= 31046) && (mobTemplate.npcId <= 31053))
if ((mobTemplate.getNpcId() >= 31046) && (mobTemplate.getNpcId() <= 31053))
{
implementationName = "SymbolMaker";
}
@ -174,7 +174,7 @@ public class Spawn
return -1;
}
return _template.npcId;
return _template.getNpcId();
}
/**
@ -427,7 +427,7 @@ public class Spawn
try
{
// Check if the Spawn is not a Net or Minion spawn
if (_template.type.equalsIgnoreCase("Pet") || _template.type.equalsIgnoreCase("Minion"))
if (_template.getType().equalsIgnoreCase("Pet") || _template.getType().equalsIgnoreCase("Minion"))
{
_currentCount++;
@ -460,7 +460,7 @@ public class Spawn
}
catch (Exception e)
{
LOGGER.warning("NPC " + _template.npcId + " class not found " + e);
LOGGER.warning("NPC " + _template.getNpcId() + " class not found " + e);
}
return npc;
}

View File

@ -116,7 +116,7 @@ public class CharacterCreate extends GameClientPacket
}
template = CharTemplateTable.getInstance().getTemplate(_classId);
if ((template == null) || (template.classBaseLevel > 1))
if ((template == null) || (template.getClassBaseLevel() > 1))
{
sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED));
return;
@ -222,7 +222,7 @@ public class CharacterCreate extends GameClientPacket
}
else
{
newChar.setXYZInvisible(template.spawnX, template.spawnY, template.spawnZ);
newChar.setXYZInvisible(template.getSpawnX(), template.getSpawnY(), template.getSpawnZ());
}
if (Config.ALLOW_CREATE_LVL)

View File

@ -313,7 +313,7 @@ public class RequestActionUse extends GameClientPacket
{
return;
}
final Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, pet.getTemplate().npcId);
final Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, pet.getTemplate().getNpcId());
player.broadcastPacket(mount);
player.setMountType(mount.getMountType());
player.setMountObjectID(pet.getControlItemId());

View File

@ -196,7 +196,7 @@ public class RequestBuyItem extends GameClientPacket
_listId = list.getListId();
if ((_listId > 1000000) && (merchant != null) && (merchant.getTemplate().npcId != (_listId - 1000000)))
if ((_listId > 1000000) && (merchant != null) && (merchant.getTemplate().getNpcId() != (_listId - 1000000)))
{
sendPacket(ActionFailed.STATIC_PACKET);
return;

View File

@ -57,7 +57,7 @@ public class RequestChangePetName extends GameClientPacket
player.sendPacket(new SystemMessage(SystemMessageId.NAMING_YOU_CANNOT_SET_NAME_OF_THE_PET));
return;
}
else if (PetNameTable.getInstance().doesPetNameExist(_name, pet.getTemplate().npcId))
else if (PetNameTable.getInstance().doesPetNameExist(_name, pet.getTemplate().getNpcId()))
{
player.sendPacket(new SystemMessage(SystemMessageId.NAMING_ALREADY_IN_USE_BY_ANOTHER_PET));
return;

View File

@ -118,7 +118,7 @@ public class RequestSellItem extends GameClientPacket
return;
}
if ((_listId > 1000000) && (merchant.getTemplate().npcId != (_listId - 1000000)))
if ((_listId > 1000000) && (merchant.getTemplate().getNpcId() != (_listId - 1000000)))
{
sendPacket(ActionFailed.STATIC_PACKET);
return;

View File

@ -153,8 +153,8 @@ public class CharInfo extends GameServerPacket
writeD(_flyWalkSpd);
writeF(_moveMultiplier);
writeF(_attackSpeedMultiplier);
writeF(template.collisionRadius);
writeF(template.collisionHeight);
writeF(template.getCollisionRadius());
writeF(template.getCollisionHeight());
writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); // right hand weapon
writeD(0);
writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); // left hand weapon
@ -284,8 +284,8 @@ public class CharInfo extends GameServerPacket
writeD(_flyWalkSpd);
writeF(_player.getMovementSpeedMultiplier()); // _activeChar.getProperMultiplier()
writeF(_player.getAttackSpeedMultiplier()); // _activeChar.getAttackSpeedMultiplier()
writeF(_player.getBaseTemplate().collisionRadius);
writeF(_player.getBaseTemplate().collisionHeight);
writeF(_player.getBaseTemplate().getCollisionRadius());
writeF(_player.getBaseTemplate().getCollisionHeight());
writeD(_player.getAppearance().getHairStyle());
writeD(_player.getAppearance().getHairColor());

View File

@ -41,25 +41,25 @@ public class CharTemplates extends GameServerPacket
for (PlayerTemplate temp : _chars)
{
writeD(temp.race.ordinal());
writeD(temp.classId.getId());
writeD(temp.getRace().ordinal());
writeD(temp.getClassId().getId());
writeD(0x46);
writeD(temp.baseSTR);
writeD(temp.getBaseSTR());
writeD(0x0a);
writeD(0x46);
writeD(temp.baseDEX);
writeD(temp.getBaseDEX());
writeD(0x0a);
writeD(0x46);
writeD(temp.baseCON);
writeD(temp.getBaseCON());
writeD(0x0a);
writeD(0x46);
writeD(temp.baseINT);
writeD(temp.getBaseINT());
writeD(0x0a);
writeD(0x46);
writeD(temp.baseWIT);
writeD(temp.getBaseWIT());
writeD(0x0a);
writeD(0x46);
writeD(temp.baseMEN);
writeD(temp.getBaseMEN());
writeD(0x0a);
}
}

View File

@ -177,8 +177,8 @@ public class GMViewCharacterInfo extends GameServerPacket
writeD(_walkSpd);
writeF(moveMultiplier);
writeF(_player.getAttackSpeedMultiplier()); // 2.9); //
writeF(_player.getTemplate().collisionRadius); // scale
writeF(_player.getTemplate().collisionHeight); // y offset ??!? fem dwarf 4033
writeF(_player.getTemplate().getCollisionRadius()); // scale
writeF(_player.getTemplate().getCollisionHeight()); // y offset ??!? fem dwarf 4033
writeD(_player.getAppearance().getHairStyle());
writeD(_player.getAppearance().getHairColor());
writeD(_player.getAppearance().getFace());

View File

@ -52,15 +52,15 @@ public class MonRaceInfo extends GameServerPacket
for (int i = 0; i < 8; i++)
{
writeD(_monsters[i].getObjectId()); // npcObjectID
writeD(_monsters[i].getTemplate().npcId + 1000000); // npcID
writeD(_monsters[i].getTemplate().getNpcId() + 1000000); // npcID
writeD(14107); // origin X
writeD(181875 + (58 * (7 - i))); // origin Y
writeD(-3566); // origin Z
writeD(12080); // end X
writeD(181875 + (58 * (7 - i))); // end Y
writeD(-3566); // end Z
writeF(_monsters[i].getTemplate().collisionHeight); // coll. height
writeF(_monsters[i].getTemplate().collisionRadius); // coll. radius
writeF(_monsters[i].getTemplate().getCollisionHeight()); // coll. height
writeF(_monsters[i].getTemplate().getCollisionRadius()); // coll. radius
writeD(120); // ?? unknown
for (int j = 0; j < 20; j++)
{

View File

@ -71,25 +71,25 @@ public class NpcInfo extends GameServerPacket
return;
}
_creature = cha;
_idTemplate = cha.getTemplate().idTemplate;
_idTemplate = cha.getTemplate().getIdTemplate();
_isAttackable = cha.isAutoAttackable(attacker);
_rhand = cha.getRightHandItem();
_lhand = cha.getLeftHandItem();
_isSummoned = false;
_collisionHeight = cha.getCollisionHeight();
_collisionRadius = cha.getCollisionRadius();
if (cha.getTemplate().serverSideName)
if (cha.getTemplate().isServerSideName())
{
_name = cha.getTemplate().name;
_name = cha.getTemplate().getName();
}
if (Config.L2JMOD_CHAMPION_ENABLE && cha.isChampion())
{
_title = Config.L2JMOD_CHAMP_TITLE;
}
else if (cha.getTemplate().serverSideTitle)
else if (cha.getTemplate().isServerSideTitle())
{
_title = cha.getTemplate().title;
_title = cha.getTemplate().getTitle();
}
else
{
@ -145,14 +145,14 @@ public class NpcInfo extends GameServerPacket
public NpcInfo(Summon cha, Creature attacker)
{
_creature = cha;
_idTemplate = cha.getTemplate().idTemplate;
_idTemplate = cha.getTemplate().getIdTemplate();
_isAttackable = cha.isAutoAttackable(attacker); // (cha.getKarma() > 0);
_rhand = 0;
_lhand = 0;
_isSummoned = cha.isShowSummonAnimation();
_collisionHeight = _creature.getTemplate().collisionHeight;
_collisionRadius = _creature.getTemplate().collisionRadius;
if (cha.getTemplate().serverSideName || (cha instanceof PetInstance) || (cha instanceof SummonInstance))
_collisionHeight = _creature.getTemplate().getCollisionHeight();
_collisionRadius = _creature.getTemplate().getCollisionRadius();
if (cha.getTemplate().isServerSideName() || (cha instanceof PetInstance) || (cha instanceof SummonInstance))
{
_name = _creature.getName();
_title = cha.getTitle();

View File

@ -72,14 +72,14 @@ public class NpcInfoPoly extends GameServerPacket
_rhand = 0;
_lhand = 0;
_isSummoned = false;
_collisionRadius = _template.collisionRadius;
_collisionHeight = _template.collisionHeight;
_collisionRadius = _template.getCollisionRadius();
_collisionHeight = _template.getCollisionHeight();
if (_obj instanceof Creature)
{
_creature = (Creature) obj;
_isAttackable = obj.isAutoAttackable(attacker);
_rhand = _template.rhand;
_lhand = _template.lhand;
_rhand = _template.getRhand();
_lhand = _template.getLhand();
}
if (_obj instanceof ItemInstance)

View File

@ -86,7 +86,7 @@ public class PetInfo extends GameServerPacket
writeC(0xb1);
writeD(_summon.getSummonType());
writeD(_summon.getObjectId());
writeD(_summon.getTemplate().idTemplate + 1000000);
writeD(_summon.getTemplate().getIdTemplate() + 1000000);
writeD(0); // 1=attackable
writeD(_x);
@ -107,8 +107,8 @@ public class PetInfo extends GameServerPacket
writeF(1/* _cha.getProperMultiplier() */);
writeF(1/* _cha.getAttackSpeedMultiplier() */);
writeF(_summon.getTemplate().collisionRadius);
writeF(_summon.getTemplate().collisionHeight);
writeF(_summon.getTemplate().getCollisionRadius());
writeF(_summon.getTemplate().getCollisionHeight());
writeD(0); // right hand weapon
writeD(0);
writeD(0); // left hand weapon
@ -147,7 +147,7 @@ public class PetInfo extends GameServerPacket
writeD(_summon.getMAtkSpd()); // casting speed
writeD(0); // c2 abnormal visual effect... bleed=1; poison=2; poison & bleed=3; flame=4;
final int npcId = _summon.getTemplate().npcId;
final int npcId = _summon.getTemplate().getNpcId();
if ((npcId >= 12526) && (npcId <= 12528))
{

View File

@ -233,13 +233,13 @@ public class UserInfo extends GameServerPacket
final Summon pet = _player.getPet();
if ((_player.getMountType() != 0) && (pet != null))
{
writeF(pet.getTemplate().collisionRadius);
writeF(pet.getTemplate().collisionHeight);
writeF(pet.getTemplate().getCollisionRadius());
writeF(pet.getTemplate().getCollisionHeight());
}
else
{
writeF(_player.getBaseTemplate().collisionRadius);
writeF(_player.getBaseTemplate().collisionHeight);
writeF(_player.getBaseTemplate().getCollisionRadius());
writeF(_player.getBaseTemplate().getCollisionHeight());
}
writeD(_player.getAppearance().getHairStyle());
@ -257,7 +257,7 @@ public class UserInfo extends GameServerPacket
final NpcTemplate polyObj = NpcTable.getInstance().getTemplate(_player.getPoly().getPolyId());
if (polyObj != null)
{
title += " - " + polyObj.name;
title += " - " + polyObj.getName();
}
}
writeS(title);

View File

@ -176,11 +176,11 @@ public class Util
int rad = 0;
if (obj1 instanceof Creature)
{
rad += ((Creature) obj1).getTemplate().collisionRadius;
rad += ((Creature) obj1).getTemplate().getCollisionRadius();
}
if (obj2 instanceof Creature)
{
rad += ((Creature) obj2).getTemplate().collisionRadius;
rad += ((Creature) obj2).getTemplate().getCollisionRadius();
}
final double dx = obj1.getX() - obj2.getX();