Removal of assorted empty lines.
This commit is contained in:
@@ -61,7 +61,6 @@ public class BabyPets extends AbstractNpcAI
|
||||
if (event.equals("HEAL") && (player != null))
|
||||
{
|
||||
final Summon summon = player.getPet();
|
||||
|
||||
if (summon != null)
|
||||
{
|
||||
if (getRandom(100) <= 25)
|
||||
@@ -105,12 +104,10 @@ public class BabyPets extends AbstractNpcAI
|
||||
{
|
||||
final boolean previousFollowStatus = summon.getFollowStatus();
|
||||
final PlayerInstance owner = summon.getOwner();
|
||||
|
||||
if (!owner.isDead() && (((owner.getCurrentHp() / owner.getMaxHp()) * 100) < maxHpPer) && !summon.isHungry() && SkillCaster.checkUseConditions(summon, skill.getSkill()))
|
||||
{
|
||||
summon.getAI().setIntention(CtrlIntention.AI_INTENTION_CAST, skill.getSkill(), owner);
|
||||
summon.sendPacket(new SystemMessage(SystemMessageId.YOUR_PET_USES_S1).addSkillName(skill.getSkill()));
|
||||
|
||||
if (previousFollowStatus != summon.getFollowStatus())
|
||||
{
|
||||
summon.setFollowStatus(previousFollowStatus);
|
||||
|
@@ -249,7 +249,6 @@ public class BeastFarm extends AbstractNpcAI
|
||||
if (CommonUtil.contains(TAMED_BEASTS, nextNpcId))
|
||||
{
|
||||
final TamedBeastInstance nextNpc = new TamedBeastInstance(nextNpcId, player, food, npc.getX(), npc.getY(), npc.getZ(), true);
|
||||
|
||||
final TamedBeast beast = TAMED_BEAST_DATA.get(getRandom(TAMED_BEAST_DATA.size()));
|
||||
String name = beast.getName();
|
||||
switch (nextNpcId)
|
||||
@@ -298,7 +297,6 @@ public class BeastFarm extends AbstractNpcAI
|
||||
nextNpc.setRunning();
|
||||
nextNpc.addDamageHate(player, 0, 99999);
|
||||
nextNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
|
||||
player.setTarget(nextNpc);
|
||||
}
|
||||
}
|
||||
|
@@ -444,7 +444,6 @@ public class FeedableBeasts extends AbstractNpcAI
|
||||
// if not trained, the newly spawned mob will automatically be aggro against its feeder
|
||||
// (what happened to "never bite the hand that feeds you" anyway?!)
|
||||
final Attackable nextNpc = (Attackable) addSpawn(nextNpcId, npc);
|
||||
|
||||
if (MAD_COW_POLYMORPH.containsKey(nextNpcId))
|
||||
{
|
||||
startQuestTimer("polymorph Mad Cow", 10000, nextNpc, player);
|
||||
|
@@ -61,7 +61,6 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
if (player != null)
|
||||
{
|
||||
final Summon summon = player.getPet();
|
||||
|
||||
if (summon == null)
|
||||
{
|
||||
cancelQuestTimer("HEAL", null, player);
|
||||
@@ -73,11 +72,9 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
final double mpPer = (player.getCurrentMp() / player.getMaxMp()) * 100;
|
||||
final int healType = summon.getTemplate().getParameters().getInt("heal_type", 0);
|
||||
final int skillLv = (int) Math.floor((summon.getLevel() / 5) - 11);
|
||||
|
||||
if (healType == 1)
|
||||
{
|
||||
final int stepLv = CommonUtil.constrain(skillLv, 0, 3);
|
||||
|
||||
if ((hpPer >= 30) && (hpPer < 70))
|
||||
{
|
||||
castHeal(summon, stepLv, 1);
|
||||
@@ -102,7 +99,6 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
else if (event.equals("BUFF") && !summon.isAffectedBySkill(PET_CONTROL) && !summon.isHungry())
|
||||
{
|
||||
final int buffStep = (int) CommonUtil.constrain(Math.floor((summon.getLevel() / 5) - 11), 0, 3);
|
||||
|
||||
for (int i = 1; i <= (2 * (1 + buffStep)); i++)
|
||||
{
|
||||
if (castBuff(summon, buffStep, i))
|
||||
@@ -135,13 +131,11 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
final PlayerInstance owner = summon.getOwner();
|
||||
final StatSet parameters = summon.getTemplate().getParameters();
|
||||
final SkillHolder skill = parameters.getObject("step" + stepNumber + "_buff0" + buffNumber, SkillHolder.class);
|
||||
|
||||
if ((skill != null) && (owner != null))
|
||||
{
|
||||
final boolean previousFollowStatus = summon.getFollowStatus();
|
||||
final SkillHolder mergedSkill = parameters.getObject("step" + stepNumber + "_merged_buff0" + buffNumber, SkillHolder.class);
|
||||
final int targetType = parameters.getInt("step" + stepNumber + "_buff_target0" + buffNumber, 0);
|
||||
|
||||
if (!owner.hasAbnormalType(skill.getSkill().getAbnormalType()) && SkillCaster.checkUseConditions(summon, skill.getSkill()) && !owner.isDead())
|
||||
{
|
||||
if (mergedSkill != null)
|
||||
@@ -161,7 +155,6 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
{
|
||||
summon.getAI().setIntention(CtrlIntention.AI_INTENTION_CAST, skill.getSkill(), (targetType == 1) ? summon : owner);
|
||||
summon.sendPacket(new SystemMessage(SystemMessageId.YOUR_PET_USES_S1).addSkillName(skill.getSkill()));
|
||||
|
||||
if (previousFollowStatus != summon.getFollowStatus())
|
||||
{
|
||||
summon.setFollowStatus(previousFollowStatus);
|
||||
@@ -180,7 +173,6 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
final StatSet parameters = summon.getTemplate().getParameters();
|
||||
final SkillHolder skill = parameters.getObject("step" + stepNumber + "_heal0" + healNumber, SkillHolder.class);
|
||||
final int targetType = parameters.getInt("step" + stepNumber + "_heal_target0" + healNumber, 0);
|
||||
|
||||
if ((skill != null) && (owner != null) && SkillCaster.checkUseConditions(summon, skill.getSkill()) && !owner.isDead())
|
||||
{
|
||||
if (!previousFollowStatus && !summon.isInsideRadius3D(owner, skill.getSkill().getCastRange()))
|
||||
@@ -194,7 +186,6 @@ public class ImprovedBabyPets extends AbstractNpcAI
|
||||
{
|
||||
summon.getAI().setIntention(CtrlIntention.AI_INTENTION_CAST, skill.getSkill(), (targetType == 1) ? summon : owner);
|
||||
summon.sendPacket(new SystemMessage(SystemMessageId.YOUR_PET_USES_S1).addSkillName(skill.getSkill()));
|
||||
|
||||
if (previousFollowStatus != summon.getFollowStatus())
|
||||
{
|
||||
summon.setFollowStatus(previousFollowStatus);
|
||||
|
@@ -45,7 +45,6 @@ public class Tunatun extends AbstractNpcAI
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "31537-04.html":
|
||||
|
@@ -50,7 +50,6 @@ public class FrozenLabyrinth extends AbstractNpcAI
|
||||
{
|
||||
final int x = diff < 60 ? npc.getX() + diff : npc.getX();
|
||||
final int y = diff >= 60 ? npc.getY() + (diff - 40) : npc.getY();
|
||||
|
||||
final Npc monster = addSpawn(spawnId, x, y, npc.getZ(), npc.getHeading(), false, 0);
|
||||
addAttackPlayerDesire(monster, attacker);
|
||||
diff += 20;
|
||||
|
@@ -92,7 +92,6 @@ public class HotSprings extends AbstractNpcAI
|
||||
final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(diseaseId);
|
||||
final int skillLevel = (info == null) ? 1 : (info.getSkill().getLevel() < 10) ? info.getSkill().getLevel() + 1 : 10;
|
||||
final Skill skill = SkillData.getInstance().getSkill(diseaseId, skillLevel);
|
||||
|
||||
if ((skill != null) && SkillCaster.checkUseConditions(npc, skill))
|
||||
{
|
||||
npc.setTarget(creature);
|
||||
|
@@ -481,7 +481,6 @@ public class FourSepulchers extends AbstractNpcAI implements IXmlReader
|
||||
private void tryEnter(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final int npcId = npc.getId();
|
||||
|
||||
if (!ZoneManager.getInstance().getZoneById(MANAGER_ZONES.get(npcId)).getPlayersInside().isEmpty())
|
||||
{
|
||||
showHtmlFile(player, npcId + "-FULL.htm", npc, null);
|
||||
|
@@ -615,7 +615,6 @@ public class Antharas extends AbstractNpcAI
|
||||
public String onAttack(Npc npc, PlayerInstance attacker, int damage, boolean isSummon, Skill skill)
|
||||
{
|
||||
_lastAttack = System.currentTimeMillis();
|
||||
|
||||
if (npc.getId() == BOMBER)
|
||||
{
|
||||
if (npc.calculateDistance3D(attacker) < 230)
|
||||
@@ -878,7 +877,6 @@ public class Antharas extends AbstractNpcAI
|
||||
|
||||
final double distance_c2 = npc.calculateDistance3D(c2);
|
||||
final double direction_c2 = npc.calculateDirectionTo(c2);
|
||||
|
||||
SkillHolder skillToCast = null;
|
||||
boolean castOnTarget = false;
|
||||
if (npc.getCurrentHp() < (npc.getMaxHp() * 0.25))
|
||||
|
@@ -134,7 +134,6 @@ public class Baium extends AbstractNpcAI
|
||||
final int loc_y = info.getInt("loc_y");
|
||||
final int loc_z = info.getInt("loc_z");
|
||||
final int heading = info.getInt("heading");
|
||||
|
||||
_baium = (GrandBossInstance) addSpawn(BAIUM, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
_baium.setCurrentHpMp(curr_hp, curr_mp);
|
||||
_lastAttack = System.currentTimeMillis();
|
||||
@@ -319,7 +318,6 @@ public class Baium extends AbstractNpcAI
|
||||
{
|
||||
final Attackable mob = (Attackable) npc;
|
||||
final Creature mostHated = mob.getMostHated();
|
||||
|
||||
if ((_baium == null) || _baium.isDead())
|
||||
{
|
||||
mob.deleteMe();
|
||||
@@ -485,7 +483,6 @@ public class Baium extends AbstractNpcAI
|
||||
public String onAttack(Npc npc, PlayerInstance attacker, int damage, boolean isSummon, Skill skill)
|
||||
{
|
||||
_lastAttack = System.currentTimeMillis();
|
||||
|
||||
if (npc.getId() == BAIUM)
|
||||
{
|
||||
if ((attacker.getMountType() == MountType.STRIDER) && !attacker.isAffectedBySkill(ANTI_STRIDER.getSkillId()) && !npc.isSkillDisabled(ANTI_STRIDER.getSkill()))
|
||||
@@ -520,7 +517,6 @@ public class Baium extends AbstractNpcAI
|
||||
{
|
||||
final Attackable mob = (Attackable) npc;
|
||||
final Creature mostHated = mob.getMostHated();
|
||||
|
||||
if ((getRandom(100) < 10) && SkillCaster.checkUseConditions(mob, SPEAR_ATTACK.getSkill()))
|
||||
{
|
||||
if ((mostHated != null) && (npc.calculateDistance3D(mostHated) < 1000) && zone.isCharacterInZone(mostHated))
|
||||
@@ -605,7 +601,6 @@ public class Baium extends AbstractNpcAI
|
||||
public String onSpellFinished(Npc npc, PlayerInstance player, Skill skill)
|
||||
{
|
||||
startQuestTimer("MANAGE_SKILLS", 1000, npc, null);
|
||||
|
||||
if (!zone.isCharacterInZone(npc) && (_baium != null))
|
||||
{
|
||||
_baium.teleToLocation(BAIUM_LOC);
|
||||
|
@@ -83,7 +83,6 @@ public class Core extends AbstractNpcAI
|
||||
private Core()
|
||||
{
|
||||
registerMobs(CORE, DEATH_KNIGHT, DOOM_WRAITH, SUSCEPTOR);
|
||||
|
||||
_firstAttacked = false;
|
||||
final StatSet info = GrandBossManager.getInstance().getStatSet(CORE);
|
||||
if (GrandBossManager.getInstance().getBossStatus(CORE) == DEAD)
|
||||
@@ -199,7 +198,6 @@ public class Core extends AbstractNpcAI
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.SYSTEM_IS_BEING_SHUT_DOWN);
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.EMPTY);
|
||||
_firstAttacked = false;
|
||||
|
||||
GrandBossManager.getInstance().setBossStatus(CORE, DEAD);
|
||||
// Calculate Min and Max respawn times randomly.
|
||||
final long respawnTime = (Config.CORE_SPAWN_INTERVAL + getRandom(-Config.CORE_SPAWN_RANDOM, Config.CORE_SPAWN_RANDOM)) * 3600000;
|
||||
|
@@ -59,7 +59,6 @@ public class DrChaos extends AbstractNpcAI
|
||||
{
|
||||
addFirstTalkId(DOCTOR_CHAOS); // Different HTMs following actual humor.
|
||||
addSpawnId(DOCTOR_CHAOS); // Timer activation at 30sec + paranoia activity.
|
||||
|
||||
addKillId(CHAOS_GOLEM); // Message + despawn.
|
||||
addAttackId(CHAOS_GOLEM); // Random messages when he attacks.
|
||||
|
||||
@@ -91,12 +90,10 @@ public class DrChaos extends AbstractNpcAI
|
||||
final int heading = info.getInt("heading");
|
||||
final int hp = info.getInt("currentHP");
|
||||
final int mp = info.getInt("currentMP");
|
||||
|
||||
final GrandBossInstance golem = (GrandBossInstance) addSpawn(CHAOS_GOLEM, loc_x, loc_y, loc_z, heading, false, 0, false);
|
||||
GrandBossManager.getInstance().addBoss(golem);
|
||||
|
||||
final Npc _golem = golem;
|
||||
|
||||
_golem.setCurrentHpMp(hp, mp);
|
||||
_golem.setRunning();
|
||||
|
||||
@@ -206,11 +203,9 @@ public class DrChaos extends AbstractNpcAI
|
||||
public String onFirstTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = "";
|
||||
|
||||
if (GrandBossManager.getInstance().getBossStatus(CHAOS_GOLEM) == NORMAL)
|
||||
{
|
||||
_pissedOffTimer -= 1 + Rnd.get(5); // remove 1-5 secs.
|
||||
|
||||
if ((_pissedOffTimer > 20) && (_pissedOffTimer <= 30))
|
||||
{
|
||||
htmltext = "<html><body>Doctor Chaos:<br>What?! Who are you? How did you come here?<br>You really look suspicious... Aren't those filthy members of Black Anvil guild send you? No? Mhhhhh... I don't trust you!</body></html>";
|
||||
@@ -228,7 +223,6 @@ public class DrChaos extends AbstractNpcAI
|
||||
crazyMidgetBecomesAngry(npc);
|
||||
}
|
||||
}
|
||||
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@@ -240,7 +234,6 @@ public class DrChaos extends AbstractNpcAI
|
||||
|
||||
// Initialization of the paranoia.
|
||||
startQuestTimer("paranoia_activity", 1000, npc, null, true);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -252,7 +245,6 @@ public class DrChaos extends AbstractNpcAI
|
||||
|
||||
// "lock" Dr. Chaos for regular RB time (36H fixed +- 24H random)
|
||||
final long respawnTime = (36 + Rnd.get(-24, 24)) * 3600000;
|
||||
|
||||
GrandBossManager.getInstance().setBossStatus(CHAOS_GOLEM, DEAD);
|
||||
startQuestTimer("reset_drchaos", respawnTime, null, null, false);
|
||||
|
||||
@@ -260,7 +252,6 @@ public class DrChaos extends AbstractNpcAI
|
||||
final StatSet info = GrandBossManager.getInstance().getStatSet(CHAOS_GOLEM);
|
||||
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
|
||||
GrandBossManager.getInstance().setStatSet(CHAOS_GOLEM, info);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@@ -202,7 +202,6 @@ public class LastImperialTomb extends AbstractInstance
|
||||
case "FRINTEZZA_INTRO_2":
|
||||
{
|
||||
final Instance world = player.getInstanceWorld();
|
||||
|
||||
final Npc frintezzaDummy = addSpawn(DUMMY, -87784, -155083, -9087, 16048, false, 0, false, world.getId());
|
||||
world.setParameter("frintezzaDummy", frintezzaDummy);
|
||||
|
||||
@@ -219,7 +218,6 @@ public class LastImperialTomb extends AbstractInstance
|
||||
|
||||
final Npc scarletDummy = addSpawn(DUMMY2, -87784, -153298, -9175, 16384, false, 0, false, world.getId());
|
||||
world.setParameter("scarletDummy", scarletDummy);
|
||||
|
||||
disablePlayers(world);
|
||||
|
||||
// broadcastPacket(world, new SpecialCamera(overheadDummy, 0, 75, -89, 0, 100, 0, 0, 1, 0, 0));
|
||||
@@ -241,7 +239,6 @@ public class LastImperialTomb extends AbstractInstance
|
||||
demons.add(demon);
|
||||
}
|
||||
world.setParameter("demons", demons);
|
||||
|
||||
startQuestTimer("FRINTEZZA_INTRO_3", 6500, null, player, false);
|
||||
break;
|
||||
}
|
||||
@@ -505,7 +502,6 @@ public class LastImperialTomb extends AbstractInstance
|
||||
broadcastPacket(world, new SocialAction(frintezza.getObjectId(), 4));
|
||||
broadcastPacket(world, new SpecialCamera(frintezza, 250, 120, 15, 0, 1000, 0, 0, 1, 0, 0));
|
||||
broadcastPacket(world, new SpecialCamera(frintezza, 250, 120, 15, 0, 10000, 0, 0, 1, 0, 0));
|
||||
|
||||
startQuestTimer("SCARLET_SECOND_MORPH_CAMERA_2", 7000, npc, null, false);
|
||||
break;
|
||||
}
|
||||
|
@@ -162,7 +162,6 @@ public class ScarletVanHalisha extends AbstractNpcAI
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return SkillData.getInstance().getSkill(FRINTEZZA_DAEMON_ATTACK, 1);
|
||||
}
|
||||
|
||||
|
@@ -279,7 +279,6 @@ public class QueenAnt extends AbstractNpcAI
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
|
@@ -152,7 +152,6 @@ public class Sailren extends AbstractNpcAI
|
||||
sailren.setInvul(true);
|
||||
sailren.setImmobilized(true);
|
||||
zone.broadcastPacket(new SpecialCamera(movieNpc, 60, 110, 30, 4000, 1500, 20000, 0, 65, 1, 0, 0));
|
||||
|
||||
startQuestTimer("ATTACK", 24600, sailren, null);
|
||||
startQuestTimer("ANIMATION", 2000, movieNpc, null);
|
||||
startQuestTimer("CAMERA_1", 4100, movieNpc, null);
|
||||
|
@@ -638,7 +638,6 @@ public class CastleChamberlain extends AbstractNpcAI
|
||||
final int level = Integer.parseInt(st.nextToken());
|
||||
final int price = getTrapUpgradePrice(level);
|
||||
final int currentLevel = castle.getTrapUpgradeLevel(trapIndex);
|
||||
|
||||
if (currentLevel >= level)
|
||||
{
|
||||
final NpcHtmlMessage html = getHtmlPacket(player, npc, "chamberlain-19.html");
|
||||
@@ -1140,7 +1139,6 @@ public class CastleChamberlain extends AbstractNpcAI
|
||||
else if (isMyLord)
|
||||
{
|
||||
final int cloakId = npc.getCastle().getSide() == CastleSide.DARK ? LORD_CLOAK_OF_DARK : LORD_CLOAK_OF_LIGHT;
|
||||
|
||||
if (hasQuestItems(player, cloakId))
|
||||
{
|
||||
htmltext = "chamberlain-03.html";
|
||||
|
@@ -77,7 +77,6 @@ public class CastleDoorManager extends AbstractNpcAI
|
||||
final StringTokenizer st = new StringTokenizer(event, " ");
|
||||
final String action = st.nextToken();
|
||||
String htmltext = null;
|
||||
|
||||
switch (action)
|
||||
{
|
||||
case "manageDoors":
|
||||
@@ -94,7 +93,6 @@ public class CastleDoorManager extends AbstractNpcAI
|
||||
final boolean open = st.nextToken().equals("1");
|
||||
final String doorName1 = npc.getParameters().getString("DoorName1", null);
|
||||
final String doorName2 = npc.getParameters().getString("DoorName2", null);
|
||||
|
||||
castle.openCloseDoor(player, doorName1, open);
|
||||
castle.openCloseDoor(player, doorName2, open);
|
||||
}
|
||||
@@ -110,7 +108,6 @@ public class CastleDoorManager extends AbstractNpcAI
|
||||
if (isOwningClan(player, npc) && st.hasMoreTokens())
|
||||
{
|
||||
final int param = Integer.parseInt(st.nextToken());
|
||||
|
||||
if (param == 1)
|
||||
{
|
||||
final int x = npc.getParameters().getInt("pos_x01");
|
||||
|
@@ -63,7 +63,6 @@ public class ClanHallDoorManager extends AbstractNpcAI
|
||||
final String action = st.nextToken();
|
||||
final ClanHall clanHall = npc.getClanHall();
|
||||
String htmltext = null;
|
||||
|
||||
if (clanHall != null)
|
||||
{
|
||||
switch (action)
|
||||
|
@@ -103,7 +103,6 @@ public class ClanHallManager extends AbstractNpcAI
|
||||
final String action = st.nextToken();
|
||||
final ClanHall clanHall = npc.getClanHall();
|
||||
String htmltext = null;
|
||||
|
||||
if ((clanHall != null) && isOwningClan(player, npc))
|
||||
{
|
||||
switch (action)
|
||||
@@ -316,7 +315,6 @@ public class ClanHallManager extends AbstractNpcAI
|
||||
{
|
||||
final int funcId = Integer.parseInt(st.nextToken());
|
||||
final int funcLv = Integer.parseInt(st.nextToken());
|
||||
|
||||
final ResidenceFunction oldFunc = clanHall.getFunction(funcId, funcLv);
|
||||
if (oldFunc != null)
|
||||
{
|
||||
@@ -369,7 +367,6 @@ public class ClanHallManager extends AbstractNpcAI
|
||||
if (st.countTokens() == 2)
|
||||
{
|
||||
final String act = st.nextToken();
|
||||
|
||||
final ResidenceFunctionType funcType = ResidenceFunctionType.valueOf(st.nextToken());
|
||||
if (funcType != null)
|
||||
{
|
||||
@@ -427,7 +424,6 @@ public class ClanHallManager extends AbstractNpcAI
|
||||
{
|
||||
String htmltext = null;
|
||||
final ClanHall clanHall = npc.getClanHall();
|
||||
|
||||
if (isOwningClan(player, npc))
|
||||
{
|
||||
if (clanHall.getCostFailDay() == 0)
|
||||
|
@@ -124,7 +124,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
|
||||
_spawnClassMasters = parseBoolean(attrs, "spawnClassMasters", true);
|
||||
_showPopupWindow = parseBoolean(attrs, "showPopupWindow", false);
|
||||
|
||||
for (Node c = cm.getFirstChild(); c != null; c = c.getNextSibling())
|
||||
{
|
||||
attrs = c.getAttributes();
|
||||
@@ -166,7 +165,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
final int itemId = parseInteger(attrs, "id");
|
||||
final int count = parseInteger(attrs, "count", 1);
|
||||
|
||||
rewardedItems.add(new ItemHolder(itemId, count));
|
||||
}
|
||||
else if ("setNoble".equals(r.getNodeName()))
|
||||
@@ -188,7 +186,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
final int itemId = parseInteger(attrs, "id");
|
||||
final int count = parseInteger(attrs, "count", 1);
|
||||
|
||||
requiredItems.add(new ItemHolder(itemId, count));
|
||||
}
|
||||
}
|
||||
@@ -324,7 +321,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
// {
|
||||
// canChange = CategoryData.getInstance().isInCategory(CategoryType.AWAKEN_GROUP, classId); // 11
|
||||
// }
|
||||
|
||||
if (canChange)
|
||||
{
|
||||
int classDataIndex = -1;
|
||||
@@ -862,7 +858,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
public void onPlayerPressTutorialMark(OnPlayerPressTutorialMark event)
|
||||
{
|
||||
final PlayerInstance player = event.getPlayer();
|
||||
|
||||
if (!_showPopupWindow || (event.getMarkId() != 2)) // mark id was 1001 - used 2 for quest text
|
||||
{
|
||||
return;
|
||||
@@ -885,7 +880,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
// {
|
||||
// html = getHtm(player, "qm_awaken.html");
|
||||
// }
|
||||
|
||||
if (html != null)
|
||||
{
|
||||
showResult(event.getPlayer(), html);
|
||||
@@ -929,7 +923,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
private String getClassChangeOptions(PlayerInstance player, int selectedClassId)
|
||||
{
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
|
||||
for (int i = 0; i < _classChangeData.size(); i++)
|
||||
{
|
||||
final ClassChangeData option = getClassChangeData(i);
|
||||
@@ -972,7 +965,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
else
|
||||
{
|
||||
option.getItemsRewarded().forEach(ih -> sb.append("<tr><td><font color=\"LEVEL\">" + ih.getCount() + "</font></td><td>" + ItemTable.getInstance().getTemplate(ih.getId()).getName() + "</td><td width=30></td></tr>"));
|
||||
|
||||
if (option.isRewardNoblesse())
|
||||
{
|
||||
sb.append("<tr><td><font color=\"LEVEL\">Noblesse status.</font></td></tr>");
|
||||
@@ -1027,7 +1019,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1079,7 +1070,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
showOptions = _classChangeData.stream().filter(ccd -> !ccd.getItemsRewarded().isEmpty()).filter(ccd -> ccd.isInCategory(player)).count() > 1; // Check if there is more than 1 reward to chose.
|
||||
}
|
||||
|
||||
return showOptions;
|
||||
}
|
||||
|
||||
@@ -1089,7 +1079,6 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
return _classChangeData.get(index);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@@ -55,7 +55,6 @@ public class DivineBeast extends AbstractNpcAI
|
||||
cancelQuestTimer(event, npc, player);
|
||||
player.getServitors().values().forEach(summon -> summon.unSummon(player));
|
||||
}
|
||||
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
|
||||
|
@@ -59,7 +59,6 @@ public class FleeMonsters extends AbstractNpcAI
|
||||
final int posX = (int) (npc.getX() + (FLEE_DISTANCE * Math.cos(radians)));
|
||||
final int posY = (int) (npc.getY() + (FLEE_DISTANCE * Math.sin(radians)));
|
||||
final int posZ = npc.getZ();
|
||||
|
||||
final Location destination = GeoEngine.getInstance().canMoveToTargetLoc(npc.getX(), npc.getY(), npc.getZ(), posX, posY, posZ, attacker.getInstanceWorld());
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, destination);
|
||||
return super.onAttack(npc, attacker, damage, isSummon);
|
||||
|
@@ -66,7 +66,6 @@ public class GrandBossTeleporters extends AbstractNpcAI
|
||||
{
|
||||
String htmltext = "";
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
|
||||
if (hasQuestItems(player, VACUALITE_FLOATING_STONE))
|
||||
{
|
||||
player.teleToLocation(ENTER_HALL_OF_FLAMES);
|
||||
@@ -92,7 +91,6 @@ public class GrandBossTeleporters extends AbstractNpcAI
|
||||
if (valakasAI() != null)
|
||||
{
|
||||
final int status = GrandBossManager.getInstance().getBossStatus(29028);
|
||||
|
||||
if ((status == 0) || (status == 1))
|
||||
{
|
||||
if (playerCount >= 200)
|
||||
@@ -103,7 +101,6 @@ public class GrandBossTeleporters extends AbstractNpcAI
|
||||
{
|
||||
qs.unset("allowEnter");
|
||||
player.teleToLocation(TELEPORT_INTO_VALAKAS_LAIR.getX() + getRandom(600), TELEPORT_INTO_VALAKAS_LAIR.getY() + getRandom(600), TELEPORT_INTO_VALAKAS_LAIR.getZ());
|
||||
|
||||
playerCount++;
|
||||
|
||||
if (status == 0)
|
||||
|
@@ -68,7 +68,6 @@ public class MonumentOfHeroes extends AbstractNpcAI
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "MonumentOfHeroes-reward.html":
|
||||
|
@@ -71,7 +71,6 @@ public class OlyManager extends AbstractNpcAI implements IBypassHandler
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "OlyManager-info.html":
|
||||
@@ -233,7 +232,6 @@ public class OlyManager extends AbstractNpcAI implements IBypassHandler
|
||||
final int classId = Integer.parseInt(event.replace("rank_", ""));
|
||||
final List<String> names = Olympiad.getInstance().getClassLeaderBoard(classId);
|
||||
htmltext = getHtm(player, "OlyManager-rankDetail.html");
|
||||
|
||||
int index = 1;
|
||||
for (String name : names)
|
||||
{
|
||||
@@ -260,7 +258,6 @@ public class OlyManager extends AbstractNpcAI implements IBypassHandler
|
||||
public String onFirstTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
|
||||
if (!player.isCursedWeaponEquipped())
|
||||
{
|
||||
htmltext = (!player.isInCategory(CategoryType.THIRD_CLASS_GROUP) && !player.isInCategory(CategoryType.FOURTH_CLASS_GROUP)) || (player.getLevel() < 55) ? "OlyManager-noNoble.html" : "OlyManager-noble.html";
|
||||
@@ -278,7 +275,6 @@ public class OlyManager extends AbstractNpcAI implements IBypassHandler
|
||||
try
|
||||
{
|
||||
final Npc olymanager = player.getLastFolkNPC();
|
||||
|
||||
if (command.startsWith(BYPASSES[0])) // list
|
||||
{
|
||||
if (!Olympiad.getInstance().inCompPeriod())
|
||||
|
@@ -56,7 +56,6 @@ public class SinEater extends AbstractNpcAI
|
||||
{
|
||||
final int random = getRandom(100);
|
||||
final Summon summon = player.getPet();
|
||||
|
||||
if (random < 20)
|
||||
{
|
||||
broadcastSummonSay(summon, NpcStringId.YAWWWWN_IT_S_SO_BORING_HERE_WE_SHOULD_GO_AND_FIND_SOME_ACTION);
|
||||
@@ -90,7 +89,6 @@ public class SinEater extends AbstractNpcAI
|
||||
{
|
||||
final int random = getRandom(100);
|
||||
final Summon summon = (Summon) event.getTarget();
|
||||
|
||||
if (random < 30)
|
||||
{
|
||||
broadcastSummonSay(summon, NpcStringId.OH_THIS_IS_JUST_GREAT_WHAT_ARE_YOU_GOING_TO_DO_NOW);
|
||||
@@ -114,7 +112,6 @@ public class SinEater extends AbstractNpcAI
|
||||
{
|
||||
final int random = getRandom(100);
|
||||
final Summon summon = (Summon) event.getTarget();
|
||||
|
||||
if (random < 35)
|
||||
{
|
||||
broadcastSummonSay(summon, NpcStringId.OH_THAT_SMARTS);
|
||||
@@ -143,7 +140,6 @@ public class SinEater extends AbstractNpcAI
|
||||
if (getRandom(100) < 10)
|
||||
{
|
||||
final int random = getRandom(100);
|
||||
|
||||
if (random < 25)
|
||||
{
|
||||
broadcastSummonSay(summon, NpcStringId.USING_A_SPECIAL_SKILL_HERE_COULD_TRIGGER_A_BLOODBATH);
|
||||
|
@@ -101,7 +101,6 @@ public class EchoCrystals extends AbstractNpcAI
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = "";
|
||||
|
||||
if (Util.isDigit(event))
|
||||
{
|
||||
final int score = Integer.parseInt(event);
|
||||
@@ -111,7 +110,6 @@ public class EchoCrystals extends AbstractNpcAI
|
||||
final String ok = SCORES.get(score).getOkMsg();
|
||||
final String noadena = SCORES.get(score).getNoAdenaMsg();
|
||||
final String noscore = SCORES.get(score).getNoScoreMsg();
|
||||
|
||||
if (!hasQuestItems(player, score))
|
||||
{
|
||||
htmltext = npc.getId() + "-" + noscore + ".htm";
|
||||
@@ -128,11 +126,6 @@ public class EchoCrystals extends AbstractNpcAI
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
|
@@ -96,10 +96,8 @@ public class Elpies extends Event
|
||||
EVENT_ACTIVE = true;
|
||||
|
||||
final EventLocation randomLoc = getRandomEntry(EventLocation.values());
|
||||
|
||||
CURRENT_ELPY_COUNT = 0;
|
||||
final long despawnDelay = EVENT_DURATION_MINUTES * 60000;
|
||||
|
||||
for (int i = 0; i < ELPY_AMOUNT; i++)
|
||||
{
|
||||
addSpawn(ELPY, randomLoc.getRandomX(), randomLoc.getRandomY(), randomLoc.getZ(), 0, true, despawnDelay);
|
||||
@@ -110,7 +108,6 @@ public class Elpies extends Event
|
||||
Broadcast.toAllOnlinePlayers("Elpy invasion in " + randomLoc.getName());
|
||||
Broadcast.toAllOnlinePlayers("Help us exterminate them!");
|
||||
Broadcast.toAllOnlinePlayers("You have " + EVENT_DURATION_MINUTES + " minutes!");
|
||||
|
||||
_eventTask = ThreadPool.schedule(() ->
|
||||
{
|
||||
Broadcast.toAllOnlinePlayers("Time is up!");
|
||||
@@ -128,7 +125,6 @@ public class Elpies extends Event
|
||||
}
|
||||
|
||||
EVENT_ACTIVE = false;
|
||||
|
||||
if (_eventTask != null)
|
||||
{
|
||||
_eventTask.cancel(true);
|
||||
@@ -164,7 +160,6 @@ public class Elpies extends Event
|
||||
eventStop();
|
||||
}
|
||||
}
|
||||
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@@ -225,7 +220,6 @@ public class Elpies extends Event
|
||||
private void dropItem(Npc mob, PlayerInstance player, int[][] droplist)
|
||||
{
|
||||
final int chance = getRandom(100);
|
||||
|
||||
for (int[] drop : droplist)
|
||||
{
|
||||
if (chance >= drop[1])
|
||||
|
@@ -158,7 +158,6 @@ public class Rabbits extends Event
|
||||
|
||||
// Announce event end
|
||||
Broadcast.toAllOnlinePlayers("Rabbits Event: Event has finished.");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -140,9 +140,7 @@ public class Race extends Event
|
||||
|
||||
// Schedule Event end
|
||||
_eventTask = ThreadPool.schedule(this::StartRace, REGISTER_TIME * 60 * 1000);
|
||||
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
protected void StartRace()
|
||||
@@ -226,7 +224,6 @@ public class Race extends Event
|
||||
_players.clear();
|
||||
// Announce event end
|
||||
Broadcast.toAllOnlinePlayers("* Race Event finished *");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -329,7 +326,6 @@ public class Race extends Event
|
||||
public String onFirstTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
getQuestState(player, true);
|
||||
|
||||
if (npc.getId() == START_NPC)
|
||||
{
|
||||
if (_isRaceStarted)
|
||||
|
@@ -22,4 +22,4 @@
|
||||
* The mechanics and syntax of custom scripts are the same as all quest scripts.
|
||||
* @author Zoey76
|
||||
*/
|
||||
package custom;
|
||||
package custom;
|
@@ -43,7 +43,6 @@ public class PetInstanceAction implements IActionHandler
|
||||
}
|
||||
|
||||
final boolean isOwner = player.getObjectId() == ((PetInstance) target).getOwner().getObjectId();
|
||||
|
||||
if (isOwner && (player != ((PetInstance) target).getOwner()))
|
||||
{
|
||||
((PetInstance) target).updateRefOwner(player);
|
||||
|
@@ -446,7 +446,6 @@ public class AdminAdmin implements IAdminCommandHandler
|
||||
replyMSG.append("<tr><td><font color=\"LEVEL\">Rate SP</font> = " + Config.RATE_SP + "</td><td><edit var=\"param2\" width=40 height=15></td><td><button value=\"Set\" action=\"bypass -h admin_setconfig RateSp $param2\" width=40 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr>");
|
||||
replyMSG.append("<tr><td><font color=\"LEVEL\">Rate Drop Spoil</font> = " + Config.RATE_SPOIL_DROP_CHANCE_MULTIPLIER + "</td><td><edit var=\"param4\" width=40 height=15></td><td><button value=\"Set\" action=\"bypass -h admin_setconfig RateDropSpoil $param4\" width=40 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr>");
|
||||
replyMSG.append("<tr><td width=140></td><td width=40></td><td width=40></td></tr>");
|
||||
|
||||
replyMSG.append("</table></body></html>");
|
||||
adminReply.setHtml(replyMSG.toString());
|
||||
activeChar.sendPacket(adminReply);
|
||||
|
@@ -140,11 +140,9 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
|
||||
st.nextToken();
|
||||
final int objectId = Integer.parseInt(st.nextToken());
|
||||
final int skillId = Integer.parseInt(st.nextToken());
|
||||
|
||||
removeBuff(activeChar, objectId, skillId);
|
||||
return true;
|
||||
}
|
||||
@@ -197,9 +195,7 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final int radius = Integer.parseInt(val);
|
||||
|
||||
World.getInstance().forEachVisibleObjectInRange(activeChar, PlayerInstance.class, radius, Creature::stopAllEffects);
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "All effects canceled within radius " + radius);
|
||||
return true;
|
||||
}
|
||||
@@ -305,7 +301,6 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final String pageLink = "bypass -h admin_getbuffs" + (passive ? "_ps " : " ") + target.getName();
|
||||
|
||||
final PageResult result = PageBuilder.newBuilder(effects, 3, pageLink).currentPage(page).style(ButtonsStyle.INSTANCE).bodyHandler((pages, info, sb) ->
|
||||
{
|
||||
for (AbstractEffect effect : info.getEffects())
|
||||
@@ -331,7 +326,6 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, 1);
|
||||
html.setFile(activeChar, "data/html/admin/getbuffs.htm");
|
||||
|
||||
if (result.getPages() > 0)
|
||||
{
|
||||
html.replace("%pages%", "<table width=280 cellspacing=0><tr>" + result.getPagerTemplate() + "</tr></table>");
|
||||
@@ -426,7 +420,6 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
html.append("<html><table width=\"100%\"><tr><td width=45><button value=\"Main\" action=\"bypass -h admin_admin\" width=45 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td width=180><center><font color=\"LEVEL\">Blocked effects of ");
|
||||
html.append(target.getName());
|
||||
html.append("</font></td><td width=45><button value=\"Back\" action=\"bypass -h admin_getbuffs" + (target.isPlayer() ? (" " + target.getName()) : "") + "\" width=45 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table><br>");
|
||||
|
||||
if ((blockedAbnormals != null) && !blockedAbnormals.isEmpty())
|
||||
{
|
||||
html.append("<br>Blocked buff slots: ");
|
||||
@@ -440,7 +433,6 @@ public class AdminBuffs implements IAdminCommandHandler
|
||||
|
||||
// Send the packet
|
||||
activeChar.sendPacket(new NpcHtmlMessage(0, 1, html.toString()));
|
||||
|
||||
if (Config.GMAUDIT)
|
||||
{
|
||||
GMAudit.auditGMAction(activeChar.getName() + " [" + activeChar.getObjectId() + "]", "viewblockedeffects", target.getName() + " (" + Integer.toString(target.getObjectId()) + ")", "");
|
||||
|
@@ -48,7 +48,6 @@ public class AdminCastle implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken();
|
||||
|
||||
if (actualCommand.equals("admin_castlemanage"))
|
||||
{
|
||||
if (st.hasMoreTokens())
|
||||
@@ -235,7 +234,6 @@ public class AdminCastle implements IAdminCommandHandler
|
||||
private void showCastleMenu(PlayerInstance player, int castleId)
|
||||
{
|
||||
final Castle castle = CastleManager.getInstance().getCastleById(castleId);
|
||||
|
||||
if (castle != null)
|
||||
{
|
||||
final Clan ownerClan = castle.getOwner();
|
||||
|
@@ -144,7 +144,6 @@ public class AdminClan implements IAdminCommandHandler
|
||||
break;
|
||||
}
|
||||
final int clanId = Integer.parseInt(token);
|
||||
|
||||
final Clan clan = ClanTable.getInstance().getClan(clanId);
|
||||
if (clan == null)
|
||||
{
|
||||
|
@@ -55,7 +55,6 @@ public class AdminClanHall implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken();
|
||||
|
||||
if (actualCommand.equalsIgnoreCase("admin_clanhall"))
|
||||
{
|
||||
processBypass(activeChar, new BypassParser(command));
|
||||
@@ -215,7 +214,6 @@ public class AdminClanHall implements IAdminCommandHandler
|
||||
final String grade = clanHall.getGrade().toString().replace("GRADE_", "") + " Grade";
|
||||
html.replace("%clanHallGrade%", grade);
|
||||
html.replace("%clanHallSize%", clanHall.getGrade().getGradeValue());
|
||||
|
||||
if (!clanHall.getFunctions().isEmpty())
|
||||
{
|
||||
sb.append("<table border=0 cellpadding=0 cellspacing=0 bgcolor=\"363636\">");
|
||||
@@ -260,7 +258,6 @@ public class AdminClanHall implements IAdminCommandHandler
|
||||
final int clanHallId = parser.getInt("id", 0);
|
||||
final String action = parser.getString("action", null);
|
||||
final String actionVal = parser.getString("actionVal", null);
|
||||
|
||||
if ((clanHallId > 0) && (action != null))
|
||||
{
|
||||
doAction(player, clanHallId, action, actionVal);
|
||||
|
@@ -305,7 +305,6 @@ public class AdminCreateItem implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
target.getInventory().addItem("Admin", id, num, activeChar, null);
|
||||
|
||||
if (activeChar != target)
|
||||
{
|
||||
target.sendMessage("Admin spawned " + num + " " + template.getName() + " in your inventory.");
|
||||
@@ -353,7 +352,6 @@ public class AdminCreateItem implements IAdminCommandHandler
|
||||
{
|
||||
id = 0;
|
||||
}
|
||||
|
||||
return id;
|
||||
}
|
||||
}
|
||||
|
@@ -92,7 +92,6 @@ public class AdminCursedWeapons implements IAdminCommandHandler
|
||||
for (CursedWeapon cw : cwm.getCursedWeapons())
|
||||
{
|
||||
final int itemId = cw.getItemId();
|
||||
|
||||
replyMSG.append("<table width=270><tr><td>Name:</td><td>");
|
||||
replyMSG.append(cw.getName());
|
||||
replyMSG.append("</td></tr>");
|
||||
|
@@ -69,7 +69,6 @@ public class AdminDisconnect implements IAdminCommandHandler
|
||||
else
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Character " + player.getName() + " disconnected from server.");
|
||||
|
||||
Disconnection.of(player).defaultSequence(false);
|
||||
}
|
||||
}
|
||||
|
@@ -624,16 +624,13 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
st.nextToken();
|
||||
|
||||
final boolean changeCreateExpiryTime = st.nextToken().equalsIgnoreCase("create");
|
||||
|
||||
final String playerName = st.nextToken();
|
||||
PlayerInstance player = null;
|
||||
player = World.getInstance().getPlayer(playerName);
|
||||
|
||||
if (player == null)
|
||||
{
|
||||
final Connection con = DatabaseFactory.getConnection();
|
||||
final PreparedStatement ps = con.prepareStatement("UPDATE characters SET " + (changeCreateExpiryTime ? "clan_create_expiry_time" : "clan_join_expiry_time") + " WHERE char_name=? LIMIT 1");
|
||||
|
||||
ps.setString(1, playerName);
|
||||
ps.execute();
|
||||
}
|
||||
@@ -1020,7 +1017,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
return false;
|
||||
}
|
||||
final String statName = st.nextToken();
|
||||
|
||||
Stat stat = null;
|
||||
for (Stat stats : Stat.values())
|
||||
{
|
||||
@@ -1109,7 +1105,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
private void gatherCharacterInfo(PlayerInstance activeChar, PlayerInstance player, String filename)
|
||||
{
|
||||
String ip = "N/A";
|
||||
|
||||
if (player == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Player is null.");
|
||||
@@ -1239,7 +1234,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
adminReply.setFile(activeChar, "data/html/admin/charfind.htm");
|
||||
|
||||
final StringBuilder replyMSG = new StringBuilder(1000);
|
||||
|
||||
final List<PlayerInstance> players = new ArrayList<>(World.getInstance().getPlayers());
|
||||
players.sort(Comparator.comparingLong(PlayerInstance::getUptime));
|
||||
for (PlayerInstance player : players)
|
||||
@@ -1266,7 +1260,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
adminReply.replace("%results%", replyMSG.toString());
|
||||
|
||||
final String replyMSG2;
|
||||
|
||||
if (CharactersFound == 0)
|
||||
{
|
||||
replyMSG2 = "s. Please try again.";
|
||||
@@ -1297,7 +1290,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
private void findCharactersPerIp(PlayerInstance activeChar, String ipAdress)
|
||||
{
|
||||
boolean findDisconnected = false;
|
||||
|
||||
if (ipAdress.equals("disconnected"))
|
||||
{
|
||||
findDisconnected = true;
|
||||
@@ -1365,7 +1357,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
adminReply.replace("%results%", replyMSG.toString());
|
||||
|
||||
final String replyMSG2;
|
||||
|
||||
if (charactersFound == 0)
|
||||
{
|
||||
replyMSG2 = "s. Maybe they got d/c? :)";
|
||||
@@ -1423,7 +1414,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
String ip = "0.0.0.0";
|
||||
GameClient client;
|
||||
final Map<String, Integer> dualboxIPs = new HashMap<>();
|
||||
|
||||
final List<PlayerInstance> players = new ArrayList<>(World.getInstance().getPlayers());
|
||||
players.sort(Comparator.comparingLong(PlayerInstance::getUptime));
|
||||
for (PlayerInstance player : players)
|
||||
@@ -1477,7 +1467,6 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
final Map<IpPack, List<PlayerInstance>> ipMap = new HashMap<>();
|
||||
GameClient client;
|
||||
final Map<IpPack, Integer> dualboxIPs = new HashMap<>();
|
||||
|
||||
final List<PlayerInstance> players = new ArrayList<>(World.getInstance().getPlayers());
|
||||
players.sort(Comparator.comparingLong(PlayerInstance::getUptime));
|
||||
for (PlayerInstance player : players)
|
||||
|
@@ -180,7 +180,6 @@ public class AdminEffects implements IAdminCommandHandler
|
||||
final Creature target = (Creature) activeChar.getTarget();
|
||||
target.setInvisible(!target.isInvisible());
|
||||
BuilderUtil.sendSysMessage(activeChar, "You've made " + target.getName() + " " + (target.isInvisible() ? "invisible" : "visible") + ".");
|
||||
|
||||
if (target.isPlayer())
|
||||
{
|
||||
((PlayerInstance) target).broadcastUserInfo();
|
||||
@@ -382,7 +381,6 @@ public class AdminEffects implements IAdminCommandHandler
|
||||
radius = Integer.parseInt(st.nextToken());
|
||||
}
|
||||
final Team team = Team.valueOf(val.toUpperCase());
|
||||
|
||||
World.getInstance().forEachVisibleObjectInRange(activeChar, PlayerInstance.class, radius, player -> player.setTeam(team));
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -544,7 +542,6 @@ public class AdminEffects implements IAdminCommandHandler
|
||||
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, 1);
|
||||
html.setFile(activeChar, "data/html/admin/ave_abnormal.htm");
|
||||
|
||||
if (result.getPages() > 0)
|
||||
{
|
||||
html.replace("%pages%", "<table width=280 cellspacing=0><tr>" + result.getPagerTemplate() + "</tr></table>");
|
||||
@@ -720,7 +717,6 @@ public class AdminEffects implements IAdminCommandHandler
|
||||
private void adminAtmosphere(String type, String state, int duration, PlayerInstance activeChar)
|
||||
{
|
||||
IClientOutgoingPacket packet = null;
|
||||
|
||||
if (type.equals("sky"))
|
||||
{
|
||||
if (state.equals("night"))
|
||||
|
@@ -48,7 +48,6 @@ public class AdminElement implements IAdminCommandHandler
|
||||
public boolean useAdminCommand(String command, PlayerInstance activeChar)
|
||||
{
|
||||
int armorType = -1;
|
||||
|
||||
if (command.startsWith("admin_setlh"))
|
||||
{
|
||||
armorType = Inventory.PAPERDOLL_HEAD;
|
||||
@@ -83,7 +82,6 @@ public class AdminElement implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final String[] args = command.split(" ");
|
||||
|
||||
final AttributeType type = AttributeType.findByName(args[1]);
|
||||
final int value = Integer.parseInt(args[2]);
|
||||
if ((type == null) || (value < 0) || (value > 450))
|
||||
|
@@ -65,7 +65,6 @@ public class AdminEnchant implements IAdminCommandHandler
|
||||
else
|
||||
{
|
||||
int armorType = -1;
|
||||
|
||||
if (command.startsWith("admin_seteh"))
|
||||
{
|
||||
armorType = Inventory.PAPERDOLL_HEAD;
|
||||
@@ -172,7 +171,6 @@ public class AdminEnchant implements IAdminCommandHandler
|
||||
// get the target
|
||||
|
||||
final PlayerInstance player = activeChar.getTarget() != null ? activeChar.getTarget().getActingPlayer() : activeChar;
|
||||
|
||||
if (player == null)
|
||||
{
|
||||
activeChar.sendPacket(SystemMessageId.INVALID_TARGET);
|
||||
|
@@ -113,7 +113,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(Config.DATAPACK_ROOT + "/data/events/" + eventName)));
|
||||
final BufferedReader inbr = new BufferedReader(new InputStreamReader(in));
|
||||
adminReply.setFile(null, "data/html/mods/EventEngine/Participation.htm");
|
||||
@@ -195,7 +194,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
st = new StringTokenizer(temp, "-");
|
||||
|
||||
Integer i = 1;
|
||||
|
||||
while (st.hasMoreElements())
|
||||
@@ -215,7 +213,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
activeChar.broadcastPacket(snd);
|
||||
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final String replyMSG = "<html><title>[ L2J EVENT ENGINE ]</title><body><br><center>The event <font color=\"LEVEL\">" + GameEvent._eventName + "</font> has been announced, now you can type //event_panel to see the event panel control</center><br></body></html>";
|
||||
adminReply.setHtml(replyMSG);
|
||||
activeChar.sendPacket(adminReply);
|
||||
@@ -236,7 +233,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
while (st.hasMoreElements()) // Every next ST should be a team number
|
||||
{
|
||||
final int teamId = Integer.parseInt(st.nextToken());
|
||||
|
||||
for (PlayerInstance player : GameEvent._teams.get(teamId))
|
||||
{
|
||||
player.setTitle(GameEvent._teamNames.get(teamId));
|
||||
@@ -360,7 +356,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
|
||||
final String[] n = st.nextToken().split("\\*");
|
||||
final int itemId = Integer.parseInt(st.nextToken());
|
||||
|
||||
for (int teamId : teamIds)
|
||||
{
|
||||
rewardTeam(activeChar, teamId, Integer.parseInt(n[0]), itemId, n.length == 2 ? n[1] : "");
|
||||
@@ -428,7 +423,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
private void showMainPage(PlayerInstance activeChar)
|
||||
{
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final String replyMSG = "<html><title>[ L2J EVENT ENGINE ]</title><body><br><center><button value=\"Create NEW event \" action=\"bypass -h admin_event_new\" width=150 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><center><br><font color=LEVEL>Stored Events:</font><br></center>" + showStoredEvents() + "</body></html>";
|
||||
adminReply.setHtml(replyMSG);
|
||||
activeChar.sendPacket(adminReply);
|
||||
@@ -437,10 +431,8 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
private void showNewEventPage(PlayerInstance activeChar)
|
||||
{
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final StringBuilder replyMSG = new StringBuilder(512);
|
||||
replyMSG.append("<html><title>[ L2J EVENT ENGINE ]</title><body><br><br><center><font color=LEVEL>Event name:</font><br>");
|
||||
|
||||
if (tempName.isEmpty())
|
||||
{
|
||||
replyMSG.append("You can also use //event_name text to insert a new title");
|
||||
@@ -452,7 +444,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
replyMSG.append("<br><br><font color=LEVEL>Event description:</font><br></center>");
|
||||
|
||||
if (tempBuffer.isEmpty())
|
||||
{
|
||||
replyMSG.append("You can also use //add text to add text or //delete_buffer to remove the text.");
|
||||
@@ -464,7 +455,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
|
||||
replyMSG.append("<center><multiedit var=\"txt\" width=270 height=100> <button value=\"Add text\" action=\"bypass -h admin_add $txt\" width=120 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">");
|
||||
replyMSG.append("<button value=\"Remove text\" action=\"bypass -h admin_delete_buffer\" width=120 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">");
|
||||
|
||||
if (!(tempName.isEmpty() && tempBuffer.isEmpty()))
|
||||
{
|
||||
replyMSG.append("<br><button value=\"Store Event Data\" action=\"bypass -h admin_event_store\" width=160 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">");
|
||||
@@ -480,7 +470,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
{
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append("<html><body><title>[ L2J EVENT ENGINE ]</title><br><center> Current event: <font color=\"LEVEL\">");
|
||||
sb.append(GameEvent._eventName);
|
||||
sb.append("</font></center><br>INFO: To start an event, you must first set the number of teams, then type their names in the boxes and finally type the NPC ID that will be the event manager (can be any existing npc) next to the \"Announce Event!\" button.<br><table width=100%>");
|
||||
@@ -527,7 +516,6 @@ public class AdminEventEngine implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
sb.append("<tr><td> </td></tr><tr><td><button value=\"Teleport\" action=\"bypass -h admin_event_control_teleport $team_number\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Teleports the specified team to your position</font></td></tr><tr><td> </td></tr><tr><td><button value=\"Sit/Stand\" action=\"bypass -h admin_event_control_sit $team_number\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Sits/Stands up the team</font></td></tr><tr><td> </td></tr><tr><td><button value=\"Kill\" action=\"bypass -h admin_event_control_kill $team_number\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Finish with the life of all the players in the selected team</font></td></tr><tr><td> </td></tr><tr><td><button value=\"Resurrect\" action=\"bypass -h admin_event_control_res $team_number\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Resurrect Team's members</font></td></tr><tr><td> </td></tr><tr><td><table cellspacing=-1><tr><td><button value=\"Transform*\" action=\"bypass -h admin_event_control_transform $team_number $transf_id\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr><tr><td><edit var=\"transf_id\" width=98 height=15></td></tr></table></td><td><font color=\"LEVEL\">Transforms the team into the transformation with the ID specified. Multiple IDs result in randomly chosen one for each player.</font></td></tr><tr><td> </td></tr><tr><td><button value=\"UnTransform\" action=\"bypass -h admin_event_control_untransform $team_number\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Untransforms the team</font></td></tr><tr><td> </td></tr><tr><td><table cellspacing=-1><tr><td><button value=\"Give Item\" action=\"bypass -h admin_event_control_prize $team_number $n $id\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table><table><tr><td width=32>Num</td><td><edit var=\"n\" width=60 height=15></td></tr><tr><td>ID</td><td><edit var=\"id\" width=60 height=15></td></tr></table></td><td><font color=\"LEVEL\">Give the specified item id to every single member of the team, you can put 5*level, 5*kills or 5 in the number field for example</font></td></tr><tr><td> </td></tr><tr><td><table cellspacing=-1><tr><td><button value=\"Kick Player\" action=\"bypass -h admin_event_control_kick $player_name\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr><tr><td><edit var=\"player_name\" width=98 height=15></td></tr></table></td><td><font color=\"LEVEL\">Kicks the specified player(s) from the event. Blank field kicks target.</font></td></tr><tr><td> </td></tr><tr><td><button value=\"End!\" action=\"bypass -h admin_event_control_finish\" width=100 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td><font color=\"LEVEL\">Will finish the event teleporting back all the players</font></td></tr><tr><td> </td></tr></table></td></tr></table></body></html>");
|
||||
|
||||
adminReply.setHtml(sb.toString());
|
||||
activeChar.sendPacket(adminReply);
|
||||
}
|
||||
|
@@ -86,7 +86,6 @@ public class AdminFence implements IAdminCommandHandler
|
||||
{
|
||||
final int objId = Integer.parseInt(st.nextToken());
|
||||
final int fenceTypeOrdinal = Integer.parseInt(st.nextToken());
|
||||
|
||||
if ((fenceTypeOrdinal < 0) || (fenceTypeOrdinal >= FenceState.values().length))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Specified FenceType is out of range. Only 0-" + (FenceState.values().length - 1) + " are permitted.");
|
||||
@@ -208,7 +207,6 @@ public class AdminFence implements IAdminCommandHandler
|
||||
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, 1);
|
||||
html.setFile(activeChar, "data/html/admin/fences.htm");
|
||||
|
||||
if (result.getPages() > 0)
|
||||
{
|
||||
html.replace("%pages%", "<table width=280 cellspacing=0><tr>" + result.getPagerTemplate() + "</tr></table>");
|
||||
|
@@ -118,9 +118,7 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final String replyMSG;
|
||||
|
||||
if ((npc1 != null) && (npc2 != null))
|
||||
{
|
||||
replyMSG = "<html><title>Selected mobs to fight</title><body><table><tr><td>First</td><td>Second</td></tr><tr><td>level " + lvl1 + "</td><td>level " + lvl2 + "</td></tr><tr><td>id " + npc1.getId() + "</td><td>id " + npc2.getId() + "</td></tr><tr><td>" + npc1.getName() + "</td><td>" + npc2.getName() + "</td></tr></table><center><br><br><br><button value=\"OK\" action=\"bypass -h admin_fight_calculator_show " + npc1.getId() + " " + npc2.getId() + "\" width=100 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></center></body></html>";
|
||||
@@ -130,7 +128,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
final List<NpcTemplate> npcs = NpcData.getInstance().getAllOfLevel(lvl1);
|
||||
final StringBuilder sb = new StringBuilder(50 + (npcs.size() * 200));
|
||||
sb.append("<html><title>Select first mob to fight</title><body><table>");
|
||||
|
||||
for (NpcTemplate n : npcs)
|
||||
{
|
||||
sb.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + n.getId() + " mid2 " + mid2 + "\">" + n.getName() + "</a></td></tr>");
|
||||
@@ -144,7 +141,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
final List<NpcTemplate> npcs = NpcData.getInstance().getAllOfLevel(lvl2);
|
||||
final StringBuilder sb = new StringBuilder(50 + (npcs.size() * 200));
|
||||
sb.append("<html><title>Select second mob to fight</title><body><table>");
|
||||
|
||||
for (NpcTemplate n : npcs)
|
||||
{
|
||||
sb.append("<tr><td><a action=\"bypass -h admin_fight_calculator lvl1 " + lvl1 + " lvl2 " + lvl2 + " mid1 " + mid1 + " mid2 " + n.getId() + "\">" + n.getName() + "</a></td></tr>");
|
||||
@@ -165,7 +161,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
private void handleShow(String params, PlayerInstance activeChar)
|
||||
{
|
||||
params = params.trim();
|
||||
|
||||
Creature npc1 = null;
|
||||
Creature npc2 = null;
|
||||
if (params.isEmpty())
|
||||
@@ -185,7 +180,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
final StringTokenizer st = new StringTokenizer(params);
|
||||
mid1 = Integer.parseInt(st.nextToken());
|
||||
mid2 = Integer.parseInt(st.nextToken());
|
||||
|
||||
npc1 = new MonsterInstance(NpcData.getInstance().getTemplate(mid1));
|
||||
npc2 = new MonsterInstance(NpcData.getInstance().getTemplate(mid2));
|
||||
}
|
||||
@@ -209,7 +203,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
// number of ATTACK per 100 seconds
|
||||
sAtk1 = 100000 / sAtk1;
|
||||
sAtk2 = 100000 / sAtk2;
|
||||
|
||||
for (int i = 0; i < 10000; i++)
|
||||
{
|
||||
final boolean calcMiss1 = Formulas.calcHitMiss(npc1, npc2);
|
||||
@@ -234,7 +227,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
|
||||
final double npcPdef1 = npc1.getPDef();
|
||||
pdef1 += npcPdef1;
|
||||
|
||||
if (!calcMiss1)
|
||||
{
|
||||
final double calcDmg1 = Formulas.calcAutoAttackDamage(npc1, npc2, calcShld1, calcCrit1, false);
|
||||
@@ -267,7 +259,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
|
||||
final double npcPdef2 = npc2.getPDef();
|
||||
pdef2 += npcPdef2;
|
||||
|
||||
if (!calcMiss2)
|
||||
{
|
||||
final double calcDmg2 = Formulas.calcAutoAttackDamage(npc2, npc1, calcShld2, calcCrit2, false);
|
||||
@@ -295,15 +286,11 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
// HP restored per 100 seconds
|
||||
final double maxHp1 = npc1.getMaxHp();
|
||||
final int hp1 = (int) ((npc1.getStat().getValue(Stat.REGENERATE_HP_RATE) * 100000) / Formulas.getRegeneratePeriod(npc1));
|
||||
|
||||
final double maxHp2 = npc2.getMaxHp();
|
||||
final int hp2 = (int) ((npc2.getStat().getValue(Stat.REGENERATE_HP_RATE) * 100000) / Formulas.getRegeneratePeriod(npc2));
|
||||
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final StringBuilder replyMSG = new StringBuilder(1000);
|
||||
replyMSG.append("<html><title>Selected mobs to fight</title><body><table>");
|
||||
|
||||
if (params.isEmpty())
|
||||
{
|
||||
replyMSG.append("<tr><td width=140>Parameter</td><td width=70>me</td><td width=70>target</td></tr>");
|
||||
@@ -314,7 +301,6 @@ public class AdminFightCalculator implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
replyMSG.append("<tr><td>miss</td><td>" + miss1 + "%</td><td>" + miss2 + "%</td></tr><tr><td>shld</td><td>" + shld2 + "%</td><td>" + shld1 + "%</td></tr><tr><td>crit</td><td>" + crit1 + "%</td><td>" + crit2 + "%</td></tr><tr><td>pAtk / pDef</td><td>" + (int) patk1 + " / " + (int) pdef1 + "</td><td>" + (int) patk2 + " / " + (int) pdef2 + "</td></tr><tr><td>made hits</td><td>" + sAtk1 + "</td><td>" + sAtk2 + "</td></tr><tr><td>dmg per hit</td><td>" + (int) dmg1 + "</td><td>" + (int) dmg2 + "</td></tr><tr><td>got dmg</td><td>" + tdmg2 + "</td><td>" + tdmg1 + "</td></tr><tr><td>got regen</td><td>" + hp1 + "</td><td>" + hp2 + "</td></tr><tr><td>had HP</td><td>" + (int) maxHp1 + "</td><td>" + (int) maxHp2 + "</td></tr><tr><td>die</td>");
|
||||
|
||||
if ((tdmg2 - hp1) > 1)
|
||||
{
|
||||
replyMSG.append("<td>" + ((int) ((100 * maxHp1) / (tdmg2 - hp1))) + " sec</td>");
|
||||
|
@@ -151,7 +151,6 @@ public class AdminFortSiege implements IAdminCommandHandler
|
||||
|
||||
final Collection<Fort> forts = FortManager.getInstance().getForts();
|
||||
final StringBuilder cList = new StringBuilder(forts.size() * 100);
|
||||
|
||||
for (Fort fort : forts)
|
||||
{
|
||||
if (fort != null)
|
||||
|
@@ -57,7 +57,6 @@ public class AdminGeodata implements IAdminCommandHandler
|
||||
final int worldZ = activeChar.getZ();
|
||||
final int geoX = GeoEngine.getGeoX(worldX);
|
||||
final int geoY = GeoEngine.getGeoY(worldY);
|
||||
|
||||
if (GeoEngine.getInstance().hasGeoPos(geoX, geoY))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "WorldX: " + worldX + ", WorldY: " + worldY + ", WorldZ: " + worldZ + ", GeoX: " + geoX + ", GeoY: " + geoY + ", GeoZ: " + GeoEngine.getInstance().getHeight(worldX, worldY, worldZ));
|
||||
@@ -75,7 +74,6 @@ public class AdminGeodata implements IAdminCommandHandler
|
||||
final int worldZ = activeChar.getZ();
|
||||
final int geoX = GeoEngine.getGeoX(worldX);
|
||||
final int geoY = GeoEngine.getGeoY(worldY);
|
||||
|
||||
if (GeoEngine.getInstance().hasGeoPos(geoX, geoY))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "WorldX: " + worldX + ", WorldY: " + worldY + ", WorldZ: " + worldZ + ", GeoX: " + geoX + ", GeoY: " + geoY + ", GeoZ: " + GeoEngine.getInstance().getHeight(worldX, worldY, worldZ));
|
||||
|
@@ -48,7 +48,6 @@ public class AdminGmSpeed implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
final String cmd = st.nextToken();
|
||||
|
||||
if (cmd.equals("admin_gmspeed"))
|
||||
{
|
||||
if (!st.hasMoreTokens())
|
||||
|
@@ -38,7 +38,6 @@ public class AdminGraciaSeeds implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken(); // Get actual command
|
||||
|
||||
String val = "";
|
||||
if (st.countTokens() >= 1)
|
||||
{
|
||||
|
@@ -82,7 +82,6 @@ public class AdminGrandBoss implements IAdminCommandHandler
|
||||
if (st.hasMoreTokens())
|
||||
{
|
||||
final int grandBossId = Integer.parseInt(st.nextToken());
|
||||
|
||||
if (grandBossId == ANTHARAS)
|
||||
{
|
||||
antharasAi().notifyEvent("SKIP_WAITING", null, activeChar);
|
||||
@@ -307,7 +306,6 @@ public class AdminGrandBoss implements IAdminCommandHandler
|
||||
|
||||
final StatSet info = GrandBossManager.getInstance().getStatSet(grandBossId);
|
||||
final String bossRespawn = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(info.getLong("respawn_time"));
|
||||
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, 1);
|
||||
html.setHtml(HtmCache.getInstance().getHtm(activeChar, htmlPatch));
|
||||
html.replace("%bossStatus%", text);
|
||||
|
@@ -82,7 +82,6 @@ public class AdminHeal implements IAdminCommandHandler
|
||||
if (player != null)
|
||||
{
|
||||
final PlayerInstance plyr = World.getInstance().getPlayer(player);
|
||||
|
||||
if (plyr != null)
|
||||
{
|
||||
obj = plyr;
|
||||
|
@@ -96,7 +96,6 @@ public class AdminInstance implements IAdminCommandHandler
|
||||
{
|
||||
final int templateId = CommonUtil.parseNextInt(st, 0);
|
||||
final InstanceTemplate template = InstanceManager.getInstance().getInstanceTemplate(templateId);
|
||||
|
||||
if (template != null)
|
||||
{
|
||||
final String enterGroup = st.hasMoreTokens() ? st.nextToken() : "Alone";
|
||||
@@ -213,7 +212,6 @@ public class AdminInstance implements IAdminCommandHandler
|
||||
html.replace("%emptyDuration%", TimeUnit.MILLISECONDS.toMinutes(template.getEmptyDestroyTime()) + " minutes");
|
||||
html.replace("%ejectDuration%", template.getEjectTime() + " minutes");
|
||||
html.replace("%removeBuff%", template.isRemoveBuffEnabled());
|
||||
|
||||
sb.append("<table border=0 cellpadding=2 cellspacing=0 bgcolor=\"363636\">");
|
||||
sb.append("<tr>");
|
||||
sb.append("<td fixwidth=\"83\"><font color=\"LEVEL\">Instance ID</font></td>");
|
||||
@@ -291,11 +289,9 @@ public class AdminInstance implements IAdminCommandHandler
|
||||
{
|
||||
final int page = parser.getInt("page", 0);
|
||||
final int templateId = parser.getInt("id", 0);
|
||||
|
||||
if (templateId > 0)
|
||||
{
|
||||
sendTemplateDetails(player, templateId);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@@ -41,13 +41,11 @@ public class AdminInstanceZone implements IAdminCommandHandler
|
||||
{
|
||||
final String target = (activeChar.getTarget() != null) ? activeChar.getTarget().getName() : "no-target";
|
||||
GMAudit.auditGMAction(activeChar.getName(), command, target, "");
|
||||
|
||||
if (command.startsWith("admin_instancezone_clear"))
|
||||
{
|
||||
try
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
|
||||
st.nextToken();
|
||||
final PlayerInstance player = World.getInstance().getPlayer(st.nextToken());
|
||||
final int instanceId = Integer.parseInt(st.nextToken());
|
||||
@@ -112,10 +110,8 @@ public class AdminInstanceZone implements IAdminCommandHandler
|
||||
private void display(PlayerInstance player, PlayerInstance activeChar)
|
||||
{
|
||||
final Map<Integer, Long> instanceTimes = InstanceManager.getInstance().getAllInstanceTimes(player);
|
||||
|
||||
final StringBuilder html = new StringBuilder(500 + (instanceTimes.size() * 200));
|
||||
html.append("<html><center><table width=260><tr><td width=40><button value=\"Main\" action=\"bypass -h admin_admin\" width=40 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td width=180><center>Character Instances</center></td><td width=40><button value=\"Back\" action=\"bypass -h admin_current_player\" width=40 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table><br><font color=\"LEVEL\">Instances for " + player.getName() + "</font><center><br><table><tr><td width=150>Name</td><td width=50>Time</td><td width=70>Action</td></tr>");
|
||||
|
||||
for (Entry<Integer, Long> entry : instanceTimes.entrySet())
|
||||
{
|
||||
int hours = 0;
|
||||
|
@@ -49,7 +49,6 @@ public class AdminKill implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
st.nextToken(); // skip command
|
||||
|
||||
if (st.hasMoreTokens())
|
||||
{
|
||||
final String firstParam = st.nextToken();
|
||||
@@ -87,7 +86,6 @@ public class AdminKill implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final int radius = Integer.parseInt(firstParam);
|
||||
|
||||
World.getInstance().forEachVisibleObjectInRange(activeChar, Creature.class, radius, wo ->
|
||||
{
|
||||
if ((wo instanceof ControllableMobInstance) || (wo instanceof FriendlyNpcInstance))
|
||||
@@ -147,7 +145,6 @@ public class AdminKill implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
target.reduceCurrentHp(target.getMaxHp() + 1, activeChar, null);
|
||||
|
||||
if (targetIsInvul)
|
||||
{
|
||||
target.setInvul(true);
|
||||
|
@@ -41,7 +41,6 @@ public class AdminLevel implements IAdminCommandHandler
|
||||
final WorldObject targetChar = activeChar.getTarget();
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken(); // Get actual command
|
||||
|
||||
String val = "";
|
||||
if (st.countTokens() >= 1)
|
||||
{
|
||||
|
@@ -88,7 +88,6 @@ public class AdminLogin implements IAdminCommandHandler
|
||||
{
|
||||
st.nextToken();
|
||||
final String[] modes = new String[tokens - 1];
|
||||
|
||||
for (int i = 0; i < (tokens - 1); i++)
|
||||
{
|
||||
modes[i] = st.nextToken().trim();
|
||||
@@ -182,7 +181,6 @@ public class AdminLogin implements IAdminCommandHandler
|
||||
for (int i = 0; i < 7; i++)
|
||||
{
|
||||
final int currentType = serverType & (int) Math.pow(2, i);
|
||||
|
||||
if (currentType > 0)
|
||||
{
|
||||
if (!nameType.isEmpty())
|
||||
|
@@ -257,7 +257,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final String[] cmdParams = command.split(" ");
|
||||
|
||||
groupId = Integer.parseInt(cmdParams[1]);
|
||||
templateId = Integer.parseInt(cmdParams[2]);
|
||||
mobCount = Integer.parseInt(cmdParams[3]);
|
||||
@@ -275,7 +274,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final NpcTemplate template = NpcData.getInstance().getTemplate(templateId);
|
||||
|
||||
if (template == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid NPC ID specified.");
|
||||
@@ -284,7 +282,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
|
||||
final MobGroup group = new MobGroup(groupId, template, mobCount);
|
||||
MobGroupTable.getInstance().addGroup(groupId, group);
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "Mob group " + groupId + " created.");
|
||||
}
|
||||
|
||||
@@ -303,7 +300,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -351,7 +347,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -387,7 +382,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -415,7 +409,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -441,7 +434,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -468,7 +460,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -512,7 +503,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -520,7 +510,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup othGroup = MobGroupTable.getInstance().getGroup(othGroupId);
|
||||
|
||||
if (othGroup == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Incorrect target group.");
|
||||
@@ -547,7 +536,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -578,7 +566,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
{
|
||||
groupId = Integer.parseInt(command.split(" ")[1]);
|
||||
targetPlayerStr = command.split(" ")[2];
|
||||
|
||||
if (targetPlayerStr != null)
|
||||
{
|
||||
targetPlayer = World.getInstance().getPlayer(targetPlayerStr);
|
||||
@@ -596,7 +583,6 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final MobGroup group = MobGroupTable.getInstance().getGroup(groupId);
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Invalid group specified.");
|
||||
@@ -609,9 +595,7 @@ public class AdminMobGroup implements IAdminCommandHandler
|
||||
private void showGroupList(PlayerInstance activeChar)
|
||||
{
|
||||
final MobGroup[] mobGroupList = MobGroupTable.getInstance().getGroups();
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "======= <Mob Groups> =======");
|
||||
|
||||
for (MobGroup mobGroup : mobGroupList)
|
||||
{
|
||||
activeChar.sendMessage(mobGroup.getGroupId() + ": " + mobGroup.getActiveMobCount() + " alive out of " + mobGroup.getMaxMobCount() + " of NPC ID " + mobGroup.getTemplate().getId() + " (" + mobGroup.getStatus() + ")");
|
||||
|
@@ -165,7 +165,6 @@ public class AdminOlympiad implements IAdminCommandHandler
|
||||
final int oldpoints = Olympiad.getInstance().getNoblePoints(player);
|
||||
final int points = Math.max(oldpoints - val, 0);
|
||||
playerStat.set(Olympiad.POINTS, points);
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "Player " + player.getName() + " now has " + points + " Olympiad points.");
|
||||
}
|
||||
else
|
||||
|
@@ -50,7 +50,6 @@ public class AdminOnline implements IAdminCommandHandler
|
||||
int notPeace = 0;
|
||||
int instanced = 0;
|
||||
int combat = 0;
|
||||
|
||||
for (PlayerInstance player : World.getInstance().getPlayers())
|
||||
{
|
||||
final String ip = player.getIPAddress();
|
||||
|
@@ -169,7 +169,6 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -184,7 +183,6 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -233,9 +231,7 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
valuesHtml = valuesHtml.replace("%opcodes%", sendBypass);
|
||||
|
||||
String editorsHtml = "";
|
||||
|
||||
if (format == null)
|
||||
{
|
||||
valuesHtml = valuesHtml.replace("%format%", "");
|
||||
@@ -247,12 +243,10 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
sendBypass += " " + format;
|
||||
|
||||
final String editorTemplate = HtmCache.getInstance().getHtm(activeChar, "data/html/admin/pforge/inc/editor.htm");
|
||||
|
||||
if (editorTemplate != null)
|
||||
{
|
||||
final StringBuilder singleCharSequence = new StringBuilder(1);
|
||||
singleCharSequence.append(' ');
|
||||
|
||||
for (int chIdx = 0; chIdx < format.length(); ++chIdx)
|
||||
{
|
||||
final char ch = format.charAt(chIdx);
|
||||
@@ -285,7 +279,6 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
st.nextToken(); // skip command token
|
||||
|
||||
if (!st.hasMoreTokens())
|
||||
{
|
||||
showValuesUsage(activeChar);
|
||||
@@ -326,7 +319,6 @@ public class AdminPForge implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
st.nextToken(); // skip command token
|
||||
|
||||
if (!st.hasMoreTokens())
|
||||
{
|
||||
showSendUsage(activeChar, null, null);
|
||||
|
@@ -61,7 +61,6 @@ public class AdminPathNode implements IAdminCommandHandler
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -44,13 +44,11 @@ public class AdminPcCafePoints implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken();
|
||||
|
||||
if (actualCommand.equals("admin_pccafepoints"))
|
||||
{
|
||||
if (st.hasMoreTokens())
|
||||
{
|
||||
final String action = st.nextToken();
|
||||
|
||||
final PlayerInstance target = getTarget(activeChar);
|
||||
if ((target == null) || !st.hasMoreTokens())
|
||||
{
|
||||
|
@@ -109,9 +109,7 @@ public class AdminPetition implements IAdminCommandHandler
|
||||
return false;
|
||||
}
|
||||
final PlayerInstance targetPlayer = (PlayerInstance) targetChar;
|
||||
|
||||
final String val = command.substring(15);
|
||||
|
||||
petitionId = PetitionManager.getInstance().submitPetition(targetPlayer, val, 9);
|
||||
PetitionManager.getInstance().acceptPetition(activeChar, petitionId);
|
||||
}
|
||||
|
@@ -43,13 +43,11 @@ public class AdminPrimePoints implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String actualCommand = st.nextToken();
|
||||
|
||||
if (actualCommand.equals("admin_primepoints"))
|
||||
{
|
||||
if (st.hasMoreTokens())
|
||||
{
|
||||
final String action = st.nextToken();
|
||||
|
||||
final PlayerInstance target = getTarget(activeChar);
|
||||
if ((target == null) || !st.hasMoreTokens())
|
||||
{
|
||||
|
@@ -100,7 +100,6 @@ public class AdminPunishment implements IAdminCommandHandler
|
||||
String key = st.hasMoreTokens() ? st.nextToken() : null;
|
||||
final String af = st.hasMoreTokens() ? st.nextToken() : null;
|
||||
final String name = key;
|
||||
|
||||
if ((key == null) || (af == null))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Not enough data specified!");
|
||||
@@ -129,7 +128,6 @@ public class AdminPunishment implements IAdminCommandHandler
|
||||
{
|
||||
final long expiration = PunishmentManager.getInstance().getPunishmentExpiration(key, affect, type);
|
||||
String expire = "never";
|
||||
|
||||
if (expiration > 0)
|
||||
{
|
||||
// Synchronize date formatter since its not thread safe.
|
||||
@@ -221,7 +219,6 @@ public class AdminPunishment implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final String name = key;
|
||||
|
||||
if ((key == null) || (af == null) || (t == null) || (exp == null) || (reason == null))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Please fill all the fields!");
|
||||
@@ -294,7 +291,6 @@ public class AdminPunishment implements IAdminCommandHandler
|
||||
final String af = st.hasMoreTokens() ? st.nextToken() : null;
|
||||
final String t = st.hasMoreTokens() ? st.nextToken() : null;
|
||||
final String name = key;
|
||||
|
||||
if ((key == null) || (af == null) || (t == null))
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Not enough data specified!");
|
||||
|
@@ -70,7 +70,6 @@ public class AdminQuest implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
st.nextToken(); // skip command token
|
||||
|
||||
if (!st.hasMoreTokens())
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Usage: //quest_reload <questName> or <questId>");
|
||||
@@ -97,7 +96,6 @@ public class AdminQuest implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
st.nextToken(); // skip command token
|
||||
|
||||
if (!st.hasMoreTokens())
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Usage: //script_load path/to/script.java");
|
||||
@@ -120,7 +118,6 @@ public class AdminQuest implements IAdminCommandHandler
|
||||
{
|
||||
final StringTokenizer st = new StringTokenizer(command);
|
||||
st.nextToken(); // skip command token
|
||||
|
||||
if (!st.hasMoreTokens())
|
||||
{
|
||||
BuilderUtil.sendSysMessage(activeChar, "Usage: //script_load path/to/script.java");
|
||||
|
@@ -57,7 +57,6 @@ public class AdminRes implements IAdminCommandHandler
|
||||
{
|
||||
handleNonPlayerRes(activeChar);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -75,12 +74,10 @@ public class AdminRes implements IAdminCommandHandler
|
||||
private void handleRes(PlayerInstance activeChar, String resParam)
|
||||
{
|
||||
WorldObject obj = activeChar.getTarget();
|
||||
|
||||
if (resParam != null)
|
||||
{
|
||||
// Check if a player name was specified as a param.
|
||||
final PlayerInstance plyr = World.getInstance().getPlayer(resParam);
|
||||
|
||||
if (plyr != null)
|
||||
{
|
||||
obj = plyr;
|
||||
@@ -91,9 +88,7 @@ public class AdminRes implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final int radius = Integer.parseInt(resParam);
|
||||
|
||||
World.getInstance().forEachVisibleObjectInRange(activeChar, PlayerInstance.class, radius, this::doResurrect);
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "Resurrected all players within a " + radius + " unit radius.");
|
||||
return;
|
||||
}
|
||||
@@ -131,11 +126,9 @@ public class AdminRes implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
int radius = 0;
|
||||
|
||||
if (!radiusStr.isEmpty())
|
||||
{
|
||||
radius = Integer.parseInt(radiusStr);
|
||||
|
||||
World.getInstance().forEachVisibleObjectInRange(activeChar, Creature.class, radius, knownChar ->
|
||||
{
|
||||
if (!knownChar.isPlayer() && !(knownChar instanceof ControllableMobInstance))
|
||||
|
@@ -106,7 +106,6 @@ public class AdminRide implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
player.mount(petRideId, 0, false);
|
||||
|
||||
return false;
|
||||
}
|
||||
else if (command.startsWith("admin_unride"))
|
||||
@@ -131,7 +130,6 @@ public class AdminRide implements IAdminCommandHandler
|
||||
private PlayerInstance getRideTarget(PlayerInstance activeChar)
|
||||
{
|
||||
PlayerInstance player = null;
|
||||
|
||||
if ((activeChar.getTarget() == null) || (activeChar.getTarget().getObjectId() == activeChar.getObjectId()) || !activeChar.getTarget().isPlayer())
|
||||
{
|
||||
player = activeChar;
|
||||
@@ -140,7 +138,6 @@ public class AdminRide implements IAdminCommandHandler
|
||||
{
|
||||
player = (PlayerInstance) activeChar.getTarget();
|
||||
}
|
||||
|
||||
return player;
|
||||
}
|
||||
|
||||
|
@@ -127,7 +127,6 @@ public class AdminScan implements IAdminCommandHandler
|
||||
final String name = parser.getString("name", null);
|
||||
final int radius = parser.getInt("radius", parser.getInt("range", DEFAULT_RADIUS));
|
||||
final int page = parser.getInt("page", 0);
|
||||
|
||||
final Predicate<Npc> condition;
|
||||
if (id > 0)
|
||||
{
|
||||
@@ -151,7 +150,6 @@ public class AdminScan implements IAdminCommandHandler
|
||||
final String name = parser.getString("name", null);
|
||||
final int radius = parser.getInt("radius", parser.getInt("range", DEFAULT_RADIUS));
|
||||
final BypassBuilder builder = new BypassBuilder(bypass);
|
||||
|
||||
if (id > 0)
|
||||
{
|
||||
builder.addParam("id", id);
|
||||
@@ -186,7 +184,6 @@ public class AdminScan implements IAdminCommandHandler
|
||||
final String npcName = character.getName();
|
||||
builder.addParam("page", page);
|
||||
builder.addParam("objectId", character.getObjectId());
|
||||
|
||||
sb.append("<tr>");
|
||||
sb.append("<td width=\"45\">").append(character.getId()).append("</td>");
|
||||
sb.append("<td><a action=\"bypass -h admin_move_to ").append(character.getX()).append(SPACE).append(character.getY()).append(SPACE).append(character.getZ()).append("\">").append(npcName.isEmpty() ? "No name NPC" : npcName).append("</a></td>");
|
||||
|
@@ -54,7 +54,6 @@ public class AdminServerInfo implements IAdminCommandHandler
|
||||
final Runtime runTime = Runtime.getRuntime();
|
||||
final int mb = 1024 * 1024;
|
||||
html.setHtml(HtmCache.getInstance().getHtm(activeChar, "data/html/admin/serverinfo.htm"));
|
||||
|
||||
html.replace("%os_name%", System.getProperty("os.name"));
|
||||
html.replace("%os_ver%", System.getProperty("os.version"));
|
||||
html.replace("%slots%", getPlayersCount("ALL") + "/" + Config.MAXIMUM_ONLINE_USERS);
|
||||
@@ -123,7 +122,6 @@ public class AdminServerInfo implements IAdminCommandHandler
|
||||
case "ALL_REAL":
|
||||
{
|
||||
final Set<String> realPlayers = new HashSet<>();
|
||||
|
||||
for (PlayerInstance onlinePlayer : World.getInstance().getPlayers())
|
||||
{
|
||||
if ((onlinePlayer != null) && (onlinePlayer.getClient() != null) && !onlinePlayer.getClient().isDetached())
|
||||
|
@@ -64,7 +64,6 @@ public class AdminShowQuests implements IAdminCommandHandler
|
||||
WorldObject targetObject = null;
|
||||
final String[] val = new String[4];
|
||||
val[0] = null;
|
||||
|
||||
if (cmdParams.length > 1)
|
||||
{
|
||||
target = World.getInstance().getPlayer(cmdParams[1]);
|
||||
@@ -104,7 +103,6 @@ public class AdminShowQuests implements IAdminCommandHandler
|
||||
else
|
||||
{
|
||||
targetObject = activeChar.getTarget();
|
||||
|
||||
if ((targetObject != null) && targetObject.isPlayer())
|
||||
{
|
||||
target = targetObject.getActingPlayer();
|
||||
@@ -154,7 +152,6 @@ public class AdminShowQuests implements IAdminCommandHandler
|
||||
final StringBuilder replyMSG = new StringBuilder("<html><body><table width=270><tr><td width=45><button value=\"Main\" action=\"bypass -h admin_admin\" width=45 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td width=180><center>Player: " + target.getName() + "</center></td><td width=45><button value=\"Back\" action=\"bypass -h admin_admin6\" width=45 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table>");
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
final int ID = target.getObjectId();
|
||||
|
||||
replyMSG.append("Quest Menu for <font color=\"LEVEL\">" + target.getName() + "</font> (ID:" + ID + ")<br><center>");
|
||||
replyMSG.append("<table width=250><tr><td><button value=\"CREATED\" action=\"bypass -h admin_charquestmenu " + target.getName() + " 0\" width=85 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr>");
|
||||
replyMSG.append("<tr><td><button value=\"STARTED\" action=\"bypass -h admin_charquestmenu " + target.getName() + " 1\" width=85 height=21 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr>");
|
||||
@@ -174,7 +171,6 @@ public class AdminShowQuests implements IAdminCommandHandler
|
||||
ResultSet rs;
|
||||
PreparedStatement req;
|
||||
final int ID = target.getObjectId();
|
||||
|
||||
final StringBuilder replyMSG = new StringBuilder("<html><body>");
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
|
@@ -87,7 +87,6 @@ public class AdminShutdown implements IAdminCommandHandler
|
||||
{
|
||||
serverAbort(activeChar);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -310,7 +310,6 @@ public class AdminSkill implements IAdminCommandHandler
|
||||
|
||||
final PlayerInstance player = target.getActingPlayer();
|
||||
final Clan clan = player.getClan();
|
||||
|
||||
if (clan == null)
|
||||
{
|
||||
activeChar.sendPacket(SystemMessageId.THE_TARGET_MUST_BE_A_CLAN_MEMBER);
|
||||
@@ -357,7 +356,6 @@ public class AdminSkill implements IAdminCommandHandler
|
||||
|
||||
final PlayerInstance player = target.getActingPlayer();
|
||||
final Skill[] skills = player.getAllSkills().toArray(new Skill[player.getAllSkills().size()]);
|
||||
|
||||
final int maxSkillsPerPage = 10;
|
||||
int maxPages = skills.length / maxSkillsPerPage;
|
||||
if (skills.length > (maxSkillsPerPage * maxPages))
|
||||
@@ -380,7 +378,6 @@ public class AdminSkill implements IAdminCommandHandler
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
final StringBuilder replyMSG = new StringBuilder(500 + (maxPages * 50) + (((skillsEnd - skillsStart) + 1) * 50));
|
||||
replyMSG.append("<html><body><table width=260><tr><td width=40><button value=\"Main\" action=\"bypass -h admin_admin\" width=40 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td><td width=180><center>Character Selection Menu</center></td><td width=40><button value=\"Back\" action=\"bypass -h admin_show_skills\" width=40 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table><br><br><center>Editing <font color=\"LEVEL\">" + player.getName() + "</font></center><br><table width=270><tr><td>Lv: " + player.getLevel() + " " + ClassListData.getInstance().getClass(player.getClassId()).getClientCode() + "</td></tr></table><br><table width=270><tr><td>Note: Dont forget that modifying players skills can</td></tr><tr><td>ruin the game...</td></tr></table><br><center>Click on the skill you wish to remove:</center><br><center><table width=270><tr>");
|
||||
|
||||
for (int x = 0; x < maxPages; x++)
|
||||
{
|
||||
final int pagenr = x + 1;
|
||||
@@ -388,7 +385,6 @@ public class AdminSkill implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
replyMSG.append("</tr></table></center><br><table width=270><tr><td width=80>Name:</td><td width=60>Level:</td><td width=40>Id:</td></tr>");
|
||||
|
||||
for (int i = skillsStart; i < skillsEnd; i++)
|
||||
{
|
||||
replyMSG.append("<tr><td width=80><a action=\"bypass -h admin_remove_skill " + skills[i].getId() + "\">" + skills[i].getName() + "</a></td><td width=60>" + skills[i].getLevel() + "</td><td width=40>" + skills[i].getId() + "</td></tr>");
|
||||
@@ -625,7 +621,6 @@ public class AdminSkill implements IAdminCommandHandler
|
||||
clan.broadcastToOnlineMembers(sm);
|
||||
clan.addNewSkill(skill);
|
||||
BuilderUtil.sendSysMessage(activeChar, "You gave the Clan Skill: " + skillname + " to the clan " + clan.getName() + ".");
|
||||
|
||||
clan.broadcastToOnlineMembers(new PledgeSkillList(clan));
|
||||
for (PlayerInstance member : clan.getOnlineMembers(0))
|
||||
{
|
||||
|
@@ -321,7 +321,6 @@ public class AdminSpawn implements IAdminCommandHandler
|
||||
final String id = st.nextToken();
|
||||
int respawnTime = 60;
|
||||
int mobCount = 1;
|
||||
|
||||
if (st.hasMoreTokens())
|
||||
{
|
||||
mobCount = Integer.parseInt(st.nextToken());
|
||||
@@ -569,7 +568,6 @@ public class AdminSpawn implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final NpcTemplate template1 = NpcData.getInstance().getTemplate(id);
|
||||
|
||||
if (!Config.FAKE_PLAYERS_ENABLED && template1.isFakePlayer())
|
||||
{
|
||||
activeChar.sendPacket(SystemMessageId.YOUR_TARGET_CANNOT_BE_FOUND);
|
||||
|
@@ -65,7 +65,6 @@ public class AdminSummon implements IAdminCommandHandler
|
||||
else
|
||||
{
|
||||
subCommand = "admin_spawn_once";
|
||||
|
||||
BuilderUtil.sendSysMessage(activeChar, "This is only a temporary spawn. The mob(s) will NOT respawn.");
|
||||
id -= 1000000;
|
||||
}
|
||||
|
@@ -160,7 +160,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
try
|
||||
{
|
||||
final String val = command.substring(25);
|
||||
|
||||
teleportCharacter(activeChar, val);
|
||||
}
|
||||
catch (StringIndexOutOfBoundsException e)
|
||||
@@ -191,7 +190,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
final int x = (int) Float.parseFloat(st.nextToken());
|
||||
final int y = (int) Float.parseFloat(st.nextToken());
|
||||
final int z = st.hasMoreTokens() ? ((int) Float.parseFloat(st.nextToken())) : GeoEngine.getInstance().getHeight(x, y, 10000);
|
||||
|
||||
activeChar.teleToLocation(x, y, z);
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -368,7 +366,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
final int x = Integer.parseInt(st.nextToken());
|
||||
final int y = Integer.parseInt(st.nextToken());
|
||||
final int z = Integer.parseInt(st.nextToken());
|
||||
|
||||
activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
|
||||
activeChar.teleToLocation(x, y, z, null);
|
||||
BuilderUtil.sendSysMessage(activeChar, "You have been teleported to " + coords);
|
||||
@@ -398,7 +395,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
return;
|
||||
}
|
||||
final NpcHtmlMessage adminReply = new NpcHtmlMessage(0, 1);
|
||||
|
||||
final String replyMSG = "<html><title>Teleport Character</title><body>The character you will teleport is " + player.getName() + ".<br>Co-ordinate x<edit var=\"char_cord_x\" width=110>Co-ordinate y<edit var=\"char_cord_y\" width=110>Co-ordinate z<edit var=\"char_cord_z\" width=110><button value=\"Teleport\" action=\"bypass -h admin_teleport_character $char_cord_x $char_cord_y $char_cord_z\" width=60 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><button value=\"Teleport near you\" action=\"bypass -h admin_teleport_character " + activeChar.getX() + " " + activeChar.getY() + " " + activeChar.getZ() + "\" width=115 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><center><button value=\"Back\" action=\"bypass -h admin_current_player\" width=40 height=15 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></center></body></html>";
|
||||
adminReply.setHtml(replyMSG);
|
||||
activeChar.sendPacket(adminReply);
|
||||
@@ -522,7 +518,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
if ((obj instanceof Npc) && !((Npc) obj).isMinion() && !(obj instanceof RaidBossInstance) && !(obj instanceof GrandBossInstance))
|
||||
{
|
||||
final Npc target = (Npc) obj;
|
||||
|
||||
final int monsterTemplate = target.getTemplate().getId();
|
||||
final NpcTemplate template1 = NpcData.getInstance().getTemplate(monsterTemplate);
|
||||
if (template1 == null)
|
||||
@@ -540,7 +535,6 @@ public class AdminTeleport implements IAdminCommandHandler
|
||||
return;
|
||||
}
|
||||
final int respawnTime = spawn.getRespawnDelay() / 1000;
|
||||
|
||||
target.deleteMe();
|
||||
spawn.stopRespawn();
|
||||
SpawnTable.getInstance().deleteSpawn(spawn, true);
|
||||
|
@@ -55,11 +55,9 @@ public class AdminVitality implements IAdminCommandHandler
|
||||
|
||||
final StringTokenizer st = new StringTokenizer(command, " ");
|
||||
final String cmd = st.nextToken();
|
||||
|
||||
if ((activeChar.getTarget() != null) && activeChar.getTarget().isPlayer())
|
||||
{
|
||||
final PlayerInstance target = (PlayerInstance) activeChar.getTarget();
|
||||
|
||||
if (cmd.equals("admin_set_vitality"))
|
||||
{
|
||||
try
|
||||
|
@@ -56,7 +56,6 @@ public class AdminZone implements IAdminCommandHandler
|
||||
|
||||
// String val = "";
|
||||
// if (st.countTokens() >= 1) {val = st.nextToken();}
|
||||
|
||||
if (actualCommand.equalsIgnoreCase("admin_zone_check"))
|
||||
{
|
||||
showHtml(activeChar);
|
||||
@@ -68,16 +67,12 @@ public class AdminZone implements IAdminCommandHandler
|
||||
if (!activeChar.isInInstance())
|
||||
{
|
||||
Location loc;
|
||||
|
||||
loc = MapRegionManager.getInstance().getTeleToLocation(activeChar, TeleportWhereType.CASTLE);
|
||||
BuilderUtil.sendSysMessage(activeChar, "TeleToLocation (Castle): x:" + loc.getX() + " y:" + loc.getY() + " z:" + loc.getZ());
|
||||
|
||||
loc = MapRegionManager.getInstance().getTeleToLocation(activeChar, TeleportWhereType.CLANHALL);
|
||||
BuilderUtil.sendSysMessage(activeChar, "TeleToLocation (ClanHall): x:" + loc.getX() + " y:" + loc.getY() + " z:" + loc.getZ());
|
||||
|
||||
loc = MapRegionManager.getInstance().getTeleToLocation(activeChar, TeleportWhereType.SIEGEFLAG);
|
||||
BuilderUtil.sendSysMessage(activeChar, "TeleToLocation (SiegeFlag): x:" + loc.getX() + " y:" + loc.getY() + " z:" + loc.getZ());
|
||||
|
||||
loc = MapRegionManager.getInstance().getTeleToLocation(activeChar, TeleportWhereType.TOWN);
|
||||
BuilderUtil.sendSysMessage(activeChar, "TeleToLocation (Town): x:" + loc.getX() + " y:" + loc.getY() + " z:" + loc.getZ());
|
||||
}
|
||||
|
@@ -84,7 +84,6 @@ public class ItemAuctionLink implements IBypassHandler
|
||||
|
||||
final ItemAuction currentAuction = au.getCurrentAuction();
|
||||
final ItemAuction nextAuction = au.getNextAuction();
|
||||
|
||||
if (currentAuction == null)
|
||||
{
|
||||
player.sendPacket(SystemMessageId.IT_IS_NOT_AN_AUCTION_PERIOD);
|
||||
|
@@ -65,7 +65,6 @@ public class Loto implements IBypassHandler
|
||||
}
|
||||
}
|
||||
showLotoWindow(player, (Npc) target, val);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -94,7 +93,6 @@ public class Loto implements IBypassHandler
|
||||
String filename;
|
||||
SystemMessage sm;
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(npc.getObjectId());
|
||||
|
||||
if (value == 0) // 0 - first buy lottery ticket window
|
||||
{
|
||||
filename = (npc.getHtmlPath(npcId, 1, player));
|
||||
@@ -117,7 +115,6 @@ public class Loto implements IBypassHandler
|
||||
|
||||
filename = (npc.getHtmlPath(npcId, 5, player));
|
||||
html.setFile(player, filename);
|
||||
|
||||
int count = 0;
|
||||
int found = 0;
|
||||
// counting buttons and unsetting button if found
|
||||
@@ -192,7 +189,6 @@ public class Loto implements IBypassHandler
|
||||
final int lotonumber = Lottery.getInstance().getId();
|
||||
int enchant = 0;
|
||||
int type2 = 0;
|
||||
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
if (player.getLoto(i) == 0)
|
||||
@@ -231,7 +227,6 @@ public class Loto implements IBypassHandler
|
||||
item.setEnchantLevel(enchant);
|
||||
item.setCustomType2(type2);
|
||||
player.getInventory().addItem("Loto", item, player, npc);
|
||||
|
||||
filename = (npc.getHtmlPath(npcId, 6, player));
|
||||
html.setFile(player, filename);
|
||||
}
|
||||
@@ -312,7 +307,6 @@ public class Loto implements IBypassHandler
|
||||
return;
|
||||
}
|
||||
final long[] check = Lottery.getInstance().checkTicket(item);
|
||||
|
||||
sm = new SystemMessage(SystemMessageId.S1_HAS_DISAPPEARED);
|
||||
sm.addItemName(4442);
|
||||
player.sendPacket(sm);
|
||||
|
@@ -238,22 +238,16 @@ public class NpcViewMod implements IBypassHandler
|
||||
|
||||
html.replace("%atktype%", CommonUtil.capitalizeFirst(npc.getAttackType().name().toLowerCase()));
|
||||
html.replace("%atkrange%", npc.getStat().getPhysicalAttackRange());
|
||||
|
||||
html.replace("%patk%", npc.getPAtk());
|
||||
html.replace("%pdef%", npc.getPDef());
|
||||
|
||||
html.replace("%matk%", npc.getMAtk());
|
||||
html.replace("%mdef%", npc.getMDef());
|
||||
|
||||
html.replace("%atkspd%", npc.getPAtkSpd());
|
||||
html.replace("%castspd%", npc.getMAtkSpd());
|
||||
|
||||
html.replace("%critrate%", npc.getStat().getCriticalHit());
|
||||
html.replace("%evasion%", npc.getEvasionRate());
|
||||
|
||||
html.replace("%accuracy%", npc.getStat().getAccuracy());
|
||||
html.replace("%speed%", (int) npc.getStat().getMoveSpeed());
|
||||
|
||||
html.replace("%attributeatktype%", npc.getStat().getAttackElement().name());
|
||||
html.replace("%attributeatkvalue%", npc.getStat().getAttackElementValue(npc.getStat().getAttackElement()));
|
||||
html.replace("%attributefire%", npc.getStat().getDefenseElementValue(AttributeType.FIRE));
|
||||
@@ -262,9 +256,7 @@ public class NpcViewMod implements IBypassHandler
|
||||
html.replace("%attributeearth%", npc.getStat().getDefenseElementValue(AttributeType.EARTH));
|
||||
html.replace("%attributedark%", npc.getStat().getDefenseElementValue(AttributeType.DARK));
|
||||
html.replace("%attributeholy%", npc.getStat().getDefenseElementValue(AttributeType.HOLY));
|
||||
|
||||
html.replace("%dropListButtons%", getDropListButtons(npc));
|
||||
|
||||
player.sendPacket(html);
|
||||
}
|
||||
|
||||
@@ -274,7 +266,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
html.setFile(player, "data/html/mods/NpcView/Skills.htm");
|
||||
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
|
||||
npc.getSkills().values().forEach(s ->
|
||||
{
|
||||
sb.append("<table width=277 height=32 cellspacing=0 background=\"L2UI_CT1.Windows.Windows_DF_TooltipBG\">");
|
||||
@@ -296,7 +287,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
html.replace("%skills%", sb.toString());
|
||||
html.replace("%npc_name%", npc.getName());
|
||||
html.replace("%npcId%", npc.getId());
|
||||
|
||||
player.sendPacket(html);
|
||||
}
|
||||
|
||||
@@ -306,7 +296,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
html.setFile(player, "data/html/mods/NpcView/AggroList.htm");
|
||||
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
|
||||
if (npc.isAttackable())
|
||||
{
|
||||
((Attackable) npc).getAggroList().values().forEach(a ->
|
||||
@@ -328,7 +317,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
html.replace("%npc_name%", npc.getName());
|
||||
html.replace("%npcId%", npc.getId());
|
||||
html.replace("%objid%", npc.getObjectId());
|
||||
|
||||
player.sendPacket(html);
|
||||
}
|
||||
|
||||
@@ -386,7 +374,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
}
|
||||
|
||||
final int start = page > 0 ? page * DROP_LIST_ITEMS_PER_PAGE : 0;
|
||||
|
||||
int end = (page * DROP_LIST_ITEMS_PER_PAGE) + DROP_LIST_ITEMS_PER_PAGE;
|
||||
if (end > dropList.size())
|
||||
{
|
||||
@@ -395,7 +382,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
|
||||
final DecimalFormat amountFormat = new DecimalFormat("#,###");
|
||||
final DecimalFormat chanceFormat = new DecimalFormat("0.00##");
|
||||
|
||||
int leftHeight = 0;
|
||||
int rightHeight = 0;
|
||||
final double dropAmountEffectBonus = player.getStat().getValue(Stat.BONUS_DROP_AMOUNT, 1);
|
||||
@@ -407,7 +393,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
for (int i = start; i < end; i++)
|
||||
{
|
||||
final StringBuilder sb = new StringBuilder();
|
||||
|
||||
final int height = 64;
|
||||
final DropHolder dropItem = dropList.get(i);
|
||||
final Item item = ItemTable.getInstance().getTemplate(dropItem.getItemId());
|
||||
@@ -536,7 +521,6 @@ public class NpcViewMod implements IBypassHandler
|
||||
sb.append("<td width=247 align=center>");
|
||||
sb.append(chanceFormat.format(Math.min(dropItem.getChance() * rateChance, 100)));
|
||||
sb.append("%</td></tr></table></td></tr><tr><td width=32></td><td width=300> </td></tr></table>");
|
||||
|
||||
if ((sb.length() + rightSb.length() + leftSb.length()) < 16000) // limit of 32766?
|
||||
{
|
||||
if (leftHeight >= (rightHeight + height))
|
||||
|
@@ -122,7 +122,6 @@ public class Observation implements IBypassHandler
|
||||
return false;
|
||||
}
|
||||
final int[] locCost = LOCATIONS[param];
|
||||
|
||||
final Location loc = new Location(locCost[0], locCost[1], locCost[2]);
|
||||
final long cost = locCost[3];
|
||||
|
||||
|
@@ -49,7 +49,6 @@ public class PlayerHelp implements IBypassHandler
|
||||
|
||||
final StringTokenizer st = new StringTokenizer(path);
|
||||
final String[] cmd = st.nextToken().split("#");
|
||||
|
||||
final NpcHtmlMessage html;
|
||||
if (cmd.length > 1)
|
||||
{
|
||||
|
@@ -249,7 +249,6 @@ public class QuestLink implements IBypassHandler
|
||||
|
||||
// Get the state of the selected quest
|
||||
final QuestState qs = player.getQuestState(questId);
|
||||
|
||||
if (q != null)
|
||||
{
|
||||
if (((q.getId() >= 1) && (q.getId() < 20000)) && ((player.getWeightPenalty() >= 3) || !player.isInventoryUnder90(true)))
|
||||
|
@@ -51,7 +51,6 @@ public class ChatGeneral implements IChatHandler
|
||||
final StringTokenizer st = new StringTokenizer(text);
|
||||
final IVoicedCommandHandler vch;
|
||||
String command = "";
|
||||
|
||||
if (st.countTokens() > 1)
|
||||
{
|
||||
command = st.nextToken().substring(1);
|
||||
|
@@ -84,7 +84,6 @@ public class ChatWhisper implements IChatHandler
|
||||
}
|
||||
|
||||
final PlayerInstance receiver = World.getInstance().getPlayer(target);
|
||||
|
||||
if ((receiver != null) && !receiver.isSilenceMode(activeChar.getObjectId()))
|
||||
{
|
||||
if (Config.JAIL_DISABLE_CHAT && receiver.isJailed() && !activeChar.canOverrideCond(PlayerCondOverride.CHAT_CONDITIONS))
|
||||
|
@@ -52,7 +52,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
if (command.equals("_bbsclan"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan", command);
|
||||
|
||||
if ((player.getClan() == null) || (player.getClan().getLevel() < 2))
|
||||
{
|
||||
clanList(player, 1);
|
||||
@@ -65,7 +64,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
else if (command.startsWith("_bbsclan_clanlist"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan List", command);
|
||||
|
||||
if (command.equals("_bbsclan_clanlist"))
|
||||
{
|
||||
clanList(player, 1);
|
||||
@@ -86,7 +84,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
else if (command.startsWith("_bbsclan_clanhome"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan Home", command);
|
||||
|
||||
if (command.equals("_bbsclan_clanhome"))
|
||||
{
|
||||
clanHome(player);
|
||||
@@ -107,13 +104,11 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
else if (command.startsWith("_bbsclan_clannotice_edit;"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan Edit", command);
|
||||
|
||||
clanNotice(player, player.getClanId());
|
||||
}
|
||||
else if (command.startsWith("_bbsclan_clannotice_enable"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan Notice Enable", command);
|
||||
|
||||
if (player.getClan() != null)
|
||||
{
|
||||
player.getClan().setNoticeEnabled(true);
|
||||
@@ -123,7 +118,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
else if (command.startsWith("_bbsclan_clannotice_disable"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Clan Notice Disable", command);
|
||||
|
||||
if (player.getClan() != null)
|
||||
{
|
||||
player.getClan().setNoticeEnabled(false);
|
||||
@@ -156,7 +150,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
if (player.isClanLeader())
|
||||
{
|
||||
html.append("<br><br><center><table width=610 border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=610><font color=\"AAAAAA\">The Clan Notice function allows the clan leader to send messages through a pop-up window to clan members at login.</font> </td></tr><tr><td height=20></td></tr>");
|
||||
|
||||
if (player.getClan().isNoticeEnabled())
|
||||
{
|
||||
html.append("<tr><td fixwidth=610> Clan Notice Function: on / <a action=\"bypass _bbsclan_clannotice_disable\">off</a>");
|
||||
@@ -167,7 +160,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
}
|
||||
|
||||
html.append("</td></tr></table><img src=\"L2UI.Squaregray\" width=\"610\" height=\"1\"><br> <br><table width=610 border=0 cellspacing=2 cellpadding=0><tr><td>Edit Notice: </td></tr><tr><td height=5></td></tr><tr><td><MultiEdit var =\"Content\" width=610 height=100></td></tr></table><br><table width=610 border=0 cellspacing=0 cellpadding=0><tr><td height=5></td></tr><tr><td align=center FIXWIDTH=65><button value=\"&$140;\" action=\"Write Notice Set _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=45></td><td align=center FIXWIDTH=500></td></tr></table></center></body></html>");
|
||||
|
||||
Util.sendCBHtml(player, html.toString(), player.getClan().getNotice());
|
||||
}
|
||||
else
|
||||
@@ -196,7 +188,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
html.append("<html><body><br><br><center><br1><br1><table border=0 cellspacing=0 cellpadding=0><tr><td FIXWIDTH=15> </td><td width=610 height=30 align=left><a action=\"bypass _bbsclan_clanlist\"> CLAN COMMUNITY </a></td></tr></table><table border=0 cellspacing=0 cellpadding=0 width=610 bgcolor=434343><tr><td height=10></td></tr><tr><td fixWIDTH=5></td><td fixWIDTH=600><a action=\"bypass _bbsclan_clanhome;");
|
||||
html.append(player.getClan() != null ? player.getClan().getId() : 0);
|
||||
html.append("\">[GO TO MY CLAN]</a> </td><td fixWIDTH=5></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=2 bgcolor=5A5A5A width=610><tr><td FIXWIDTH=5></td><td FIXWIDTH=200 align=center>CLAN NAME</td><td FIXWIDTH=200 align=center>CLAN LEADER</td><td FIXWIDTH=100 align=center>CLAN LEVEL</td><td FIXWIDTH=100 align=center>CLAN MEMBERS</td><td FIXWIDTH=5></td></tr></table><img src=\"L2UI.Squareblank\" width=\"1\" height=\"5\">");
|
||||
|
||||
int i = 0;
|
||||
for (Clan cl : ClanTable.getInstance().getClans())
|
||||
{
|
||||
@@ -222,7 +213,6 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
}
|
||||
|
||||
html.append("<img src=\"L2UI.SquareBlank\" width=\"610\" height=\"2\"><table cellpadding=0 cellspacing=2 border=0><tr>");
|
||||
|
||||
if (index == 1)
|
||||
{
|
||||
html.append("<td><button action=\"\" back=\"l2ui_ch3.prev1_down\" fore=\"l2ui_ch3.prev1\" width=16 height=16 ></td>");
|
||||
@@ -309,12 +299,10 @@ public class ClanBoard implements IWriteBoardHandler
|
||||
// the only Write bypass that comes to this handler is "Write Notice Set _ Content Content Content";
|
||||
// arg1 = Set, arg2 = _
|
||||
final Clan clan = player.getClan();
|
||||
|
||||
if ((clan != null) && player.isClanLeader())
|
||||
{
|
||||
clan.setNotice(arg3);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@@ -197,7 +197,6 @@ public class DropSearchBoard implements IParseBoardHandler
|
||||
else
|
||||
{
|
||||
final Item item = ItemTable.getInstance().getTemplate(cbDropHolder.itemId);
|
||||
|
||||
if (Config.RATE_DROP_CHANCE_BY_ID.get(cbDropHolder.itemId) != null)
|
||||
{
|
||||
rateChance *= Config.RATE_DROP_CHANCE_BY_ID.get(cbDropHolder.itemId);
|
||||
|
@@ -45,17 +45,13 @@ public class FriendsBoard implements IParseBoardHandler
|
||||
if (command.equals("_friendlist"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Friends List", command);
|
||||
|
||||
final String html = HtmCache.getInstance().getHtm(player, "data/html/CommunityBoard/friends_list.html");
|
||||
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
else if (command.equals("_friendblocklist"))
|
||||
{
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Ignore list", command);
|
||||
|
||||
final String html = HtmCache.getInstance().getHtm(player, "data/html/CommunityBoard/friends_block_list.html");
|
||||
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
return true;
|
||||
|
@@ -90,7 +90,6 @@ public class HomeBoard implements IParseBoardHandler
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return commandCheck && (player.isCastingNow() || player.isInCombat() || player.isInDuel() || player.isInOlympiadMode() || player.isInsideZone(ZoneId.SIEGE) || player.isInsideZone(ZoneId.PVP));
|
||||
};
|
||||
|
||||
@@ -127,7 +126,6 @@ public class HomeBoard implements IParseBoardHandler
|
||||
{
|
||||
final String customPath = Config.CUSTOM_CB_ENABLED ? "Custom/" : "";
|
||||
CommunityBoardHandler.getInstance().addBypass(player, "Home", command);
|
||||
|
||||
returnHtml = HtmCache.getInstance().getHtm(player, "data/html/CommunityBoard/" + customPath + "home.html");
|
||||
if (!Config.CUSTOM_CB_ENABLED)
|
||||
{
|
||||
|
@@ -71,7 +71,6 @@ public class BeastSoulShot implements IItemHandler
|
||||
final long shotCount = item.getCount();
|
||||
final List<ItemSkillHolder> skills = item.getItem().getSkills(ItemSkillType.NORMAL);
|
||||
short shotConsumption = 0;
|
||||
|
||||
if ((pet != null) && !pet.isChargedShot(ShotType.SOULSHOTS))
|
||||
{
|
||||
shotConsumption += pet.getSoulShotsPerHit();
|
||||
|
@@ -70,9 +70,7 @@ public class BeastSpiritShot implements IItemHandler
|
||||
final int itemId = item.getId();
|
||||
final boolean isBlessed = ((itemId == 6647) || (itemId == 20334)); // TODO: Unhardcode these!
|
||||
final List<ItemSkillHolder> skills = item.getItem().getSkills(ItemSkillType.NORMAL);
|
||||
|
||||
final ShotType shotType = isBlessed ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS;
|
||||
|
||||
short shotConsumption = 0;
|
||||
if ((pet != null) && !pet.isChargedShot(shotType))
|
||||
{
|
||||
|
@@ -69,7 +69,6 @@ public class BlessedSoulShots implements IItemHandler
|
||||
}
|
||||
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SOULSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
|
@@ -72,7 +72,6 @@ public class BlessedSpiritShot implements IItemHandler
|
||||
|
||||
// Check for correct grade
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SPIRITSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
@@ -110,7 +109,6 @@ public class BlessedSpiritShot implements IItemHandler
|
||||
else
|
||||
{
|
||||
skills.forEach(holder -> Broadcast.toSelfAndKnownPlayersInRadius(player, new MagicSkillUse(player, player, holder.getSkillId(), holder.getSkillLevel(), 0, 0), 600));
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@@ -38,10 +38,8 @@ public class Book implements IItemHandler
|
||||
|
||||
final PlayerInstance player = (PlayerInstance) playable;
|
||||
final int itemId = item.getId();
|
||||
|
||||
final String filename = "data/html/help/" + itemId + ".htm";
|
||||
final String content = HtmCache.getInstance().getHtm(player, filename);
|
||||
|
||||
if (content == null)
|
||||
{
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, item.getId());
|
||||
|
@@ -37,7 +37,6 @@ public class Bypass implements IItemHandler
|
||||
}
|
||||
final PlayerInstance player = (PlayerInstance) playable;
|
||||
final int itemId = item.getId();
|
||||
|
||||
final String filename = "data/html/item/" + itemId + ".htm";
|
||||
final String content = HtmCache.getInstance().getHtm(player, filename);
|
||||
final NpcHtmlMessage html = new NpcHtmlMessage(0, item.getId());
|
||||
|
@@ -39,10 +39,8 @@ public class CharmOfCourage implements IItemHandler
|
||||
}
|
||||
|
||||
final PlayerInstance player = playable.getActingPlayer();
|
||||
|
||||
int level = player.getLevel();
|
||||
final int itemLevel = item.getItem().getCrystalType().getId();
|
||||
|
||||
if (level < 20)
|
||||
{
|
||||
level = 0;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user