Code review Part 3.
This commit is contained in:
@@ -50,7 +50,6 @@ import org.l2jmobius.gameserver.network.serverpackets.PlaySound;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SpecialCamera;
|
||||
|
||||
/**
|
||||
* @version $Revision: $ $Date: $
|
||||
* @author L2J_JP SANDMAN
|
||||
*/
|
||||
public class Antharas extends Quest
|
||||
@@ -61,7 +60,7 @@ public class Antharas extends Quest
|
||||
private static final int FWA_ACTIVITYTIMEOFANTHARAS = 120;
|
||||
// private static final int FWA_APPTIMEOFANTHARAS = 1800000;
|
||||
// private static final int FWA_INACTIVITYTIME = 900000;
|
||||
// private static final boolean FWA_OLDANTHARAS = true; //use antharas interlude with minions
|
||||
// private static final boolean FWA_OLDANTHARAS = true; // use antharas interlude with minions
|
||||
protected static final boolean FWA_OLDANTHARAS = Config.ANTHARAS_OLD; // use antharas interlude with minions
|
||||
private static final boolean FWA_MOVEATRANDOM = true;
|
||||
private static final boolean FWA_DOSERVEREARTHQUAKE = true;
|
||||
@@ -75,15 +74,13 @@ public class Antharas extends Quest
|
||||
private static final int FWA_PERCENTOFBEHEMOTH = 60;
|
||||
private static final int FWA_SELFDESTRUCTTIME = 15000;
|
||||
// Location of teleport cube.
|
||||
private final int _teleportCubeId = 31859;
|
||||
private final int _teleportCubeLocation[][] =
|
||||
private static final int TELEPORT_CUBE = 31859;
|
||||
private static final int[] TELEPORT_CUBE_LOCATION =
|
||||
{
|
||||
{
|
||||
177615,
|
||||
114941,
|
||||
-7709,
|
||||
0
|
||||
}
|
||||
177615,
|
||||
114941,
|
||||
-7709,
|
||||
0
|
||||
};
|
||||
|
||||
protected Collection<Spawn> _teleportCubeSpawn = ConcurrentHashMap.newKeySet();
|
||||
@@ -104,7 +101,7 @@ public class Antharas extends Quest
|
||||
|
||||
// Tasks.
|
||||
protected ScheduledFuture<?> _cubeSpawnTask = null;
|
||||
protected volatile ScheduledFuture<?> _monsterSpawnTask = null;
|
||||
protected ScheduledFuture<?> _monsterSpawnTask = null;
|
||||
protected ScheduledFuture<?> _activityCheckTask = null;
|
||||
protected ScheduledFuture<?> _socialTask = null;
|
||||
protected ScheduledFuture<?> _mobiliseTask = null;
|
||||
@@ -223,21 +220,18 @@ public class Antharas extends Quest
|
||||
// Setting spawn data of teleport cube.
|
||||
try
|
||||
{
|
||||
final NpcTemplate Cube = NpcTable.getInstance().getTemplate(_teleportCubeId);
|
||||
final NpcTemplate cube = NpcTable.getInstance().getTemplate(TELEPORT_CUBE);
|
||||
Spawn spawnDat;
|
||||
for (int[] element : _teleportCubeLocation)
|
||||
{
|
||||
spawnDat = new Spawn(Cube);
|
||||
spawnDat.setAmount(1);
|
||||
spawnDat.setX(element[0]);
|
||||
spawnDat.setY(element[1]);
|
||||
spawnDat.setZ(element[2]);
|
||||
spawnDat.setHeading(element[3]);
|
||||
spawnDat.setRespawnDelay(60);
|
||||
spawnDat.setLocation(0);
|
||||
SpawnTable.getInstance().addNewSpawn(spawnDat, false);
|
||||
_teleportCubeSpawn.add(spawnDat);
|
||||
}
|
||||
spawnDat = new Spawn(cube);
|
||||
spawnDat.setAmount(1);
|
||||
spawnDat.setX(TELEPORT_CUBE_LOCATION[0]);
|
||||
spawnDat.setY(TELEPORT_CUBE_LOCATION[1]);
|
||||
spawnDat.setZ(TELEPORT_CUBE_LOCATION[2]);
|
||||
spawnDat.setHeading(TELEPORT_CUBE_LOCATION[3]);
|
||||
spawnDat.setRespawnDelay(60);
|
||||
spawnDat.setLocation(0);
|
||||
SpawnTable.getInstance().addNewSpawn(spawnDat, false);
|
||||
_teleportCubeSpawn.add(spawnDat);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -447,11 +441,11 @@ public class Antharas extends Quest
|
||||
{
|
||||
npcId = 29019; // old
|
||||
}
|
||||
else if ((_players == null) || ((_players != null) && (_players.size() <= FWA_LIMITOFWEAK)))
|
||||
else if ((_players == null) || (_players.size() <= FWA_LIMITOFWEAK))
|
||||
{
|
||||
npcId = 29066; // weak
|
||||
}
|
||||
else if ((_players != null) && (_players.size() > FWA_LIMITOFNORMAL))
|
||||
else if (_players.size() > FWA_LIMITOFNORMAL)
|
||||
{
|
||||
npcId = 29068; // strong
|
||||
}
|
||||
@@ -586,10 +580,6 @@ public class Antharas extends Quest
|
||||
// Do spawn Behemoth or Bomber.
|
||||
private class MobsSpawn implements Runnable
|
||||
{
|
||||
public MobsSpawn()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run()
|
||||
{
|
||||
@@ -629,17 +619,14 @@ public class Antharas extends Quest
|
||||
final int ry = Rnd.get(112400, 116000);
|
||||
final int rdt = ((_antharas.getX() - rx) * (_antharas.getX() - rx)) + ((_antharas.getY() - ry) * (_antharas.getY() - ry));
|
||||
final Location randomLocation = new Location(rx, ry, -7704);
|
||||
if (GeoEngine.getInstance().canSeeTarget(_antharas, randomLocation))
|
||||
if (GeoEngine.getInstance().canSeeTarget(_antharas, randomLocation) && (rdt < dt))
|
||||
{
|
||||
if (rdt < dt)
|
||||
x = rx;
|
||||
y = ry;
|
||||
dt = rdt;
|
||||
if (rdt <= 900000)
|
||||
{
|
||||
x = rx;
|
||||
y = ry;
|
||||
dt = rdt;
|
||||
if (rdt <= 900000)
|
||||
{
|
||||
notFound = false;
|
||||
}
|
||||
notFound = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -79,7 +79,7 @@ public class Baium extends Quest
|
||||
|
||||
// Archangel locations.
|
||||
// @formatter:off
|
||||
private static final int ANGEL_LOCATION[][] =
|
||||
private static final int[][] ANGEL_LOCATION =
|
||||
{
|
||||
{114239, 17168, 10080, 63544},
|
||||
{115780, 15564, 10080, 13620},
|
||||
@@ -151,20 +151,19 @@ public class Baium extends Quest
|
||||
Announcements.getInstance().announceToAll("Raid boss " + baium.getName() + " spawned in world.");
|
||||
}
|
||||
GrandBossManager.getInstance().addBoss(baium);
|
||||
final NpcInstance _baium = baium;
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
try
|
||||
{
|
||||
_baium.setCurrentHpMp(hp, mp);
|
||||
_baium.setIsInvul(true);
|
||||
baium.setCurrentHpMp(hp, mp);
|
||||
baium.setIsInvul(true);
|
||||
// _baium.setIsImobilised(true);
|
||||
_baium.broadcastPacket(new SocialAction(_baium.getObjectId(), 2));
|
||||
startQuestTimer("baium_wakeup", 15000, _baium, null);
|
||||
baium.broadcastPacket(new SocialAction(baium.getObjectId(), 2));
|
||||
startQuestTimer("baium_wakeup", 15000, baium, null);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
LOGGER.warning(e.getMessage());
|
||||
}
|
||||
}, 100L);
|
||||
}
|
||||
@@ -314,15 +313,14 @@ public class Baium extends Quest
|
||||
npc.deleteMe();
|
||||
final GrandBossInstance baium = (GrandBossInstance) addSpawn(LIVE_BAIUM, npc);
|
||||
GrandBossManager.getInstance().addBoss(baium);
|
||||
final NpcInstance _baium = baium;
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
try
|
||||
{
|
||||
_baium.setIsInvul(true);
|
||||
_baium.setRunning();
|
||||
_baium.broadcastPacket(new SocialAction(_baium.getObjectId(), 2));
|
||||
startQuestTimer("baium_wakeup", 15000, _baium, player);
|
||||
baium.setIsInvul(true);
|
||||
baium.setRunning();
|
||||
baium.broadcastPacket(new SocialAction(baium.getObjectId(), 2));
|
||||
startQuestTimer("baium_wakeup", 15000, baium, player);
|
||||
// _baium.setShowSummonAnimation(false);
|
||||
}
|
||||
catch (Throwable e)
|
||||
@@ -392,7 +390,7 @@ public class Baium extends Quest
|
||||
{
|
||||
if (attacker.getMountType() == 1)
|
||||
{
|
||||
int sk_4258 = 0;
|
||||
int sk4258 = 0;
|
||||
final Effect[] effects = attacker.getAllEffects();
|
||||
if ((effects != null) && (effects.length != 0))
|
||||
{
|
||||
@@ -400,11 +398,11 @@ public class Baium extends Quest
|
||||
{
|
||||
if (e.getSkill().getId() == 4258)
|
||||
{
|
||||
sk_4258 = 1;
|
||||
sk4258 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (sk_4258 == 0)
|
||||
if (sk4258 == 0)
|
||||
{
|
||||
npc.setTarget(attacker);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4258, 1));
|
||||
@@ -462,26 +460,17 @@ public class Baium extends Quest
|
||||
{
|
||||
for (WorldObject obj : objs)
|
||||
{
|
||||
if (obj instanceof Creature)
|
||||
if ((obj instanceof Creature) && (((((Creature) obj).getZ() < (npc.getZ() - 100)) && (((Creature) obj).getZ() > (npc.getZ() + 100))) || !GeoEngine.getInstance().canSeeTarget(obj, npc)))
|
||||
{
|
||||
if (((((Creature) obj).getZ() < (npc.getZ() - 100)) && (((Creature) obj).getZ() > (npc.getZ() + 100))) || !GeoEngine.getInstance().canSeeTarget(obj, npc))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (obj instanceof PlayerInstance)
|
||||
if ((obj instanceof PlayerInstance) && Util.checkIfInRange(9000, npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
if (Util.checkIfInRange(9000, npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
result.add((PlayerInstance) obj);
|
||||
}
|
||||
result.add((PlayerInstance) obj);
|
||||
}
|
||||
if (obj instanceof Summon)
|
||||
if ((obj instanceof Summon) && Util.checkIfInRange(9000, npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
if (Util.checkIfInRange(9000, npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
result.add((Summon) obj);
|
||||
}
|
||||
result.add((Summon) obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -508,8 +497,7 @@ public class Baium extends Quest
|
||||
timer.cancel();
|
||||
}
|
||||
startQuestTimer("clean_player", 20000, npc, null);
|
||||
final Creature target = (Creature) characters[Rnd.get(characters.length)];
|
||||
return target;
|
||||
return (Creature) characters[Rnd.get(characters.length)];
|
||||
}
|
||||
|
||||
public synchronized void callSkillAI(NpcInstance npc)
|
||||
@@ -557,7 +545,7 @@ public class Baium extends Quest
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
LOGGER.warning(e.getMessage());
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@@ -42,7 +42,7 @@ public class Benom extends Quest
|
||||
private static final int BENOM = 29054;
|
||||
private static final int BENOM_TELEPORT = 13101;
|
||||
// Locations
|
||||
private final static Location[] WALK_ROUTES =
|
||||
private static final Location[] WALK_ROUTES =
|
||||
{
|
||||
new Location(12565, -49739, -547),
|
||||
new Location(11242, -49689, -33),
|
||||
@@ -79,7 +79,7 @@ public class Benom extends Quest
|
||||
new Location(13175, -49153, -537)
|
||||
};
|
||||
// Misc
|
||||
private final static int[] WALK_TIMES =
|
||||
private static final int[] WALK_TIMES =
|
||||
{
|
||||
18000,
|
||||
17000,
|
||||
@@ -115,15 +115,15 @@ public class Benom extends Quest
|
||||
12000,
|
||||
20000
|
||||
};
|
||||
private final static String[] TALK =
|
||||
private static final String[] TALK =
|
||||
{
|
||||
"You should have finished me when you had the chance!!!",
|
||||
"I will crush all of you!!!",
|
||||
"I am not finished here, come face me!!!",
|
||||
"You cowards!!! I will torture each and everyone of you!!!"
|
||||
};
|
||||
private final static int ALIVE = 0;
|
||||
private final static int DEAD = 1;
|
||||
private static final int ALIVE = 0;
|
||||
private static final int DEAD = 1;
|
||||
private static int _benomWalkRouteStep = 0;
|
||||
private static int _benomIsSpawned = 0;
|
||||
private static NpcInstance _benomInstance;
|
||||
@@ -216,7 +216,7 @@ public class Benom extends Quest
|
||||
case "Attacking":
|
||||
{
|
||||
final Collection<PlayerInstance> knownPlayers = npc.getKnownList().getKnownPlayers().values();
|
||||
if (knownPlayers.size() > 0)
|
||||
if (!knownPlayers.isEmpty())
|
||||
{
|
||||
final PlayerInstance target = knownPlayers.stream().findAny().get();
|
||||
((MonsterInstance) npc).addDamageHate(target, 0, 999);
|
||||
@@ -264,7 +264,6 @@ public class Benom extends Quest
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, WALK_ROUTES[_benomWalkRouteStep]);
|
||||
startQuestTimer("BenomWalk", WALK_TIMES[_benomWalkRouteStep], npc, null);
|
||||
System.out.println(WALK_TIMES[_benomWalkRouteStep]);
|
||||
_benomWalkRouteStep = _benomWalkRouteStep + 1;
|
||||
}
|
||||
break;
|
||||
|
@@ -236,7 +236,6 @@ public class Frintezza extends Quest
|
||||
|
||||
private static long _lastAction = 0;
|
||||
private static int _angle = 0;
|
||||
private static int _heading = 0;
|
||||
private static int _locCycle = 0;
|
||||
private static int _bomber = 0;
|
||||
private static int _checkDie = 0;
|
||||
@@ -844,14 +843,14 @@ public class Frintezza extends Quest
|
||||
}
|
||||
else if (event.equals("stop_npc"))
|
||||
{
|
||||
_heading = npc.getHeading();
|
||||
if (_heading < 32768)
|
||||
final int heading = npc.getHeading();
|
||||
if (heading < 32768)
|
||||
{
|
||||
_angle = Math.abs(180 - (int) (_heading / 182.044444444));
|
||||
_angle = Math.abs(180 - (int) (heading / 182.044444444));
|
||||
}
|
||||
else
|
||||
{
|
||||
_angle = Math.abs(540 - (int) (_heading / 182.044444444));
|
||||
_angle = Math.abs(540 - (int) (heading / 182.044444444));
|
||||
}
|
||||
}
|
||||
else if (event.equals("start_pc"))
|
||||
@@ -1043,45 +1042,45 @@ public class Frintezza extends Quest
|
||||
_onSong = 2;
|
||||
}
|
||||
|
||||
String SongName = "";
|
||||
String songName = "";
|
||||
|
||||
// Name of the songs are custom, named with client side description.
|
||||
switch (_onSong)
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
SongName = "Frintezza's Healing Rhapsody";
|
||||
songName = "Frintezza's Healing Rhapsody";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
SongName = "Frintezza's Rampaging Opus";
|
||||
songName = "Frintezza's Rampaging Opus";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
SongName = "Frintezza's Power Concerto";
|
||||
songName = "Frintezza's Power Concerto";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
SongName = "Frintezza's Plagued Concerto";
|
||||
songName = "Frintezza's Plagued Concerto";
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
SongName = "Frintezza's Psycho Symphony";
|
||||
songName = "Frintezza's Psycho Symphony";
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
SongName = "Frintezza's Song";
|
||||
songName = "Frintezza's Song";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Like L2OFF the skill name is printed on screen
|
||||
_zone.broadcastPacket(new ExShowScreenMessage(SongName, 6000));
|
||||
_zone.broadcastPacket(new ExShowScreenMessage(songName, 6000));
|
||||
|
||||
if ((_onSong == 1) && (_thirdMorph == 1) && (_strongScarlet.getCurrentHp() < (_strongScarlet.getMaxHp() * 0.6)) && (Rnd.get(100) < 80))
|
||||
{
|
||||
@@ -1122,45 +1121,45 @@ public class Frintezza extends Quest
|
||||
return null;
|
||||
}
|
||||
|
||||
String SongName = "";
|
||||
String songName = "";
|
||||
|
||||
// Name of the songs are custom, named with client side description.
|
||||
switch (_onSong)
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
SongName = "Frintezza's Concert Hall Melody";
|
||||
songName = "Frintezza's Concert Hall Melody";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
SongName = "Frintezza's Rampaging Opus en masse";
|
||||
songName = "Frintezza's Rampaging Opus en masse";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
SongName = "Frintezza Power Encore";
|
||||
songName = "Frintezza Power Encore";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
SongName = "Mournful Chorale Prelude";
|
||||
songName = "Mournful Chorale Prelude";
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
SongName = "Hypnotic Mazurka ";
|
||||
songName = "Hypnotic Mazurka ";
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
SongName = "Frintezza's Song";
|
||||
songName = "Frintezza's Song";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Like L2OFF the skill name is printed on screen
|
||||
_zone.broadcastPacket(new ExShowScreenMessage(SongName, 6000));
|
||||
_zone.broadcastPacket(new ExShowScreenMessage(songName, 6000));
|
||||
|
||||
if ((_onSong == 1) || (_onSong == 2) || (_onSong == 3))
|
||||
{
|
||||
@@ -1339,19 +1338,16 @@ public class Frintezza extends Quest
|
||||
{
|
||||
for (Creature creature : _zone.getCharactersInside().values())
|
||||
{
|
||||
if (creature instanceof PlayerInstance)
|
||||
if ((creature instanceof PlayerInstance) && (creature.getFirstEffect(5016) != null))
|
||||
{
|
||||
if (creature.getFirstEffect(5016) != null)
|
||||
{
|
||||
creature.abortAttack();
|
||||
creature.abortCast();
|
||||
creature.disableAllSkills();
|
||||
creature.stopMove(null);
|
||||
creature.setIsImobilised(true);
|
||||
creature.setIsParalyzed(true);
|
||||
creature.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
|
||||
creature.startAbnormalEffect(Creature.ABNORMAL_EFFECT_FLOATING_ROOT);
|
||||
}
|
||||
creature.abortAttack();
|
||||
creature.abortCast();
|
||||
creature.disableAllSkills();
|
||||
creature.stopMove(null);
|
||||
creature.setIsImobilised(true);
|
||||
creature.setIsParalyzed(true);
|
||||
creature.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
|
||||
creature.startAbnormalEffect(Creature.ABNORMAL_EFFECT_FLOATING_ROOT);
|
||||
}
|
||||
}
|
||||
startQuestTimer("stop_effect", 25000, npc, null);
|
||||
@@ -1469,23 +1465,23 @@ public class Frintezza extends Quest
|
||||
}
|
||||
else if (status == DORMANT)
|
||||
{
|
||||
boolean party_check_success = true;
|
||||
boolean partyCheckSuccess = true;
|
||||
|
||||
if (!Config.BYPASS_FRINTEZZA_PARTIES_CHECK)
|
||||
{
|
||||
if ((!player.isInParty() || !player.getParty().isLeader(player)) || (player.getParty().getCommandChannel() == null) || (player.getParty().getCommandChannel().getChannelLeader() != player))
|
||||
{
|
||||
htmltext = "<html><body>No reaction. Contact must be initiated by the Command Channel Leader.</body></html>";
|
||||
party_check_success = false;
|
||||
partyCheckSuccess = false;
|
||||
}
|
||||
else if ((player.getParty().getCommandChannel().getParties().size() < Config.FRINTEZZA_MIN_PARTIES) || (player.getParty().getCommandChannel().getParties().size() > Config.FRINTEZZA_MAX_PARTIES))
|
||||
{
|
||||
htmltext = "<html><body>Your command channel needs to have at least " + Config.FRINTEZZA_MIN_PARTIES + " parties and a maximum of " + Config.FRINTEZZA_MAX_PARTIES + ".</body></html>";
|
||||
party_check_success = false;
|
||||
partyCheckSuccess = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (party_check_success)
|
||||
if (partyCheckSuccess)
|
||||
{
|
||||
if (player.getInventory().getItemByItemId(8073) == null)
|
||||
{
|
||||
@@ -1507,12 +1503,12 @@ public class Frintezza extends Quest
|
||||
{
|
||||
if (player.getParty() != null)
|
||||
{
|
||||
final CommandChannel CC = player.getParty().getCommandChannel();
|
||||
final CommandChannel cc = player.getParty().getCommandChannel();
|
||||
|
||||
if (CC != null)
|
||||
{ // teleport all parties into CC
|
||||
|
||||
for (Party party : CC.getParties())
|
||||
if (cc != null)
|
||||
{
|
||||
// teleport all parties into CC
|
||||
for (Party party : cc.getParties())
|
||||
{
|
||||
if (party == null)
|
||||
{
|
||||
@@ -1602,9 +1598,9 @@ public class Frintezza extends Quest
|
||||
}
|
||||
else
|
||||
{
|
||||
final CommandChannel CC = player.getParty().getCommandChannel();
|
||||
final CommandChannel cc = player.getParty().getCommandChannel();
|
||||
|
||||
for (Party party : CC.getParties())
|
||||
for (Party party : cc.getParties())
|
||||
{
|
||||
if (party == null)
|
||||
{
|
||||
@@ -1696,22 +1692,16 @@ public class Frintezza extends Quest
|
||||
_onCheck = 1;
|
||||
startQuestTimer("check_hp", 0, npc, null);
|
||||
}
|
||||
else if (((npc.getNpcId() == 29050) || (npc.getNpcId() == 29051)) && (_bomber == 0))
|
||||
else if (((npc.getNpcId() == 29050) || (npc.getNpcId() == 29051)) && (_bomber == 0) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.1)) && (Rnd.get(100) < 30))
|
||||
{
|
||||
if (npc.getCurrentHp() < (npc.getMaxHp() * 0.1))
|
||||
_bomber = 1;
|
||||
startQuestTimer("bomber", 3000, npc, null);
|
||||
|
||||
final Skill skill = SkillTable.getInstance().getInfo(5011, 1);
|
||||
if (skill != null)
|
||||
{
|
||||
if (Rnd.get(100) < 30)
|
||||
{
|
||||
_bomber = 1;
|
||||
startQuestTimer("bomber", 3000, npc, null);
|
||||
|
||||
final Skill skill = SkillTable.getInstance().getInfo(5011, 1);
|
||||
if (skill != null)
|
||||
{
|
||||
// npc.setIsCastingNow(true);
|
||||
npc.doCast(skill);
|
||||
}
|
||||
}
|
||||
// npc.setIsCastingNow(true);
|
||||
npc.doCast(skill);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -39,9 +39,6 @@ public class Gordon extends Quest
|
||||
private static int _npcMoveY = 0;
|
||||
private static int _isWalkTo = 0;
|
||||
private static int _npcBlock = 0;
|
||||
private static int X = 0;
|
||||
private static int Y = 0;
|
||||
private static int Z = 0;
|
||||
|
||||
// @formatter:off
|
||||
private static final int[][] WALKS =
|
||||
@@ -129,106 +126,113 @@ public class Gordon extends Quest
|
||||
@Override
|
||||
public String onAdvEvent(String event, NpcInstance npc, PlayerInstance player)
|
||||
{
|
||||
X = WALKS[_isWalkTo - 1][0];
|
||||
Y = WALKS[_isWalkTo - 1][1];
|
||||
Z = WALKS[_isWalkTo - 1][2];
|
||||
if (event.equals("time_isAttacked"))
|
||||
int x = WALKS[_isWalkTo - 1][0];
|
||||
int y = WALKS[_isWalkTo - 1][1];
|
||||
int z = WALKS[_isWalkTo - 1][2];
|
||||
|
||||
switch (event)
|
||||
{
|
||||
_isAttacked = false;
|
||||
if (npc.getNpcId() == GORDON)
|
||||
case "time_isAttacked":
|
||||
{
|
||||
npc.setWalking();
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(X, Y, Z, 0));
|
||||
}
|
||||
}
|
||||
else if (event.equals("check_ai"))
|
||||
{
|
||||
cancelQuestTimer("check_ai", null, null);
|
||||
if (!_isSpawned)
|
||||
{
|
||||
final NpcInstance gordon_ai = findTemplate(GORDON);
|
||||
if (gordon_ai != null)
|
||||
{
|
||||
_isSpawned = true;
|
||||
startQuestTimer("Start", 1000, gordon_ai, null, true);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (event.equals("Start"))
|
||||
{
|
||||
// startQuestTimer("Start", 1000, npc, null);
|
||||
if ((npc != null) && _isSpawned)
|
||||
{
|
||||
// check if player have Cursed Weapon and in radius
|
||||
_isAttacked = false;
|
||||
if (npc.getNpcId() == GORDON)
|
||||
{
|
||||
final Collection<PlayerInstance> chars = npc.getKnownList().getKnownPlayers().values();
|
||||
if ((chars != null) && (chars.size() > 0))
|
||||
npc.setWalking();
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(x, y, z, 0));
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "check_ai":
|
||||
{
|
||||
cancelQuestTimer("check_ai", null, null);
|
||||
if (!_isSpawned)
|
||||
{
|
||||
final NpcInstance gordon = findTemplate(GORDON);
|
||||
if (gordon != null)
|
||||
{
|
||||
for (PlayerInstance pc : chars)
|
||||
_isSpawned = true;
|
||||
startQuestTimer("Start", 1000, gordon, null, true);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "Start":
|
||||
{
|
||||
// startQuestTimer("Start", 1000, npc, null);
|
||||
if ((npc != null) && _isSpawned)
|
||||
{
|
||||
// check if player have Cursed Weapon and in radius
|
||||
if (npc.getNpcId() == GORDON)
|
||||
{
|
||||
final Collection<PlayerInstance> chars = npc.getKnownList().getKnownPlayers().values();
|
||||
if ((chars != null) && !chars.isEmpty())
|
||||
{
|
||||
if (pc.isCursedWeaponEquipped() && pc.isInsideRadius(npc, 5000, false, false))
|
||||
for (PlayerInstance pc : chars)
|
||||
{
|
||||
npc.setRunning();
|
||||
((Attackable) npc).addDamageHate(pc, 0, 9999);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, pc);
|
||||
_isAttacked = true;
|
||||
cancelQuestTimer("time_isAttacked", null, null);
|
||||
startQuestTimer("time_isAttacked", 180000, npc, null);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
if (pc.isCursedWeaponEquipped() && pc.isInsideRadius(npc, 5000, false, false))
|
||||
{
|
||||
npc.setRunning();
|
||||
((Attackable) npc).addDamageHate(pc, 0, 9999);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, pc);
|
||||
_isAttacked = true;
|
||||
cancelQuestTimer("time_isAttacked", null, null);
|
||||
startQuestTimer("time_isAttacked", 180000, npc, null);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// end check
|
||||
if (_isAttacked)
|
||||
{
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
|
||||
if ((npc.getNpcId() == GORDON) && ((npc.getX() - 50) <= X) && ((npc.getX() + 50) >= X) && ((npc.getY() - 50) <= Y) && ((npc.getY() + 50) >= Y))
|
||||
{
|
||||
_isWalkTo++;
|
||||
if (_isWalkTo > 55)
|
||||
// end check
|
||||
if (_isAttacked)
|
||||
{
|
||||
_isWalkTo = 1;
|
||||
}
|
||||
X = WALKS[_isWalkTo - 1][0];
|
||||
Y = WALKS[_isWalkTo - 1][1];
|
||||
Z = WALKS[_isWalkTo - 1][2];
|
||||
npc.setWalking();
|
||||
// TODO: find better way to prevent teleporting to the home location
|
||||
npc.getSpawn().setX(X);
|
||||
npc.getSpawn().setY(Y);
|
||||
npc.getSpawn().setZ(Z);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(X, Y, Z, 0));
|
||||
}
|
||||
// Test for unblock Npc
|
||||
if ((npc.getX() != _npcMoveX) && (npc.getY() != _npcMoveY))
|
||||
{
|
||||
_npcMoveX = npc.getX();
|
||||
_npcMoveY = npc.getY();
|
||||
_npcBlock = 0;
|
||||
}
|
||||
else if (npc.getNpcId() == GORDON)
|
||||
{
|
||||
_npcBlock++;
|
||||
if (_npcBlock > 2)
|
||||
{
|
||||
npc.teleToLocation(X, Y, Z);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
if (_npcBlock > 0)
|
||||
|
||||
if ((npc.getNpcId() == GORDON) && ((npc.getX() - 50) <= x) && ((npc.getX() + 50) >= x) && ((npc.getY() - 50) <= y) && ((npc.getY() + 50) >= y))
|
||||
{
|
||||
_isWalkTo++;
|
||||
if (_isWalkTo > 55)
|
||||
{
|
||||
_isWalkTo = 1;
|
||||
}
|
||||
x = WALKS[_isWalkTo - 1][0];
|
||||
y = WALKS[_isWalkTo - 1][1];
|
||||
z = WALKS[_isWalkTo - 1][2];
|
||||
npc.setWalking();
|
||||
// TODO: find better way to prevent teleporting to the home location
|
||||
npc.getSpawn().setX(X);
|
||||
npc.getSpawn().setY(Y);
|
||||
npc.getSpawn().setZ(Z);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(X, Y, Z, 0));
|
||||
npc.getSpawn().setX(x);
|
||||
npc.getSpawn().setY(y);
|
||||
npc.getSpawn().setZ(z);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(x, y, z, 0));
|
||||
}
|
||||
// Test for unblock Npc
|
||||
if ((npc.getX() != _npcMoveX) && (npc.getY() != _npcMoveY))
|
||||
{
|
||||
_npcMoveX = npc.getX();
|
||||
_npcMoveY = npc.getY();
|
||||
_npcBlock = 0;
|
||||
}
|
||||
else if (npc.getNpcId() == GORDON)
|
||||
{
|
||||
_npcBlock++;
|
||||
if (_npcBlock > 2)
|
||||
{
|
||||
npc.teleToLocation(x, y, z);
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
if (_npcBlock > 0)
|
||||
{
|
||||
// TODO: find better way to prevent teleporting to the home location
|
||||
npc.getSpawn().setX(x);
|
||||
npc.getSpawn().setY(y);
|
||||
npc.getSpawn().setZ(z);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(x, y, z, 0));
|
||||
}
|
||||
}
|
||||
// End Test unblock Npc
|
||||
}
|
||||
// End Test unblock Npc
|
||||
break;
|
||||
}
|
||||
}
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
|
@@ -71,11 +71,7 @@ public class Orfen extends Quest
|
||||
}
|
||||
else
|
||||
{
|
||||
final int loc_x = 55024;
|
||||
final int loc_y = 17368;
|
||||
final int loc_z = -5412;
|
||||
final int heading = 0;
|
||||
_orfen = (GrandBossInstance) addSpawn(ORFEN, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
_orfen = (GrandBossInstance) addSpawn(ORFEN, 55024, 17368, -5412, 0, false, 0);
|
||||
if (Config.ANNOUNCE_TO_ALL_SPAWN_RB)
|
||||
{
|
||||
Announcements.getInstance().announceToAll("Raid boss " + _orfen.getName() + " spawned in world.");
|
||||
@@ -126,9 +122,9 @@ public class Orfen extends Quest
|
||||
@Override
|
||||
public String onAdvEvent(String event, NpcInstance npc, PlayerInstance player)
|
||||
{
|
||||
final Event event_enum = Event.valueOf(event.toUpperCase());
|
||||
final Event eventEnum = Event.valueOf(event.toUpperCase());
|
||||
|
||||
switch (event_enum)
|
||||
switch (eventEnum)
|
||||
{
|
||||
case ORFEN_SPAWN:
|
||||
{
|
||||
@@ -152,13 +148,13 @@ public class Orfen extends Quest
|
||||
cancelQuestTimer("ORFEN_REFRESH", npc, null);
|
||||
break;
|
||||
}
|
||||
double saved_hp = -1;
|
||||
double hp = -1;
|
||||
if ((npc.getNpcId() == ORFEN) && !npc.getSpawn().is_customBossInstance())
|
||||
{
|
||||
saved_hp = GrandBossManager.getInstance().getStatsSet(ORFEN).getDouble("currentHP");
|
||||
if (saved_hp < npc.getCurrentHp())
|
||||
hp = GrandBossManager.getInstance().getStatsSet(ORFEN).getDouble("currentHP");
|
||||
if (hp < npc.getCurrentHp())
|
||||
{
|
||||
npc.setCurrentHp(saved_hp);
|
||||
npc.setCurrentHp(hp);
|
||||
GrandBossManager.getInstance().getStatsSet(ORFEN).set("currentHP", npc.getMaxHp());
|
||||
}
|
||||
}
|
||||
|
@@ -165,9 +165,9 @@ public class QueenAnt extends Quest
|
||||
@Override
|
||||
public String onAdvEvent(String event, NpcInstance npc, PlayerInstance player)
|
||||
{
|
||||
final Event event_enum = Event.valueOf(event);
|
||||
final Event eventEnum = Event.valueOf(event);
|
||||
|
||||
switch (event_enum)
|
||||
switch (eventEnum)
|
||||
{
|
||||
case QUEEN_SPAWN:
|
||||
{
|
||||
@@ -179,13 +179,13 @@ public class QueenAnt extends Quest
|
||||
GrandBossManager.getInstance().setBossStatus(QUEEN, LIVE);
|
||||
GrandBossManager.getInstance().addBoss(queen);
|
||||
spawnBoss(queen);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case LARVA_DESPAWN:
|
||||
{
|
||||
_larva.decayMe();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case NURSES_SPAWN:
|
||||
{
|
||||
final int radius = 400;
|
||||
@@ -196,8 +196,8 @@ public class QueenAnt extends Quest
|
||||
_nurses.add((MonsterInstance) addSpawn(NURSE, npc.getX() + x, npc.getY() + y, npc.getZ(), 0, false, 0));
|
||||
_nurses.get(i).setIsAttackDisabled(true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SPAWN_ROYAL:
|
||||
{
|
||||
final int radius = 400;
|
||||
@@ -207,17 +207,18 @@ public class QueenAnt extends Quest
|
||||
final int y = (int) (radius * Math.sin(i * .7854));
|
||||
_minions.add((MonsterInstance) addSpawn(ROYAL, npc.getX() + x, npc.getY() + y, npc.getZ(), 0, false, 0));
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case RESPAWN_ROYAL:
|
||||
{
|
||||
_minions.add((MonsterInstance) addSpawn(ROYAL, npc.getX(), npc.getY(), npc.getZ(), 0, true, 0));
|
||||
break;
|
||||
}
|
||||
case RESPAWN_NURSE:
|
||||
{
|
||||
_nurses.add((MonsterInstance) addSpawn(NURSE, npc.getX(), npc.getY(), npc.getZ(), 0, true, 0));
|
||||
}
|
||||
break;
|
||||
}
|
||||
case DESPAWN_MINIONS:
|
||||
{
|
||||
for (int i = 0; i < _minions.size(); i++)
|
||||
@@ -230,16 +231,16 @@ public class QueenAnt extends Quest
|
||||
}
|
||||
for (int k = 0; k < _nurses.size(); k++)
|
||||
{
|
||||
final MonsterInstance _nurse = _nurses.get(k);
|
||||
if (_nurse != null)
|
||||
final MonsterInstance nurse = _nurses.get(k);
|
||||
if (nurse != null)
|
||||
{
|
||||
_nurse.decayMe();
|
||||
nurse.decayMe();
|
||||
}
|
||||
}
|
||||
_nurses.clear();
|
||||
_minions.clear();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CHECK_MINIONS_ZONE:
|
||||
{
|
||||
for (int i = 0; i < _minions.size(); i++)
|
||||
@@ -250,8 +251,8 @@ public class QueenAnt extends Quest
|
||||
mob.teleToLocation(npc.getX(), npc.getY(), npc.getZ());
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CHECK_NURSE_ALIVE:
|
||||
{
|
||||
int deadNurses = 0;
|
||||
@@ -266,11 +267,8 @@ public class QueenAnt extends Quest
|
||||
{
|
||||
startQuestTimer("RESPAWN_NURSE", Config.QA_RESP_NURSE * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
break;
|
||||
/*
|
||||
* case CHECK_QA_ZONE:{ int loc_x = -21610; int loc_y = 181594; int loc_z = -5734; if(!npc.isInsideRadius(loc_x,loc_y,3000,false)){ npc.teleToLocation(loc_x, loc_y, loc_z); } startQuestTimer("CHECK_MINIONS_ZONE", 1000, npc, null); } break;
|
||||
*/
|
||||
}
|
||||
case ACTION:
|
||||
{
|
||||
if (Rnd.get(3) == 0)
|
||||
@@ -284,12 +282,8 @@ public class QueenAnt extends Quest
|
||||
npc.broadcastPacket(new SocialAction(npc.getObjectId(), 4));
|
||||
}
|
||||
}
|
||||
/*
|
||||
* if(Math.abs(npc.getX() + 21610) > 1000 || Math.abs(npc.getY() - 181594) > 2500) { ((Attackable) npc).clearAggroList(); npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); npc.teleToLocation(-21610, 181594, -5740); }
|
||||
*/
|
||||
// startQuestTimer("ACTION", 10000, npc, null);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case HEAL:
|
||||
{
|
||||
boolean notCasting;
|
||||
@@ -325,16 +319,13 @@ public class QueenAnt extends Quest
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (nurseNeedHeal)
|
||||
if (nurseNeedHeal && ((nurse.getTarget() != nurse) || notCasting))
|
||||
{
|
||||
if ((nurse.getTarget() != nurse) || notCasting)
|
||||
for (int k = 0; k < _nurses.size(); k++)
|
||||
{
|
||||
for (int k = 0; k < _nurses.size(); k++)
|
||||
{
|
||||
getIntoPosition(_nurses.get(k), nurse);
|
||||
_nurses.get(k).setTarget(nurse);
|
||||
_nurses.get(k).doCast(SkillTable.getInstance().getInfo(4020, 1));
|
||||
}
|
||||
getIntoPosition(_nurses.get(k), nurse);
|
||||
_nurses.get(k).setTarget(nurse);
|
||||
_nurses.get(k).doCast(SkillTable.getInstance().getInfo(4020, 1));
|
||||
}
|
||||
}
|
||||
if (notCasting && (nurse.getTarget() != null))
|
||||
@@ -342,8 +333,8 @@ public class QueenAnt extends Quest
|
||||
nurse.setTarget(null);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
LOGGER.info("QUEEN: Not defined event: " + event + "!");
|
||||
@@ -397,28 +388,25 @@ public class QueenAnt extends Quest
|
||||
|
||||
startQuestTimer("DESPAWN_MINIONS", 10000, null, null);
|
||||
}
|
||||
else if (status == LIVE)
|
||||
else if ((status == LIVE) && ((npcId == ROYAL) || (npcId == NURSE)))
|
||||
{
|
||||
if ((npcId == ROYAL) || (npcId == NURSE))
|
||||
npc.decayMe();
|
||||
if (_minions.contains(npc))
|
||||
{
|
||||
npc.decayMe();
|
||||
if (_minions.contains(npc))
|
||||
{
|
||||
_minions.remove(npc);
|
||||
}
|
||||
else
|
||||
{
|
||||
_nurses.remove(npc);
|
||||
}
|
||||
|
||||
if (npcId == ROYAL)
|
||||
{
|
||||
startQuestTimer("RESPAWN_ROYAL", (Config.QA_RESP_ROYAL + Rnd.get(40)) * 1000, npc, null);
|
||||
}
|
||||
else if (npcId == NURSE)
|
||||
{
|
||||
startQuestTimer("CHECK_NURSE_ALIVE", 1000, npc, null);
|
||||
}
|
||||
_minions.remove(npc);
|
||||
}
|
||||
else
|
||||
{
|
||||
_nurses.remove(npc);
|
||||
}
|
||||
|
||||
if (npcId == ROYAL)
|
||||
{
|
||||
startQuestTimer("RESPAWN_ROYAL", (Config.QA_RESP_ROYAL + Rnd.get(40)) * 1000, npc, null);
|
||||
}
|
||||
else // if (npcId == NURSE)
|
||||
{
|
||||
startQuestTimer("CHECK_NURSE_ALIVE", 1000, npc, null);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isPet);
|
||||
|
@@ -36,7 +36,7 @@ public class Tyrannosaurus extends Quest
|
||||
22217, // Tyrannosaurus
|
||||
};
|
||||
// Locations
|
||||
private final static Location[] SPAWNS =
|
||||
private static final Location[] SPAWNS =
|
||||
{
|
||||
new Location(19506, -15772, -3080, 49220),
|
||||
new Location(22253, -17062, -2976, 47449),
|
||||
@@ -61,10 +61,7 @@ public class Tyrannosaurus extends Quest
|
||||
@Override
|
||||
public String onKill(NpcInstance npc, PlayerInstance killer, boolean isPet)
|
||||
{
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
addSpawn(TREX[Rnd.get(TREX.length)], SPAWNS[Rnd.get(SPAWNS.length)], false, 0);
|
||||
}, 1800000);
|
||||
ThreadPool.schedule(() -> addSpawn(TREX[Rnd.get(TREX.length)], SPAWNS[Rnd.get(SPAWNS.length)], false, 0), 1800000);
|
||||
return super.onKill(npc, killer, isPet);
|
||||
}
|
||||
|
||||
|
@@ -126,14 +126,12 @@ public class Valakas extends Quest
|
||||
final int mp = info.getInt("currentMP");
|
||||
final GrandBossInstance valakas = (GrandBossInstance) addSpawn(VALAKAS, loc_x, loc_y, loc_z, heading, false, 0);
|
||||
GrandBossManager.getInstance().addBoss(valakas);
|
||||
final NpcInstance _valakas = valakas;
|
||||
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
try
|
||||
{
|
||||
_valakas.setCurrentHpMp(hp, mp);
|
||||
_valakas.setRunning();
|
||||
valakas.setCurrentHpMp(hp, mp);
|
||||
valakas.setRunning();
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
@@ -161,7 +159,7 @@ public class Valakas extends Quest
|
||||
if (event.equals("check_activity_and_do_actions"))
|
||||
{
|
||||
int lvl = 0;
|
||||
int sk_4691 = 0;
|
||||
int sk4691 = 0;
|
||||
final Effect[] effects = npc.getAllEffects();
|
||||
if ((effects != null) && (effects.length != 0))
|
||||
{
|
||||
@@ -169,7 +167,7 @@ public class Valakas extends Quest
|
||||
{
|
||||
if (e.getSkill().getId() == 4629)
|
||||
{
|
||||
sk_4691 = 1;
|
||||
sk4691 = 1;
|
||||
lvl = e.getSkill().getLevel();
|
||||
break;
|
||||
}
|
||||
@@ -186,8 +184,8 @@ public class Valakas extends Quest
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
|
||||
|
||||
// delete the actual boss
|
||||
final GrandBossInstance _boss_instance = GrandBossManager.getInstance().deleteBoss(VALAKAS);
|
||||
_boss_instance.decayMe();
|
||||
final GrandBossInstance boss = GrandBossManager.getInstance().deleteBoss(VALAKAS);
|
||||
boss.decayMe();
|
||||
GrandBossManager.getInstance().setBossStatus(VALAKAS, DORMANT);
|
||||
// npc.setCurrentHpMp(npc.getMaxHp(), npc.getMaxMp());
|
||||
_Zone.oustAllPlayers();
|
||||
@@ -198,7 +196,7 @@ public class Valakas extends Quest
|
||||
}
|
||||
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 1) / 4))
|
||||
{
|
||||
if ((sk_4691 == 0) || ((sk_4691 == 1) && (lvl != 4)))
|
||||
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 4)))
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4691, 4));
|
||||
@@ -206,7 +204,7 @@ public class Valakas extends Quest
|
||||
}
|
||||
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 2) / 4.0))
|
||||
{
|
||||
if ((sk_4691 == 0) || ((sk_4691 == 1) && (lvl != 3)))
|
||||
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 3)))
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4691, 3));
|
||||
@@ -214,13 +212,13 @@ public class Valakas extends Quest
|
||||
}
|
||||
else if (npc.getCurrentHp() > ((npc.getMaxHp() * 3) / 4.0))
|
||||
{
|
||||
if ((sk_4691 == 0) || ((sk_4691 == 1) && (lvl != 2)))
|
||||
if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 2)))
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4691, 2));
|
||||
}
|
||||
}
|
||||
else if ((sk_4691 == 0) || ((sk_4691 == 1) && (lvl != 1)))
|
||||
else if ((sk4691 == 0) || ((sk4691 == 1) && (lvl != 1)))
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4691, 1));
|
||||
@@ -349,12 +347,11 @@ public class Valakas extends Quest
|
||||
GrandBossManager.getInstance().addBoss(valakas);
|
||||
|
||||
lastAttackTime = System.currentTimeMillis();
|
||||
final NpcInstance _valakas = valakas;
|
||||
ThreadPool.schedule(() ->
|
||||
{
|
||||
try
|
||||
{
|
||||
broadcastSpawn(_valakas);
|
||||
broadcastSpawn(valakas);
|
||||
}
|
||||
catch (Throwable e)
|
||||
{
|
||||
@@ -388,7 +385,7 @@ public class Valakas extends Quest
|
||||
*/
|
||||
if (attacker.getMountType() == 1)
|
||||
{
|
||||
int sk_4258 = 0;
|
||||
int sk4258 = 0;
|
||||
final Effect[] effects = attacker.getAllEffects();
|
||||
if ((effects != null) && (effects.length != 0))
|
||||
{
|
||||
@@ -396,11 +393,11 @@ public class Valakas extends Quest
|
||||
{
|
||||
if (e.getSkill().getId() == 4258)
|
||||
{
|
||||
sk_4258 = 1;
|
||||
sk4258 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (sk_4258 == 0)
|
||||
if (sk4258 == 0)
|
||||
{
|
||||
npc.setTarget(attacker);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4258, 1));
|
||||
@@ -424,19 +421,13 @@ public class Valakas extends Quest
|
||||
{
|
||||
i_ai0 = (i_ai0 + damage);
|
||||
}
|
||||
if (i_quest0 == 0)
|
||||
if ((i_quest0 == 0) && (((i_ai4 / npc.getMaxHp()) * 100) > 1) && (i_ai3 > (i_ai4 - i_ai3)))
|
||||
{
|
||||
if ((((i_ai4 / npc.getMaxHp()) * 100)) > 1)
|
||||
{
|
||||
if (i_ai3 > (i_ai4 - i_ai3))
|
||||
{
|
||||
i_ai3 = 0;
|
||||
i_ai4 = 0;
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4687, 1));
|
||||
i_quest0 = 1;
|
||||
}
|
||||
}
|
||||
i_ai3 = 0;
|
||||
i_ai4 = 0;
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4687, 1));
|
||||
i_quest0 = 1;
|
||||
}
|
||||
}
|
||||
int i1 = 0;
|
||||
@@ -974,21 +965,14 @@ public class Valakas extends Quest
|
||||
|
||||
public void broadcastSpawn(NpcInstance npc)
|
||||
{
|
||||
final Collection<WorldObject> objs = npc.getKnownList().getKnownObjects().values();
|
||||
for (WorldObject obj : npc.getKnownList().getKnownObjects().values())
|
||||
{
|
||||
for (WorldObject obj : objs)
|
||||
if ((obj instanceof PlayerInstance) && Util.checkIfInRange(10000, npc, obj, true))
|
||||
{
|
||||
if (obj instanceof PlayerInstance)
|
||||
{
|
||||
if (Util.checkIfInRange(10000, npc, obj, true))
|
||||
{
|
||||
((Creature) obj).sendPacket(new PlaySound(1, "B03_A", 1, npc.getObjectId(), 212852, -114842, -1632));
|
||||
((Creature) obj).sendPacket(new SocialAction(npc.getObjectId(), 3));
|
||||
}
|
||||
}
|
||||
((Creature) obj).sendPacket(new PlaySound(1, "B03_A", 1, npc.getObjectId(), 212852, -114842, -1632));
|
||||
((Creature) obj).sendPacket(new SocialAction(npc.getObjectId(), 3));
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
public Creature getRandomTarget(NpcInstance npc)
|
||||
@@ -998,16 +982,13 @@ public class Valakas extends Quest
|
||||
{
|
||||
for (WorldObject obj : objs)
|
||||
{
|
||||
if ((obj instanceof PlayerInstance) || (obj instanceof Summon))
|
||||
if (((obj instanceof PlayerInstance) || (obj instanceof Summon)) && Util.checkIfInRange(5000, npc, obj, true) && !((Creature) obj).isDead() && (obj instanceof PlayerInstance) && !((PlayerInstance) obj).isGM())
|
||||
{
|
||||
if (Util.checkIfInRange(5000, npc, obj, true) && !((Creature) obj).isDead() && (obj instanceof PlayerInstance) && !((PlayerInstance) obj).isGM())
|
||||
{
|
||||
result.add((Creature) obj);
|
||||
}
|
||||
result.add((Creature) obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!result.isEmpty() && (result.size() != 0))
|
||||
if (!result.isEmpty())
|
||||
{
|
||||
final Object[] characters = result.toArray();
|
||||
return (Creature) characters[Rnd.get(characters.length)];
|
||||
|
@@ -260,12 +260,9 @@ public class VanHalter extends Quest
|
||||
@Override
|
||||
public String onAttack(NpcInstance npc, PlayerInstance attacker, int damage, boolean isPet)
|
||||
{
|
||||
if (npc.getNpcId() == 29062)
|
||||
if ((npc.getNpcId() == 29062) && (((int) (npc.getStatus().getCurrentHp() / npc.getMaxHp()) * 100) <= 20))
|
||||
{
|
||||
if (((int) (npc.getStatus().getCurrentHp() / npc.getMaxHp()) * 100) <= 20)
|
||||
{
|
||||
callRoyalGuardHelper();
|
||||
}
|
||||
callRoyalGuardHelper();
|
||||
}
|
||||
return super.onAttack(npc, attacker, damage, isPet);
|
||||
}
|
||||
@@ -853,18 +850,6 @@ public class VanHalter extends Quest
|
||||
_cameraMarker.clear();
|
||||
}
|
||||
|
||||
// Door control.
|
||||
/**
|
||||
* @param intruder
|
||||
*/
|
||||
public void intruderDetection(PlayerInstance intruder)
|
||||
{
|
||||
if ((_lockUpDoorOfAltarTask == null) && !_isLocked && _isCaptainSpawned)
|
||||
{
|
||||
_lockUpDoorOfAltarTask = ThreadPool.schedule(new LockUpDoorOfAltar(), Config.HPH_TIMEOFLOCKUPDOOROFALTAR);
|
||||
}
|
||||
}
|
||||
|
||||
protected class LockUpDoorOfAltar implements Runnable
|
||||
{
|
||||
@Override
|
||||
@@ -1042,16 +1027,16 @@ public class VanHalter extends Quest
|
||||
}
|
||||
_timeUpTask = ThreadPool.schedule(new TimeUp(), Config.HPH_FIGHTTIMEOFHALTER);
|
||||
|
||||
final Map<Integer, PlayerInstance> _targets = new HashMap<>();
|
||||
final Map<Integer, PlayerInstance> targets = new HashMap<>();
|
||||
int i = 0;
|
||||
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
i++;
|
||||
_targets.put(i, pc);
|
||||
targets.put(i, pc);
|
||||
}
|
||||
|
||||
_vanHalter.reduceCurrentHp(1, _targets.get(Rnd.get(1, i)));
|
||||
_vanHalter.reduceCurrentHp(1, targets.get(Rnd.get(1, i)));
|
||||
}
|
||||
|
||||
// Call Royal Guard Helper and escape from player.
|
||||
@@ -1414,7 +1399,8 @@ public class VanHalter extends Quest
|
||||
// Appearance movie.
|
||||
private class Movie implements Runnable
|
||||
{
|
||||
private final int _distance = 6502500;
|
||||
private static final int DISTANCE = 6502500;
|
||||
|
||||
private final int _taskId;
|
||||
|
||||
public Movie(int taskId)
|
||||
@@ -1436,7 +1422,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= DISTANCE)
|
||||
{
|
||||
_vanHalter.broadcastPacket(new SpecialCamera(_vanHalter.getObjectId(), 50, 90, 0, 0, 15000));
|
||||
}
|
||||
@@ -1455,7 +1441,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(5)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(5)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(5).broadcastPacket(new SpecialCamera(_cameraMarker.get(5).getObjectId(), 1842, 100, -3, 0, 15000));
|
||||
}
|
||||
@@ -1474,7 +1460,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(5)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(5)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(5).broadcastPacket(new SpecialCamera(_cameraMarker.get(5).getObjectId(), 1861, 97, -10, 1500, 15000));
|
||||
}
|
||||
@@ -1493,7 +1479,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(4)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(4)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(4).broadcastPacket(new SpecialCamera(_cameraMarker.get(4).getObjectId(), 1876, 97, 12, 0, 15000));
|
||||
}
|
||||
@@ -1512,7 +1498,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(4)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(4)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(4).broadcastPacket(new SpecialCamera(_cameraMarker.get(4).getObjectId(), 1839, 94, 0, 1500, 15000));
|
||||
}
|
||||
@@ -1531,7 +1517,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(3)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(3)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(3).broadcastPacket(new SpecialCamera(_cameraMarker.get(3).getObjectId(), 1872, 94, 15, 0, 15000));
|
||||
}
|
||||
@@ -1550,7 +1536,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(3)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(3)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(3).broadcastPacket(new SpecialCamera(_cameraMarker.get(3).getObjectId(), 1839, 92, 0, 1500, 15000));
|
||||
}
|
||||
@@ -1569,7 +1555,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(2)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(2)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(2).broadcastPacket(new SpecialCamera(_cameraMarker.get(2).getObjectId(), 1872, 92, 15, 0, 15000));
|
||||
}
|
||||
@@ -1588,7 +1574,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(2)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(2)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(2).broadcastPacket(new SpecialCamera(_cameraMarker.get(2).getObjectId(), 1839, 90, 5, 1500, 15000));
|
||||
}
|
||||
@@ -1607,7 +1593,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(1)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(1)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(1).broadcastPacket(new SpecialCamera(_cameraMarker.get(1).getObjectId(), 1872, 90, 5, 0, 15000));
|
||||
}
|
||||
@@ -1626,7 +1612,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(1)) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_cameraMarker.get(1)) <= DISTANCE)
|
||||
{
|
||||
_cameraMarker.get(1).broadcastPacket(new SpecialCamera(_cameraMarker.get(1).getObjectId(), 2002, 90, 2, 1500, 15000));
|
||||
}
|
||||
@@ -1645,7 +1631,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= DISTANCE)
|
||||
{
|
||||
_vanHalter.broadcastPacket(new SpecialCamera(_vanHalter.getObjectId(), 50, 90, 10, 0, 15000));
|
||||
}
|
||||
@@ -1697,7 +1683,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= DISTANCE)
|
||||
{
|
||||
_vanHalter.broadcastPacket(new SpecialCamera(_vanHalter.getObjectId(), 100, 90, 15, 1500, 15000));
|
||||
}
|
||||
@@ -1716,7 +1702,7 @@ public class VanHalter extends Quest
|
||||
// Set camera.
|
||||
for (PlayerInstance pc : _vanHalter.getKnownList().getKnownPlayers().values())
|
||||
{
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= _distance)
|
||||
if (pc.getPlanDistanceSq(_vanHalter) <= DISTANCE)
|
||||
{
|
||||
_vanHalter.broadcastPacket(new SpecialCamera(_vanHalter.getObjectId(), 5200, 90, -10, 9500, 6000));
|
||||
}
|
||||
|
@@ -45,26 +45,12 @@ public class Zaken extends Quest
|
||||
{
|
||||
protected static final Logger LOGGER = Logger.getLogger(Zaken.class.getName());
|
||||
|
||||
private int _1001 = 0; // used for first cancel of QuestTimer "1001"
|
||||
private int _ai0 = 0; // used for zaken coords updater
|
||||
private int _ai1 = 0; // used for X coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai2 = 0; // used for Y coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai3 = 0; // used for Z coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai4 = 0; // used for spawning minions cycles
|
||||
private int _quest0 = 0; // used for teleporting progress
|
||||
private int _quest1 = 0; // used for most hated players progress
|
||||
private int _quest2 = 0; // used for zaken HP check for teleport
|
||||
private PlayerInstance c_quest0 = null; // 1st player used for area teleport
|
||||
private PlayerInstance c_quest1 = null; // 2nd player used for area teleport
|
||||
private PlayerInstance c_quest2 = null; // 3rd player used for area teleport
|
||||
private PlayerInstance c_quest3 = null; // 4th player used for area teleport
|
||||
private PlayerInstance c_quest4 = null; // 5th player used for area teleport
|
||||
private static final int ZAKEN = 29022;
|
||||
private static final int doll_blader_b = 29023;
|
||||
private static final int vale_master_b = 29024;
|
||||
private static final int pirates_zombie_captain_b = 29026;
|
||||
private static final int pirates_zombie_b = 29027;
|
||||
private static final int[] Xcoords =
|
||||
private static final int DOLL_BLADER_B = 29023;
|
||||
private static final int VALE_MASTER_B = 29024;
|
||||
private static final int PIRATES_ZOMBIE_CAPTAIN_B = 29026;
|
||||
private static final int PIRATES_ZOMBIE_B = 29027;
|
||||
private static final int[] X_COORDS =
|
||||
{
|
||||
53950,
|
||||
55980,
|
||||
@@ -82,7 +68,7 @@ public class Zaken extends Quest
|
||||
53950,
|
||||
53930
|
||||
};
|
||||
private static final int[] Ycoords =
|
||||
private static final int[] Y_COORDS =
|
||||
{
|
||||
219860,
|
||||
219820,
|
||||
@@ -100,7 +86,7 @@ public class Zaken extends Quest
|
||||
219860,
|
||||
217760
|
||||
};
|
||||
private static final int[] Zcoords =
|
||||
private static final int[] Z_COORDS =
|
||||
{
|
||||
-3488,
|
||||
-3488,
|
||||
@@ -118,12 +104,25 @@ public class Zaken extends Quest
|
||||
-2944,
|
||||
-2944
|
||||
};
|
||||
|
||||
// ZAKEN Status Tracking :
|
||||
// Zaken status tracking
|
||||
private static final byte ALIVE = 0; // Zaken is spawned.
|
||||
private static final byte DEAD = 1; // Zaken has been killed.
|
||||
|
||||
// Misc
|
||||
private static BossZone _Zone;
|
||||
private int _1001 = 0; // used for first cancel of QuestTimer "1001"
|
||||
private int _ai0 = 0; // used for zaken coords updater
|
||||
private int _ai1 = 0; // used for X coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai2 = 0; // used for Y coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai3 = 0; // used for Z coord tracking for non-random teleporting in zaken's self teleport skill
|
||||
private int _ai4 = 0; // used for spawning minions cycles
|
||||
private int _quest0 = 0; // used for teleporting progress
|
||||
private int _quest1 = 0; // used for most hated players progress
|
||||
private int _quest2 = 0; // used for zaken HP check for teleport
|
||||
private PlayerInstance c_quest0 = null; // 1st player used for area teleport
|
||||
private PlayerInstance c_quest1 = null; // 2nd player used for area teleport
|
||||
private PlayerInstance c_quest2 = null; // 3rd player used for area teleport
|
||||
private PlayerInstance c_quest3 = null; // 4th player used for area teleport
|
||||
private PlayerInstance c_quest4 = null; // 5th player used for area teleport
|
||||
|
||||
public Zaken()
|
||||
{
|
||||
@@ -245,8 +244,8 @@ public class Zaken extends Quest
|
||||
_1001 = 0;
|
||||
cancelQuestTimer("1001", npc, null);
|
||||
}
|
||||
int sk_4223 = 0;
|
||||
int sk_4227 = 0;
|
||||
int sk4223 = 0;
|
||||
int sk4227 = 0;
|
||||
final Effect[] effects = npc.getAllEffects();
|
||||
if ((effects != null) && (effects.length != 0))
|
||||
{
|
||||
@@ -254,17 +253,17 @@ public class Zaken extends Quest
|
||||
{
|
||||
if (e.getSkill().getId() == 4227)
|
||||
{
|
||||
sk_4227 = 1;
|
||||
sk4227 = 1;
|
||||
}
|
||||
if (e.getSkill().getId() == 4223)
|
||||
{
|
||||
sk_4223 = 1;
|
||||
sk4223 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (getTimeHour() < 5)
|
||||
{
|
||||
if (sk_4223 == 1) // use night face if zaken have day face
|
||||
if (sk4223 == 1) // use night face if zaken have day face
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4224, 1));
|
||||
@@ -272,7 +271,7 @@ public class Zaken extends Quest
|
||||
_ai2 = npc.getY();
|
||||
_ai3 = npc.getZ();
|
||||
}
|
||||
if (sk_4227 == 0) // use zaken regeneration
|
||||
if (sk4227 == 0) // use zaken regeneration
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4227, 1));
|
||||
@@ -394,9 +393,9 @@ public class Zaken extends Quest
|
||||
{
|
||||
_quest0 = 0;
|
||||
final int i2 = Rnd.get(15);
|
||||
_ai1 = Xcoords[i2] + Rnd.get(650);
|
||||
_ai2 = Ycoords[i2] + Rnd.get(650);
|
||||
_ai3 = Zcoords[i2];
|
||||
_ai1 = X_COORDS[i2] + Rnd.get(650);
|
||||
_ai2 = Y_COORDS[i2] + Rnd.get(650);
|
||||
_ai3 = Z_COORDS[i2];
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4222, 1));
|
||||
}
|
||||
@@ -408,28 +407,25 @@ public class Zaken extends Quest
|
||||
_ai2 = npc.getY();
|
||||
_ai3 = npc.getZ();
|
||||
}
|
||||
Creature c_ai0 = null;
|
||||
Creature cAi0 = null;
|
||||
if ((npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK) && (_quest1 == 0))
|
||||
{
|
||||
if (((Attackable) npc).getMostHated() != null)
|
||||
{
|
||||
c_ai0 = ((Attackable) npc).getMostHated();
|
||||
cAi0 = ((Attackable) npc).getMostHated();
|
||||
_quest1 = 1;
|
||||
}
|
||||
}
|
||||
else if ((npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK) && (_quest1 != 0))
|
||||
else if ((npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_ATTACK) && (_quest1 != 0) && (((Attackable) npc).getMostHated() != null))
|
||||
{
|
||||
if (((Attackable) npc).getMostHated() != null)
|
||||
if (cAi0 == ((Attackable) npc).getMostHated())
|
||||
{
|
||||
if (c_ai0 == ((Attackable) npc).getMostHated())
|
||||
{
|
||||
_quest1 = (_quest1 + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
_quest1 = 1;
|
||||
c_ai0 = ((Attackable) npc).getMostHated();
|
||||
}
|
||||
_quest1 = (_quest1 + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
_quest1 = 1;
|
||||
cAi0 = ((Attackable) npc).getMostHated();
|
||||
}
|
||||
}
|
||||
if (npc.getAI().getIntention() == CtrlIntention.AI_INTENTION_IDLE)
|
||||
@@ -438,7 +434,7 @@ public class Zaken extends Quest
|
||||
}
|
||||
if (_quest1 > 5)
|
||||
{
|
||||
((Attackable) npc).stopHating(c_ai0);
|
||||
((Attackable) npc).stopHating(cAi0);
|
||||
final Creature nextTarget = ((Attackable) npc).getMostHated();
|
||||
if (nextTarget != null)
|
||||
{
|
||||
@@ -447,13 +443,13 @@ public class Zaken extends Quest
|
||||
_quest1 = 0;
|
||||
}
|
||||
}
|
||||
else if (sk_4223 == 0) // use day face if not night time
|
||||
else if (sk4223 == 0) // use day face if not night time
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4223, 1));
|
||||
_quest2 = 3;
|
||||
}
|
||||
if (sk_4227 == 1) // when switching to day time, cancel zaken night regen
|
||||
if (sk4227 == 1) // when switching to day time, cancel zaken night regen
|
||||
{
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4242, 1));
|
||||
@@ -461,9 +457,9 @@ public class Zaken extends Quest
|
||||
if (Rnd.get(40) < 1)
|
||||
{
|
||||
final int i2 = Rnd.get(15);
|
||||
_ai1 = Xcoords[i2] + Rnd.get(650);
|
||||
_ai2 = Ycoords[i2] + Rnd.get(650);
|
||||
_ai3 = Zcoords[i2];
|
||||
_ai1 = X_COORDS[i2] + Rnd.get(650);
|
||||
_ai2 = Y_COORDS[i2] + Rnd.get(650);
|
||||
_ai3 = Z_COORDS[i2];
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4222, 1));
|
||||
}
|
||||
@@ -480,125 +476,125 @@ public class Zaken extends Quest
|
||||
if (_ai4 == 1)
|
||||
{
|
||||
final int rr = Rnd.get(15);
|
||||
addSpawn(pirates_zombie_captain_b, Xcoords[rr] + Rnd.get(650), Ycoords[rr] + Rnd.get(650), Zcoords[rr], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, X_COORDS[rr] + Rnd.get(650), Y_COORDS[rr] + Rnd.get(650), Z_COORDS[rr], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 2;
|
||||
}
|
||||
else if (_ai4 == 2)
|
||||
{
|
||||
final int rr = Rnd.get(15);
|
||||
addSpawn(doll_blader_b, Xcoords[rr] + Rnd.get(650), Ycoords[rr] + Rnd.get(650), Zcoords[rr], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, X_COORDS[rr] + Rnd.get(650), Y_COORDS[rr] + Rnd.get(650), Z_COORDS[rr], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 3;
|
||||
}
|
||||
else if (_ai4 == 3)
|
||||
{
|
||||
addSpawn(vale_master_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 4;
|
||||
}
|
||||
else if (_ai4 == 4)
|
||||
{
|
||||
addSpawn(pirates_zombie_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, Xcoords[Rnd.get(15)] + Rnd.get(650), Ycoords[Rnd.get(15)] + Rnd.get(650), Zcoords[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, X_COORDS[Rnd.get(15)] + Rnd.get(650), Y_COORDS[Rnd.get(15)] + Rnd.get(650), Z_COORDS[Rnd.get(15)], Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 5;
|
||||
}
|
||||
else if (_ai4 == 5)
|
||||
{
|
||||
addSpawn(doll_blader_b, 52675, 219371, -3290, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 52687, 219596, -3368, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 52672, 219740, -3418, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 52857, 219992, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 52959, 219997, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 53381, 220151, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54236, 220948, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54885, 220144, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55264, 219860, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55399, 220263, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55679, 220129, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 56276, 220783, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 57173, 220234, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 56267, 218826, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56294, 219482, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 56094, 219113, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56364, 218967, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 57113, 218079, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56186, 217153, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55440, 218081, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55202, 217940, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55225, 218236, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54973, 218075, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 53412, 218077, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54226, 218797, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54394, 219067, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54139, 219253, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 54262, 219480, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 52675, 219371, -3290, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 52687, 219596, -3368, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 52672, 219740, -3418, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 52857, 219992, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 52959, 219997, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 53381, 220151, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54236, 220948, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54885, 220144, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55264, 219860, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55399, 220263, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55679, 220129, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 56276, 220783, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 57173, 220234, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 56267, 218826, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56294, 219482, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 56094, 219113, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56364, 218967, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 57113, 218079, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56186, 217153, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55440, 218081, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55202, 217940, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55225, 218236, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54973, 218075, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 53412, 218077, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54226, 218797, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54394, 219067, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54139, 219253, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 54262, 219480, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 6;
|
||||
}
|
||||
else if (_ai4 == 6)
|
||||
{
|
||||
addSpawn(pirates_zombie_b, 53412, 218077, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54413, 217132, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 54841, 217132, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 55372, 217128, -3343, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 55893, 217122, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 56282, 217237, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 56963, 218080, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 56267, 218826, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56294, 219482, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 56094, 219113, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56364, 218967, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 56276, 220783, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 57173, 220234, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54885, 220144, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55264, 219860, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55399, 220263, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55679, 220129, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54236, 220948, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54464, 219095, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54226, 218797, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54394, 219067, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54139, 219253, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 54262, 219480, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 53412, 218077, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55440, 218081, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55202, 217940, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55225, 218236, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54973, 218075, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 53412, 218077, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54413, 217132, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 54841, 217132, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 55372, 217128, -3343, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 55893, 217122, -3488, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 56282, 217237, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 56963, 218080, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 56267, 218826, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56294, 219482, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 56094, 219113, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56364, 218967, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 56276, 220783, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 57173, 220234, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54885, 220144, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55264, 219860, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55399, 220263, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55679, 220129, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54236, 220948, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54464, 219095, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54226, 218797, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54394, 219067, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54139, 219253, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 54262, 219480, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 53412, 218077, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55440, 218081, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55202, 217940, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55225, 218236, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54973, 218075, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 7;
|
||||
}
|
||||
else if (_ai4 == 7)
|
||||
{
|
||||
addSpawn(pirates_zombie_b, 54228, 217504, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54181, 217168, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 54714, 217123, -3168, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 55298, 217127, -3073, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 55787, 217130, -2993, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 56284, 217216, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 56963, 218080, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 56267, 218826, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56294, 219482, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 56094, 219113, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 56364, 218967, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 56276, 220783, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 57173, 220234, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54885, 220144, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55264, 219860, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55399, 220263, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55679, 220129, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54236, 220948, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54464, 219095, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54226, 218797, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(vale_master_b, 54394, 219067, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54139, 219253, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(doll_blader_b, 54262, 219480, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 53412, 218077, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 54280, 217200, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55440, 218081, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_captain_b, 55202, 217940, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 55225, 218236, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(pirates_zombie_b, 54973, 218075, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54228, 217504, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54181, 217168, -3216, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 54714, 217123, -3168, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 55298, 217127, -3073, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 55787, 217130, -2993, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 56284, 217216, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 56963, 218080, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 56267, 218826, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56294, 219482, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 56094, 219113, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 56364, 218967, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 56276, 220783, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 57173, 220234, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54885, 220144, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55264, 219860, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55399, 220263, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55679, 220129, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54236, 220948, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54464, 219095, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54226, 218797, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(VALE_MASTER_B, 54394, 219067, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54139, 219253, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(DOLL_BLADER_B, 54262, 219480, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 53412, 218077, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 54280, 217200, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55440, 218081, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_CAPTAIN_B, 55202, 217940, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 55225, 218236, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
addSpawn(PIRATES_ZOMBIE_B, 54973, 218075, -2944, Rnd.get(65536), false, 0)/* .setIsRaidMinion(true) */;
|
||||
_ai4 = 8;
|
||||
cancelQuestTimer("1003", null, null);
|
||||
}
|
||||
@@ -655,7 +651,7 @@ public class Zaken extends Quest
|
||||
else if (skillId == 4216)
|
||||
{
|
||||
final int i1 = Rnd.get(15);
|
||||
player.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
player.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(player);
|
||||
final Creature nextTarget = ((Attackable) npc).getMostHated();
|
||||
if (nextTarget != null)
|
||||
@@ -667,7 +663,7 @@ public class Zaken extends Quest
|
||||
{
|
||||
int i0 = 0;
|
||||
int i1 = Rnd.get(15);
|
||||
player.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
player.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(player);
|
||||
|
||||
if ((c_quest0 != null) && (_quest0 > 0) && (c_quest0 != player) && (c_quest0.getZ() > (player.getZ() - 100)) && (c_quest0.getZ() < (player.getZ() + 100)))
|
||||
@@ -683,7 +679,7 @@ public class Zaken extends Quest
|
||||
if (i0 == 0)
|
||||
{
|
||||
i1 = Rnd.get(15);
|
||||
c_quest0.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
c_quest0.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(c_quest0);
|
||||
}
|
||||
}
|
||||
@@ -700,7 +696,7 @@ public class Zaken extends Quest
|
||||
if (i0 == 0)
|
||||
{
|
||||
i1 = Rnd.get(15);
|
||||
c_quest1.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
c_quest1.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(c_quest1);
|
||||
}
|
||||
}
|
||||
@@ -717,7 +713,7 @@ public class Zaken extends Quest
|
||||
if (i0 == 0)
|
||||
{
|
||||
i1 = Rnd.get(15);
|
||||
c_quest2.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
c_quest2.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(c_quest2);
|
||||
}
|
||||
}
|
||||
@@ -734,7 +730,7 @@ public class Zaken extends Quest
|
||||
if (i0 == 0)
|
||||
{
|
||||
i1 = Rnd.get(15);
|
||||
c_quest3.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
c_quest3.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(c_quest3);
|
||||
}
|
||||
}
|
||||
@@ -751,7 +747,7 @@ public class Zaken extends Quest
|
||||
if (i0 == 0)
|
||||
{
|
||||
i1 = Rnd.get(15);
|
||||
c_quest4.teleToLocation(Xcoords[i1] + Rnd.get(650), Ycoords[i1] + Rnd.get(650), Zcoords[i1]);
|
||||
c_quest4.teleToLocation(X_COORDS[i1] + Rnd.get(650), Y_COORDS[i1] + Rnd.get(650), Z_COORDS[i1]);
|
||||
((Attackable) npc).stopHating(c_quest4);
|
||||
}
|
||||
}
|
||||
@@ -773,7 +769,7 @@ public class Zaken extends Quest
|
||||
{
|
||||
if (attacker.getMountType() == 1)
|
||||
{
|
||||
int sk_4258 = 0;
|
||||
int sk4258 = 0;
|
||||
final Effect[] effects = attacker.getAllEffects();
|
||||
if ((effects != null) && (effects.length != 0))
|
||||
{
|
||||
@@ -781,11 +777,11 @@ public class Zaken extends Quest
|
||||
{
|
||||
if (e.getSkill().getId() == 4258)
|
||||
{
|
||||
sk_4258 = 1;
|
||||
sk4258 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (sk_4258 == 0)
|
||||
if (sk4258 == 0)
|
||||
{
|
||||
npc.setTarget(attacker);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4258, 1));
|
||||
@@ -832,25 +828,19 @@ public class Zaken extends Quest
|
||||
}
|
||||
}
|
||||
}
|
||||
if (Rnd.nextBoolean())
|
||||
if (Rnd.nextBoolean() && (attacker == ((Attackable) npc).getMostHated()))
|
||||
{
|
||||
if (attacker == ((Attackable) npc).getMostHated())
|
||||
{
|
||||
npc.setTarget(attacker);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4220, 1));
|
||||
}
|
||||
npc.setTarget(attacker);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4220, 1));
|
||||
}
|
||||
}
|
||||
if (getTimeHour() < 5)
|
||||
{
|
||||
}
|
||||
else if (npc.getCurrentHp() < ((npc.getMaxHp() * _quest2) / 4.0))
|
||||
if ((getTimeHour() >= 5) && (npc.getCurrentHp() < ((npc.getMaxHp() * _quest2) / 4.0)))
|
||||
{
|
||||
_quest2 = (_quest2 - 1);
|
||||
final int i2 = Rnd.get(15);
|
||||
_ai1 = Xcoords[i2] + Rnd.get(650);
|
||||
_ai2 = Ycoords[i2] + Rnd.get(650);
|
||||
_ai3 = Zcoords[i2];
|
||||
_ai1 = X_COORDS[i2] + Rnd.get(650);
|
||||
_ai2 = Y_COORDS[i2] + Rnd.get(650);
|
||||
_ai3 = Z_COORDS[i2];
|
||||
npc.setTarget(npc);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4222, 1));
|
||||
}
|
||||
@@ -885,10 +875,7 @@ public class Zaken extends Quest
|
||||
}
|
||||
else if (status == ALIVE)
|
||||
{
|
||||
if (npcId != ZAKEN)
|
||||
{
|
||||
startQuestTimer("CreateOnePrivateEx", ((30 + Rnd.get(60)) * 1000), npc, null);
|
||||
}
|
||||
startQuestTimer("CreateOnePrivateEx", ((30 + Rnd.get(60)) * 1000), npc, null);
|
||||
}
|
||||
return super.onKill(npc, killer, isPet);
|
||||
}
|
||||
@@ -976,13 +963,10 @@ public class Zaken extends Quest
|
||||
}
|
||||
}
|
||||
}
|
||||
if (Rnd.nextBoolean())
|
||||
if (Rnd.nextBoolean() && (player == ((Attackable) npc).getMostHated()))
|
||||
{
|
||||
if (player == ((Attackable) npc).getMostHated())
|
||||
{
|
||||
npc.setTarget(player);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4220, 1));
|
||||
}
|
||||
npc.setTarget(player);
|
||||
npc.doCast(SkillTable.getInstance().getInfo(4220, 1));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -26,16 +26,16 @@ import org.l2jmobius.commons.util.Rnd;
|
||||
*/
|
||||
public class Bingo
|
||||
{
|
||||
protected static final String template = "%msg%<br><br>%choices%<br><br>%board%";
|
||||
protected static final String template_final = "%msg%<br><br>%board%";
|
||||
protected static final String template_board = "For your information, below is your current selection.<br><table border=\"1\" border color=\"white\" width=100><tr><td align=\"center\">%cell1%</td><td align=\"center\">%cell2%</td><td align=\"center\">%cell3%</td></tr><tr><td align=\"center\">%cell4%</td><td align=\"center\">%cell5%</td><td align=\"center\">%cell6%</td></tr><tr><td align=\"center\">%cell7%</td><td align=\"center\">%cell8%</td><td align=\"center\">%cell9%</td></tr></table>";
|
||||
protected static final String msg_again = "You have already selected that number. Choose your %choicenum% number again.";
|
||||
protected static final String msg_begin = "I've arranged 9 numbers on the panel.<br>Now, select your %choicenum% number.";
|
||||
protected static final String msg_next = "Now, choose your %choicenum% number.";
|
||||
protected static final String msg_0lines = "You are spectacularly unlucky! The red-colored numbers on the panel below are the ones you chose. As you can see, they didn't create even a single line. Did you know that it is harder not to create a single line than creating all 3 lines?";
|
||||
protected static final String msg_3lines = "You've created 3 lines! The red colored numbers on the bingo panel below are the numbers you chose. Congratulations!";
|
||||
protected static final String msg_lose = "Hmm... You didn't make 3 lines. Why don't you try again? The red-colored numbers on the panel are the ones you chose.";
|
||||
protected static final String[] nums =
|
||||
protected static final String TEMPLATE = "%msg%<br><br>%choices%<br><br>%board%";
|
||||
protected static final String TEMPLATE_FINAL = "%msg%<br><br>%board%";
|
||||
protected static final String TEMPLATE_BOARD = "For your information, below is your current selection.<br><table border=\"1\" border color=\"white\" width=100><tr><td align=\"center\">%cell1%</td><td align=\"center\">%cell2%</td><td align=\"center\">%cell3%</td></tr><tr><td align=\"center\">%cell4%</td><td align=\"center\">%cell5%</td><td align=\"center\">%cell6%</td></tr><tr><td align=\"center\">%cell7%</td><td align=\"center\">%cell8%</td><td align=\"center\">%cell9%</td></tr></table>";
|
||||
protected static final String MSG_AGAIN = "You have already selected that number. Choose your %choicenum% number again.";
|
||||
protected static final String MSG_BEGIN = "I've arranged 9 numbers on the panel.<br>Now, select your %choicenum% number.";
|
||||
protected static final String MSG_NEXT = "Now, choose your %choicenum% number.";
|
||||
protected static final String MSG_ZERO_LINES = "You are spectacularly unlucky! The red-colored numbers on the panel below are the ones you chose. As you can see, they didn't create even a single line. Did you know that it is harder not to create a single line than creating all 3 lines?";
|
||||
protected static final String MSG_THREE_LINES = "You've created 3 lines! The red colored numbers on the bingo panel below are the numbers you chose. Congratulations!";
|
||||
protected static final String MSG_LOSE = "Hmm... You didn't make 3 lines. Why don't you try again? The red-colored numbers on the panel are the ones you chose.";
|
||||
protected static final String[] NUMBERS =
|
||||
{
|
||||
"first",
|
||||
"second",
|
||||
@@ -50,11 +50,11 @@ public class Bingo
|
||||
private final List<Integer> guesses;
|
||||
protected int lines;
|
||||
|
||||
public Bingo(String template_choice)
|
||||
public Bingo(String templateChoice)
|
||||
{
|
||||
board = new ArrayList<>();
|
||||
guesses = new ArrayList<>();
|
||||
_template_choice = template_choice;
|
||||
_template_choice = templateChoice;
|
||||
while (board.size() < 9)
|
||||
{
|
||||
final int num = Rnd.get(1, 9);
|
||||
@@ -69,7 +69,7 @@ public class Bingo
|
||||
{
|
||||
try
|
||||
{
|
||||
return Select(Integer.valueOf(s));
|
||||
return Select(Integer.parseInt(s));
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
@@ -97,18 +97,18 @@ public class Bingo
|
||||
|
||||
protected String getBoard()
|
||||
{
|
||||
if (guesses.size() == 0)
|
||||
if (guesses.isEmpty())
|
||||
{
|
||||
return "";
|
||||
}
|
||||
String result = "For your information, below is your current selection.<br><table border=\"1\" border color=\"white\" width=100><tr><td align=\"center\">%cell1%</td><td align=\"center\">%cell2%</td><td align=\"center\">%cell3%</td></tr><tr><td align=\"center\">%cell4%</td><td align=\"center\">%cell5%</td><td align=\"center\">%cell6%</td></tr><tr><td align=\"center\">%cell7%</td><td align=\"center\">%cell8%</td><td align=\"center\">%cell9%</td></tr></table>";
|
||||
for (int i = 1; i <= 9; ++i)
|
||||
{
|
||||
final String cell = "%cell" + String.valueOf(i) + "%";
|
||||
final String cell = "%cell" + i + "%";
|
||||
final int num = board.get(i - 1);
|
||||
if (guesses.contains(num))
|
||||
{
|
||||
result = result.replaceFirst(cell, "<font color=\"" + ((guesses.size() == 6) ? "ff0000" : "ffff00") + "\">" + String.valueOf(num) + "</font>");
|
||||
result = result.replaceFirst(cell, "<font color=\"" + ((guesses.size() == 6) ? "ff0000" : "ffff00") + "\">" + num + "</font>");
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -121,7 +121,7 @@ public class Bingo
|
||||
public String getDialog(String msg)
|
||||
{
|
||||
String result = "%msg%<br><br>%choices%<br><br>%board%";
|
||||
if (guesses.size() == 0)
|
||||
if (guesses.isEmpty())
|
||||
{
|
||||
result = result.replaceFirst("%msg%", "I've arranged 9 numbers on the panel.<br>Now, select your %choicenum% number.");
|
||||
}
|
||||
@@ -129,13 +129,13 @@ public class Bingo
|
||||
{
|
||||
result = result.replaceFirst("%msg%", "".equalsIgnoreCase(msg) ? "Now, choose your %choicenum% number." : msg);
|
||||
}
|
||||
result = result.replaceFirst("%choicenum%", Bingo.nums[guesses.size()]);
|
||||
result = result.replaceFirst("%choicenum%", Bingo.NUMBERS[guesses.size()]);
|
||||
final StringBuilder choices = new StringBuilder();
|
||||
for (int i = 1; i <= 9; ++i)
|
||||
{
|
||||
if (!guesses.contains(i))
|
||||
{
|
||||
choices.append(_template_choice.replaceAll("%n%", String.valueOf(i)));
|
||||
choices.append(_template_choice.replace("%n%", String.valueOf(i)));
|
||||
}
|
||||
}
|
||||
result = result.replaceFirst("%choices%", choices.toString());
|
||||
|
@@ -130,9 +130,9 @@ public class FeedableBeasts extends Quest
|
||||
_chance = chance;
|
||||
}
|
||||
|
||||
public void addMobs(int spice, int[][] Mobs)
|
||||
public void addMobs(int spice, int[][] mobs)
|
||||
{
|
||||
_spiceToMob.put(spice, Mobs);
|
||||
_spiceToMob.put(spice, mobs);
|
||||
}
|
||||
|
||||
public Integer getMob(int spice, int mobType, int classType)
|
||||
@@ -442,29 +442,26 @@ public class FeedableBeasts extends Quest
|
||||
@Override
|
||||
public String onAdvEvent(String event, NpcInstance npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equalsIgnoreCase("polymorph Mad Cow") && (npc != null) && (player != null))
|
||||
if (event.equalsIgnoreCase("polymorph Mad Cow") && (npc != null) && (player != null) && MAD_COW_POLYMORPH.containsKey(npc.getNpcId()))
|
||||
{
|
||||
if (MAD_COW_POLYMORPH.containsKey(npc.getNpcId()))
|
||||
// remove the feed info from the previous mob
|
||||
if (FEED_INFO.getOrDefault(npc.getObjectId(), 0) == player.getObjectId())
|
||||
{
|
||||
// remove the feed info from the previous mob
|
||||
if (FEED_INFO.getOrDefault(npc.getObjectId(), 0) == player.getObjectId())
|
||||
{
|
||||
FEED_INFO.remove(npc.getObjectId());
|
||||
}
|
||||
|
||||
// despawn the mad cow
|
||||
npc.deleteMe();
|
||||
|
||||
// spawn the new mob
|
||||
Attackable nextNpc = (Attackable) addSpawn(MAD_COW_POLYMORPH.get(npc.getNpcId()), npc);
|
||||
|
||||
// register the player in the feedinfo for the mob that just spawned
|
||||
FEED_INFO.put(nextNpc.getObjectId(), player.getObjectId());
|
||||
|
||||
nextNpc.setRunning();
|
||||
nextNpc.addDamageHate(player, 0, 99999);
|
||||
nextNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
FEED_INFO.remove(npc.getObjectId());
|
||||
}
|
||||
|
||||
// despawn the mad cow
|
||||
npc.deleteMe();
|
||||
|
||||
// spawn the new mob
|
||||
Attackable nextNpc = (Attackable) addSpawn(MAD_COW_POLYMORPH.get(npc.getNpcId()), npc);
|
||||
|
||||
// register the player in the feedinfo for the mob that just spawned
|
||||
FEED_INFO.put(nextNpc.getObjectId(), player.getObjectId());
|
||||
|
||||
nextNpc.setRunning();
|
||||
nextNpc.addDamageHate(player, 0, 99999);
|
||||
nextNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
}
|
||||
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
@@ -506,7 +503,7 @@ public class FeedableBeasts extends Quest
|
||||
{
|
||||
food = GOLDEN_SPICE;
|
||||
}
|
||||
else if (skillId == SKILL_CRYSTAL_SPICE)
|
||||
else // if (skillId == SKILL_CRYSTAL_SPICE)
|
||||
{
|
||||
food = CRYSTAL_SPICE;
|
||||
}
|
||||
|
@@ -39,7 +39,7 @@ import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
public class Monastery extends Quest
|
||||
{
|
||||
static final int[] mobs1 =
|
||||
private static final int[] MOBS_1 =
|
||||
{
|
||||
22124,
|
||||
22125,
|
||||
@@ -47,13 +47,12 @@ public class Monastery extends Quest
|
||||
22127,
|
||||
22129
|
||||
};
|
||||
static final int[] mobs2 =
|
||||
private static final int[] MOBS_2 =
|
||||
{
|
||||
22134,
|
||||
22135
|
||||
};
|
||||
// TODO: npcstring
|
||||
static final String[] text =
|
||||
private static final String[] TEXT =
|
||||
{
|
||||
"You cannot carry a weapon without authorization!",
|
||||
"name, why would you choose the path of darkness?!",
|
||||
@@ -63,19 +62,19 @@ public class Monastery extends Quest
|
||||
public Monastery()
|
||||
{
|
||||
super(-1, "ai");
|
||||
registerMobs(mobs1, QuestEventType.ON_AGGRO_RANGE_ENTER, QuestEventType.ON_SPAWN, QuestEventType.ON_SPELL_FINISHED);
|
||||
registerMobs(mobs2, QuestEventType.ON_SPELL_FINISHED);
|
||||
registerMobs(MOBS_1, QuestEventType.ON_AGGRO_RANGE_ENTER, QuestEventType.ON_SPAWN, QuestEventType.ON_SPELL_FINISHED);
|
||||
registerMobs(MOBS_2, QuestEventType.ON_SPELL_FINISHED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAggroRangeEnter(NpcInstance npc, PlayerInstance player, boolean isPet)
|
||||
{
|
||||
if (Util.contains(mobs1, npc.getNpcId()) && !npc.isInCombat() && (npc.getTarget() == null))
|
||||
if (Util.contains(MOBS_1, npc.getNpcId()) && !npc.isInCombat() && (npc.getTarget() == null))
|
||||
{
|
||||
if ((player.getActiveWeaponInstance() != null) && !player.isSilentMoving())
|
||||
{
|
||||
npc.setTarget(player);
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), text[0]));
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), TEXT[0]));
|
||||
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
@@ -106,21 +105,18 @@ public class Monastery extends Quest
|
||||
@Override
|
||||
public String onSpawn(NpcInstance npc)
|
||||
{
|
||||
if (Util.contains(mobs1, npc.getNpcId()))
|
||||
if (Util.contains(MOBS_1, npc.getNpcId()))
|
||||
{
|
||||
final List<Playable> result = new ArrayList<>();
|
||||
final Collection<WorldObject> objs = npc.getKnownList().getKnownObjects().values();
|
||||
for (WorldObject obj : objs)
|
||||
{
|
||||
if ((obj instanceof PlayerInstance) || (obj instanceof PetInstance))
|
||||
if (((obj instanceof PlayerInstance) || (obj instanceof PetInstance)) && Util.checkIfInRange(npc.getAggroRange(), npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
if (Util.checkIfInRange(npc.getAggroRange(), npc, obj, true) && !((Creature) obj).isDead())
|
||||
{
|
||||
result.add((Playable) obj);
|
||||
}
|
||||
result.add((Playable) obj);
|
||||
}
|
||||
}
|
||||
if (!result.isEmpty() && (result.size() != 0))
|
||||
if (!result.isEmpty())
|
||||
{
|
||||
final Object[] characters = result.toArray();
|
||||
for (Object obj : characters)
|
||||
@@ -135,7 +131,7 @@ public class Monastery extends Quest
|
||||
if ((target.getActiveWeaponInstance() != null) && !npc.isInCombat() && (npc.getTarget() == null))
|
||||
{
|
||||
npc.setTarget(target);
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), text[0]));
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), TEXT[0]));
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
case 22124:
|
||||
@@ -165,21 +161,18 @@ public class Monastery extends Quest
|
||||
@Override
|
||||
public String onSpellFinished(NpcInstance npc, PlayerInstance player, Skill skill)
|
||||
{
|
||||
if (Util.contains(mobs1, npc.getNpcId()) && (skill.getId() == 4589))
|
||||
if (Util.contains(MOBS_1, npc.getNpcId()) && (skill.getId() == 4589))
|
||||
{
|
||||
npc.setIsRunning(true);
|
||||
((Attackable) npc).addDamageHate(player, 0, 999);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
}
|
||||
|
||||
if (Util.contains(mobs2, npc.getNpcId()))
|
||||
if (Util.contains(MOBS_2, npc.getNpcId()) && (skill.getSkillType() == SkillType.AGGDAMAGE))
|
||||
{
|
||||
if (skill.getSkillType() == SkillType.AGGDAMAGE)
|
||||
{
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), text[Rnd.get(2) + 1].replace("name", player.getName())));
|
||||
((Attackable) npc).addDamageHate(player, 0, 999);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
}
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), TEXT[Rnd.get(2) + 1].replace("name", player.getName())));
|
||||
((Attackable) npc).addDamageHate(player, 0, 999);
|
||||
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
|
||||
}
|
||||
|
||||
return super.onSpellFinished(npc, player, skill);
|
||||
|
@@ -34,25 +34,25 @@ public class NewbieHelper extends Quest
|
||||
{
|
||||
// Quest Items
|
||||
// Human
|
||||
private final static int RECOMMENDATION_01 = 1067;
|
||||
private final static int RECOMMENDATION_02 = 1068;
|
||||
private static final int RECOMMENDATION_01 = 1067;
|
||||
private static final int RECOMMENDATION_02 = 1068;
|
||||
// Elf
|
||||
private final static int LEAF_OF_MOTHERTREE = 1069;
|
||||
private static final int LEAF_OF_MOTHERTREE = 1069;
|
||||
// Dark Elf
|
||||
private final static int BLOOD_OF_JUNDIN = 1070;
|
||||
private static final int BLOOD_OF_JUNDIN = 1070;
|
||||
// Dwarf
|
||||
private final static int LICENSE_OF_MINER = 1498;
|
||||
private static final int LICENSE_OF_MINER = 1498;
|
||||
// Orc
|
||||
private final static int VOUCHER_OF_FLAME = 1496;
|
||||
private static final int VOUCHER_OF_FLAME = 1496;
|
||||
|
||||
// Items Reward
|
||||
private final static int SOULSHOT_NOVICE = 5789;
|
||||
private final static int SPIRITSHOT_NOVICE = 5790;
|
||||
private final static int BLUE_GEM = 6353;
|
||||
private final static int TOKEN = 8542;
|
||||
private final static int SCROLL = 8594;
|
||||
private static final int SOULSHOT_NOVICE = 5789;
|
||||
private static final int SPIRITSHOT_NOVICE = 5790;
|
||||
private static final int BLUE_GEM = 6353;
|
||||
private static final int TOKEN = 8542;
|
||||
private static final int SCROLL = 8594;
|
||||
|
||||
private final static Map<String, Event> _events = new HashMap<>();
|
||||
private static final Map<String, Event> _events = new HashMap<>();
|
||||
static
|
||||
{
|
||||
_events.put("30008_02", new Event("30008-03.htm", -84058, 243239, -3730, RECOMMENDATION_01, 0x00, SOULSHOT_NOVICE, 200, 0x00, 0, 0));
|
||||
@@ -64,7 +64,7 @@ public class NewbieHelper extends Quest
|
||||
}
|
||||
|
||||
// @formatter:off
|
||||
private final static Map<Integer, Talk> _talks = new HashMap<>();
|
||||
private static final Map<Integer, Talk> _talks = new HashMap<>();
|
||||
static
|
||||
{
|
||||
// Grand Master - Roien - Human
|
||||
@@ -126,14 +126,14 @@ public class NewbieHelper extends Quest
|
||||
{
|
||||
int _raceId;
|
||||
String[] _htmlfiles;
|
||||
int _npcTyp;
|
||||
int _npcType;
|
||||
int _item;
|
||||
|
||||
public Talk(int raceId, String[] htmlfiles, int npcTyp, int item)
|
||||
{
|
||||
_raceId = raceId;
|
||||
_htmlfiles = htmlfiles;
|
||||
_npcTyp = npcTyp;
|
||||
_npcType = npcTyp;
|
||||
_item = item;
|
||||
}
|
||||
}
|
||||
@@ -232,13 +232,10 @@ public class NewbieHelper extends Quest
|
||||
qs1.giveItems(ev._gift1, ev._count1);
|
||||
qs1.playTutorialVoice(ev._gift1 == SPIRITSHOT_NOVICE ? "tutorial_voice_027" : "tutorial_voice_026");
|
||||
}
|
||||
else if (classId == ev._classId2)
|
||||
else if ((classId == ev._classId2) && (ev._gift2 != 0))
|
||||
{
|
||||
if (ev._gift2 != 0)
|
||||
{
|
||||
qs1.giveItems(ev._gift2, ev._count2);
|
||||
qs1.playTutorialVoice("tutorial_voice_026");
|
||||
}
|
||||
qs1.giveItems(ev._gift2, ev._count2);
|
||||
qs1.playTutorialVoice("tutorial_voice_026");
|
||||
}
|
||||
qs1.unset("step");
|
||||
qs1.set("onlyone", "1");
|
||||
@@ -270,7 +267,9 @@ public class NewbieHelper extends Quest
|
||||
boolean isMage = player.isMageClass();
|
||||
boolean isOrcMage = player.getClassId().getId() == 49;
|
||||
|
||||
int npcTyp = 0, raceId = 0, item = 0;
|
||||
int npcType = 0;
|
||||
int raceId = 0;
|
||||
int item = 0;
|
||||
String[] htmlfiles = {};
|
||||
Talk talk = _talks.get(npcId);
|
||||
try
|
||||
@@ -279,10 +278,10 @@ public class NewbieHelper extends Quest
|
||||
{
|
||||
raceId = talk._raceId;
|
||||
htmlfiles = talk._htmlfiles;
|
||||
npcTyp = talk._npcTyp;
|
||||
npcType = talk._npcType;
|
||||
item = talk._item;
|
||||
}
|
||||
if (((level >= 10) || (qs1.getInt("onlyone") == 1)) && (npcTyp == 1))
|
||||
if (((level >= 10) || (qs1.getInt("onlyone") == 1)) && (npcType == 1))
|
||||
{
|
||||
htmltext = "newbiehelper_03.htm";
|
||||
}
|
||||
@@ -291,7 +290,7 @@ public class NewbieHelper extends Quest
|
||||
if (player.getRace().ordinal() == raceId)
|
||||
{
|
||||
htmltext = htmlfiles[0];
|
||||
if (npcTyp == 1)
|
||||
if (npcType == 1)
|
||||
{
|
||||
if ((qs1.getInt("step") == 0) && (qs2.get("Ex") == null))
|
||||
{
|
||||
@@ -342,7 +341,7 @@ public class NewbieHelper extends Quest
|
||||
htmltext = htmlfiles[3];
|
||||
}
|
||||
}
|
||||
else if (npcTyp == 0)
|
||||
else if (npcType == 0)
|
||||
{
|
||||
int step = qs1.getInt("step");
|
||||
if (step == 1)
|
||||
@@ -377,7 +376,7 @@ public class NewbieHelper extends Quest
|
||||
npc.showChatWindow(player);
|
||||
return null;
|
||||
}
|
||||
else if ((npcTyp == 0) && (qs1.getState() == State.COMPLETED))
|
||||
else if ((npcType == 0) && (qs1.getState() == State.COMPLETED))
|
||||
{
|
||||
htmltext = "" + npcId + "-04.htm";
|
||||
}
|
||||
@@ -387,9 +386,9 @@ public class NewbieHelper extends Quest
|
||||
return null;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
catch (Exception e)
|
||||
{
|
||||
// TODO: do nothing
|
||||
// Ignore.
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
@@ -141,29 +141,26 @@ public class Transform extends Quest
|
||||
{
|
||||
for (Transformer monster : _mobs)
|
||||
{
|
||||
if (npc.getNpcId() == monster.getId())
|
||||
if ((npc.getNpcId() == monster.getId()) && (Rnd.get(100) <= (monster.getChance() * Config.RATE_DROP_QUEST)))
|
||||
{
|
||||
if (Rnd.get(100) <= (monster.getChance() * Config.RATE_DROP_QUEST))
|
||||
if (monster.getMessage() != 0)
|
||||
{
|
||||
if (monster.getMessage() != 0)
|
||||
{
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), Message[Rnd.get(monster.getMessage())]));
|
||||
}
|
||||
npc.onDecay();
|
||||
final Attackable newNpc = (Attackable) addSpawn(monster.getIdPoly(), npc);
|
||||
final Creature originalAttacker = isPet ? attacker.getPet() : attacker;
|
||||
newNpc.setRunning();
|
||||
newNpc.addDamageHate(originalAttacker, 0, 999);
|
||||
newNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, originalAttacker);
|
||||
|
||||
// NPC Spawn Effect L2OFF
|
||||
final NPCSpawnTask spawnEffectTask = new NPCSpawnTask(newNpc, 4000, 800000);
|
||||
final Thread effectThread = new Thread(spawnEffectTask);
|
||||
effectThread.start();
|
||||
|
||||
// Like L2OFF auto target new mob (like an aggression)
|
||||
originalAttacker.setTargetTrasformedNpc(newNpc);
|
||||
npc.broadcastPacket(new CreatureSay(npc.getObjectId(), 0, npc.getName(), Message[Rnd.get(monster.getMessage())]));
|
||||
}
|
||||
npc.onDecay();
|
||||
final Attackable newNpc = (Attackable) addSpawn(monster.getIdPoly(), npc);
|
||||
final Creature originalAttacker = isPet ? attacker.getPet() : attacker;
|
||||
newNpc.setRunning();
|
||||
newNpc.addDamageHate(originalAttacker, 0, 999);
|
||||
newNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, originalAttacker);
|
||||
|
||||
// NPC Spawn Effect L2OFF
|
||||
final NPCSpawnTask spawnEffectTask = new NPCSpawnTask(newNpc, 4000, 800000);
|
||||
final Thread effectThread = new Thread(spawnEffectTask);
|
||||
effectThread.start();
|
||||
|
||||
// Like L2OFF auto target new mob (like an aggression)
|
||||
originalAttacker.setTargetTrasformedNpc(newNpc);
|
||||
}
|
||||
}
|
||||
return super.onAttack(npc, attacker, damage, isPet);
|
||||
|
@@ -169,7 +169,7 @@ public class Tutorial extends Quest
|
||||
String html = "";
|
||||
|
||||
int classId = player.getClassId().getId();
|
||||
int Ex = qs.getInt("Ex");
|
||||
int ex = qs.getInt("Ex");
|
||||
|
||||
if (event.startsWith("UC"))
|
||||
{
|
||||
@@ -193,7 +193,7 @@ public class Tutorial extends Quest
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
if (Ex == 2)
|
||||
if (ex == 2)
|
||||
{
|
||||
qs.showQuestionMark(3);
|
||||
}
|
||||
@@ -216,12 +216,12 @@ public class Tutorial extends Quest
|
||||
}
|
||||
else if (event.startsWith("QT"))
|
||||
{
|
||||
if (Ex == -2)
|
||||
if (ex == -2)
|
||||
{
|
||||
String voice = "";
|
||||
for (String[] element : QTEXMTWO)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
voice = element[1];
|
||||
html = element[2];
|
||||
@@ -232,12 +232,12 @@ public class Tutorial extends Quest
|
||||
cancelQuestTimers("QT");
|
||||
startQuestTimer("QT", 30000, null, player, false);
|
||||
}
|
||||
else if (Ex == -3)
|
||||
else if (ex == -3)
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_002");
|
||||
qs.set("Ex", "0");
|
||||
}
|
||||
else if (Ex == -4)
|
||||
else if (ex == -4)
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_008");
|
||||
qs.set("Ex", "-5");
|
||||
@@ -249,7 +249,7 @@ public class Tutorial extends Quest
|
||||
cancelQuestTimers("TE");
|
||||
if (!event.equalsIgnoreCase("TE"))
|
||||
{
|
||||
switch (Integer.valueOf(event.substring(2)))
|
||||
switch (Integer.parseInt(event.substring(2)))
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
@@ -354,34 +354,34 @@ public class Tutorial extends Quest
|
||||
// Client Event
|
||||
else if (event.startsWith("CE"))
|
||||
{
|
||||
int event_id = Integer.valueOf(event.substring(2));
|
||||
if ((event_id == 1) && (player.getLevel() < 6))
|
||||
final int eventId = Integer.parseInt(event.substring(2));
|
||||
if ((eventId == 1) && (player.getLevel() < 6))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_004");
|
||||
html = "tutorial_03.htm";
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
qs.onTutorialClientEvent(2);
|
||||
}
|
||||
else if ((event_id == 2) && (player.getLevel() < 6))
|
||||
else if ((eventId == 2) && (player.getLevel() < 6))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_005");
|
||||
html = "tutorial_05.htm";
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
qs.onTutorialClientEvent(8);
|
||||
}
|
||||
else if ((event_id == 8) && (player.getLevel() < 6))
|
||||
else if ((eventId == 8) && (player.getLevel() < 6))
|
||||
{
|
||||
int x = 0;
|
||||
int y = 0;
|
||||
int z = 0;
|
||||
for (String[] element : CEEa)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
html = element[1];
|
||||
x = Integer.valueOf(element[2]);
|
||||
y = Integer.valueOf(element[3]);
|
||||
z = Integer.valueOf(element[4]);
|
||||
x = Integer.parseInt(element[2]);
|
||||
y = Integer.parseInt(element[3]);
|
||||
z = Integer.parseInt(element[4]);
|
||||
}
|
||||
}
|
||||
if (x != 0)
|
||||
@@ -393,7 +393,7 @@ public class Tutorial extends Quest
|
||||
qs.set("Ex", "-5");
|
||||
}
|
||||
}
|
||||
else if ((event_id == 30) && (player.getLevel() < 10) && (qs.getInt("Die") == 0))
|
||||
else if ((eventId == 30) && (player.getLevel() < 10) && (qs.getInt("Die") == 0))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_016");
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
@@ -401,7 +401,7 @@ public class Tutorial extends Quest
|
||||
qs.showQuestionMark(8);
|
||||
qs.onTutorialClientEvent(0);
|
||||
}
|
||||
else if ((event_id == 800000) && (player.getLevel() < 6) && (qs.getInt("sit") == 0))
|
||||
else if ((eventId == 800000) && (player.getLevel() < 6) && (qs.getInt("sit") == 0))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_018");
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
@@ -409,7 +409,7 @@ public class Tutorial extends Quest
|
||||
qs.onTutorialClientEvent(0);
|
||||
html = "tutorial_21z.htm";
|
||||
}
|
||||
else if (event_id == 40)
|
||||
else if (eventId == 40)
|
||||
{
|
||||
switch (player.getLevel())
|
||||
{
|
||||
@@ -517,7 +517,7 @@ public class Tutorial extends Quest
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((event_id == 45) && (player.getLevel() < 10) && (qs.getInt("HP") == 0))
|
||||
else if ((eventId == 45) && (player.getLevel() < 10) && (qs.getInt("HP") == 0))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_017");
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
@@ -525,21 +525,21 @@ public class Tutorial extends Quest
|
||||
qs.showQuestionMark(10);
|
||||
qs.onTutorialClientEvent(800000);
|
||||
}
|
||||
else if ((event_id == 57) && (player.getLevel() < 6) && (qs.getInt("Adena") == 0))
|
||||
else if ((eventId == 57) && (player.getLevel() < 6) && (qs.getInt("Adena") == 0))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_012");
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
qs.set("Adena", "1");
|
||||
qs.showQuestionMark(23);
|
||||
}
|
||||
else if ((event_id == 6353) && (player.getLevel() < 6) && (qs.getInt("Gemstone") == 0))
|
||||
else if ((eventId == 6353) && (player.getLevel() < 6) && (qs.getInt("Gemstone") == 0))
|
||||
{
|
||||
qs.playTutorialVoice("tutorial_voice_013");
|
||||
qs.playSound("ItemSound.quest_tutorial");
|
||||
qs.set("Gemstone", "1");
|
||||
qs.showQuestionMark(5);
|
||||
}
|
||||
else if ((event_id == 1048576) && (player.getLevel() < 6))
|
||||
else if ((eventId == 1048576) && (player.getLevel() < 6))
|
||||
{
|
||||
qs.showQuestionMark(5);
|
||||
qs.playTutorialVoice("tutorial_voice_013");
|
||||
@@ -552,7 +552,7 @@ public class Tutorial extends Quest
|
||||
int x = 0;
|
||||
int y = 0;
|
||||
int z = 0;
|
||||
switch (Integer.valueOf(event.substring(2)))
|
||||
switch (Integer.parseInt(event.substring(2)))
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
@@ -560,12 +560,12 @@ public class Tutorial extends Quest
|
||||
qs.set("Ex", "-5");
|
||||
for (String[] element : CEEa)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
html = element[1];
|
||||
x = Integer.valueOf(element[2]);
|
||||
y = Integer.valueOf(element[3]);
|
||||
z = Integer.valueOf(element[4]);
|
||||
x = Integer.parseInt(element[2]);
|
||||
y = Integer.parseInt(element[3]);
|
||||
z = Integer.parseInt(element[4]);
|
||||
}
|
||||
}
|
||||
qs.addRadar(x, y, z);
|
||||
@@ -581,12 +581,12 @@ public class Tutorial extends Quest
|
||||
{
|
||||
for (String[] element : CEEa)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
html = element[1];
|
||||
x = Integer.valueOf(element[2]);
|
||||
y = Integer.valueOf(element[3]);
|
||||
z = Integer.valueOf(element[4]);
|
||||
x = Integer.parseInt(element[2]);
|
||||
y = Integer.parseInt(element[3]);
|
||||
z = Integer.parseInt(element[4]);
|
||||
}
|
||||
}
|
||||
qs.addRadar(x, y, z);
|
||||
@@ -608,12 +608,12 @@ public class Tutorial extends Quest
|
||||
{
|
||||
for (String[] element : QMCa)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
html = element[1];
|
||||
x = Integer.valueOf(element[2]);
|
||||
y = Integer.valueOf(element[3]);
|
||||
z = Integer.valueOf(element[4]);
|
||||
x = Integer.parseInt(element[2]);
|
||||
y = Integer.parseInt(element[3]);
|
||||
z = Integer.parseInt(element[4]);
|
||||
}
|
||||
}
|
||||
if (x != 0)
|
||||
@@ -631,12 +631,12 @@ public class Tutorial extends Quest
|
||||
{
|
||||
for (String[] element : QMCa)
|
||||
{
|
||||
if (classId == Integer.valueOf(element[0]))
|
||||
if (classId == Integer.parseInt(element[0]))
|
||||
{
|
||||
html = element[1];
|
||||
x = Integer.valueOf(element[2]);
|
||||
y = Integer.valueOf(element[3]);
|
||||
z = Integer.valueOf(element[4]);
|
||||
x = Integer.parseInt(element[2]);
|
||||
y = Integer.parseInt(element[3]);
|
||||
z = Integer.parseInt(element[4]);
|
||||
}
|
||||
}
|
||||
if (x != 0)
|
||||
|
@@ -68,13 +68,13 @@ public class ZombieGatekeepers extends Quest
|
||||
|
||||
final Creature target = isPet ? player.getPet() : player;
|
||||
|
||||
final ItemInstance VisitorsMark = player.getInventory().getItemByItemId(8064);
|
||||
final ItemInstance FadedVisitorsMark = player.getInventory().getItemByItemId(8065);
|
||||
final ItemInstance PagansMark = player.getInventory().getItemByItemId(8067);
|
||||
final ItemInstance visitorsMark = player.getInventory().getItemByItemId(8064);
|
||||
final ItemInstance fadedVisitorsMark = player.getInventory().getItemByItemId(8065);
|
||||
final ItemInstance pagansMark = player.getInventory().getItemByItemId(8067);
|
||||
|
||||
final long mark1 = VisitorsMark == null ? 0 : VisitorsMark.getCount();
|
||||
final long mark2 = FadedVisitorsMark == null ? 0 : FadedVisitorsMark.getCount();
|
||||
final long mark3 = PagansMark == null ? 0 : PagansMark.getCount();
|
||||
final long mark1 = visitorsMark == null ? 0 : visitorsMark.getCount();
|
||||
final long mark2 = fadedVisitorsMark == null ? 0 : fadedVisitorsMark.getCount();
|
||||
final long mark3 = pagansMark == null ? 0 : pagansMark.getCount();
|
||||
|
||||
if ((mark1 == 0) && (mark2 == 0) && (mark3 == 0))
|
||||
{
|
||||
|
@@ -52,7 +52,7 @@ public class HeroWeapon extends Quest
|
||||
{
|
||||
QuestState st = player.getQuestState(getName());
|
||||
|
||||
int weaponId = Integer.valueOf(event);
|
||||
int weaponId = Integer.parseInt(event);
|
||||
if (Util.contains(WEAPON_IDS, weaponId))
|
||||
{
|
||||
st.giveItems(weaponId, 1);
|
||||
|
@@ -229,7 +229,7 @@ public class NpcLocationInfo extends Quest
|
||||
|
||||
if (Util.contains(RADARS, npcId))
|
||||
{
|
||||
for (Spawn spawn : SpawnTable.getInstance().getAllTemplates().values())
|
||||
for (Spawn spawn : SpawnTable.getInstance().getSpawnTable().values())
|
||||
{
|
||||
if (npcId == spawn.getNpcId())
|
||||
{
|
||||
|
@@ -128,7 +128,7 @@ public class RaidbossInfo extends Quest
|
||||
}
|
||||
|
||||
// Add all Raid Bosses locations.
|
||||
for (Spawn spawn : SpawnTable.getInstance().getAllTemplates().values())
|
||||
for (Spawn spawn : SpawnTable.getInstance().getSpawnTable().values())
|
||||
{
|
||||
final NpcTemplate template = NpcTable.getInstance().getTemplate(spawn.getNpcId());
|
||||
if ((template != null) && template.type.equals(BOSS_CLASS_TYPE))
|
||||
|
@@ -26,13 +26,13 @@ import org.l2jmobius.gameserver.model.quest.State;
|
||||
public class Q009_IntoTheCityOfHumans extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private final int PETUKAI = 30583;
|
||||
private final int TANAPI = 30571;
|
||||
private final int TAMIL = 30576;
|
||||
private static final int PETUKAI = 30583;
|
||||
private static final int TANAPI = 30571;
|
||||
private static final int TAMIL = 30576;
|
||||
|
||||
// Rewards
|
||||
private final int MARK_OF_TRAVELER = 7570;
|
||||
private final int SOE_GIRAN = 7126;
|
||||
private static final int MARK_OF_TRAVELER = 7570;
|
||||
private static final int SOE_GIRAN = 7126;
|
||||
|
||||
public Q009_IntoTheCityOfHumans()
|
||||
{
|
||||
|
@@ -37,7 +37,7 @@ public class Q033_MakeAPairOfDressShoes extends Quest
|
||||
private static final int ADENA = 57;
|
||||
|
||||
// Rewards
|
||||
public static int DRESS_SHOES_BOX = 7113;
|
||||
public static final int DRESS_SHOES_BOX = 7113;
|
||||
|
||||
public Q033_MakeAPairOfDressShoes()
|
||||
{
|
||||
|
@@ -41,7 +41,7 @@ public class Q038_DragonFangs extends Quest
|
||||
private static final int ROHMER = 30344;
|
||||
|
||||
// Reward { item, adena }
|
||||
private static final int REWARD[][] =
|
||||
private static final int[][] REWARD =
|
||||
{
|
||||
{
|
||||
45,
|
||||
@@ -271,8 +271,7 @@ public class Q038_DragonFangs extends Quest
|
||||
return null;
|
||||
}
|
||||
|
||||
final int droplist[] = DROPLIST.get(npc.getNpcId());
|
||||
|
||||
final int[] droplist = DROPLIST.get(npc.getNpcId());
|
||||
if ((st.getInt("cond") == droplist[0]) && st.dropItems(droplist[1], 1, droplist[2], droplist[3]))
|
||||
{
|
||||
st.set("cond", String.valueOf(droplist[0] + 1));
|
||||
|
@@ -26,7 +26,7 @@ public class Q070_SagaOfThePhoenixKnight extends SagasSuperClass
|
||||
public Q070_SagaOfThePhoenixKnight()
|
||||
{
|
||||
super(70, "Saga of the Phoenix Knight");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30849,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q070_SagaOfThePhoenixKnight extends SagasSuperClass
|
||||
31657,
|
||||
31277
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7534,
|
||||
@@ -56,39 +56,39 @@ public class Q070_SagaOfThePhoenixKnight extends SagasSuperClass
|
||||
7093,
|
||||
6482
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27286,
|
||||
27219,
|
||||
27278
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
90
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x05
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46087,
|
||||
46066
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36372,
|
||||
-36396
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q071_SagaOfEvasTemplar extends SagasSuperClass
|
||||
public Q071_SagaOfEvasTemplar()
|
||||
{
|
||||
super(71, "Saga of Eva's Templar");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30852,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q071_SagaOfEvasTemplar extends SagasSuperClass
|
||||
31658,
|
||||
31281
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7535,
|
||||
@@ -56,39 +56,39 @@ public class Q071_SagaOfEvasTemplar extends SagasSuperClass
|
||||
7094,
|
||||
6482
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27287,
|
||||
27220,
|
||||
27279
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
99
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x14
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181215,
|
||||
181227
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36703
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4812,
|
||||
-4816
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q072_SagaOfTheSwordMuse extends SagasSuperClass
|
||||
public Q072_SagaOfTheSwordMuse()
|
||||
{
|
||||
super(72, "Saga of the Sword Muse");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30853,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q072_SagaOfTheSwordMuse extends SagasSuperClass
|
||||
31659,
|
||||
31281
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7536,
|
||||
@@ -56,39 +56,39 @@ public class Q072_SagaOfTheSwordMuse extends SagasSuperClass
|
||||
7095,
|
||||
6482
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27288,
|
||||
27221,
|
||||
27280
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
100
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x15
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124355,
|
||||
124376
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82155,
|
||||
82127
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2803,
|
||||
-2796
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q073_SagaOfTheDuelist extends SagasSuperClass
|
||||
public Q073_SagaOfTheDuelist()
|
||||
{
|
||||
super(73, "Saga of the Duelist");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30849,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q073_SagaOfTheDuelist extends SagasSuperClass
|
||||
31656,
|
||||
31277
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7537,
|
||||
@@ -56,39 +56,39 @@ public class Q073_SagaOfTheDuelist extends SagasSuperClass
|
||||
7096,
|
||||
7546
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27289,
|
||||
27222,
|
||||
27281
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
88
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x02
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47429,
|
||||
47391
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56923,
|
||||
-56929
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2383,
|
||||
-2370
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q074_SagaOfTheDreadnought extends SagasSuperClass
|
||||
public Q074_SagaOfTheDreadnought()
|
||||
{
|
||||
super(74, "Saga of the Dreadnought");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30850,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q074_SagaOfTheDreadnought extends SagasSuperClass
|
||||
31657,
|
||||
31522
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7538,
|
||||
@@ -56,39 +56,39 @@ public class Q074_SagaOfTheDreadnought extends SagasSuperClass
|
||||
7097,
|
||||
6480
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27290,
|
||||
27223,
|
||||
27282
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
89
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x03
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46087,
|
||||
46066
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36372,
|
||||
-36396
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q075_SagaOfTheTitan extends SagasSuperClass
|
||||
public Q075_SagaOfTheTitan()
|
||||
{
|
||||
super(75, "Saga of the Titan");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31327,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q075_SagaOfTheTitan extends SagasSuperClass
|
||||
31658,
|
||||
31290
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7539,
|
||||
@@ -56,39 +56,39 @@ public class Q075_SagaOfTheTitan extends SagasSuperClass
|
||||
7098,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27292,
|
||||
27224,
|
||||
27283
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
113
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x2e
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181215,
|
||||
181227
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36703
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4812,
|
||||
-4816
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q076_SagaOfTheGrandKhavatari extends SagasSuperClass
|
||||
public Q076_SagaOfTheGrandKhavatari()
|
||||
{
|
||||
super(76, "Saga of the Grand Khavatari");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31339,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q076_SagaOfTheGrandKhavatari extends SagasSuperClass
|
||||
31659,
|
||||
31290
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7539,
|
||||
@@ -56,39 +56,39 @@ public class Q076_SagaOfTheGrandKhavatari extends SagasSuperClass
|
||||
7099,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27293,
|
||||
27226,
|
||||
27284
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
114
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x30
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124355,
|
||||
124376
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82155,
|
||||
82127
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2803,
|
||||
-2796
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q077_SagaOfTheDominator extends SagasSuperClass
|
||||
public Q077_SagaOfTheDominator()
|
||||
{
|
||||
super(77, "Saga of the Dominator");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31336,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q077_SagaOfTheDominator extends SagasSuperClass
|
||||
31656,
|
||||
31290
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7539,
|
||||
@@ -56,39 +56,39 @@ public class Q077_SagaOfTheDominator extends SagasSuperClass
|
||||
7100,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27294,
|
||||
27226,
|
||||
27262
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
115
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x33
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47429,
|
||||
47391
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56923,
|
||||
-56929
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2383,
|
||||
-2370
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q078_SagaOfTheDoomcryer extends SagasSuperClass
|
||||
public Q078_SagaOfTheDoomcryer()
|
||||
{
|
||||
super(78, "Saga of the Doomcryer");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31336,
|
||||
31624,
|
||||
@@ -42,7 +42,7 @@ public class Q078_SagaOfTheDoomcryer extends SagasSuperClass
|
||||
31657,
|
||||
31290
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7539,
|
||||
@@ -57,39 +57,39 @@ public class Q078_SagaOfTheDoomcryer extends SagasSuperClass
|
||||
7101,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27295,
|
||||
27227,
|
||||
27285
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
116
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x34
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46087,
|
||||
46066
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36372,
|
||||
-36396
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q079_SagaOfTheAdventurer extends SagasSuperClass
|
||||
public Q079_SagaOfTheAdventurer()
|
||||
{
|
||||
super(79, "Saga of the Adventurer");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31603,
|
||||
31584,
|
||||
@@ -41,7 +41,7 @@ public class Q079_SagaOfTheAdventurer extends SagasSuperClass
|
||||
31658,
|
||||
31616
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7516,
|
||||
@@ -56,39 +56,39 @@ public class Q079_SagaOfTheAdventurer extends SagasSuperClass
|
||||
7102,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27299,
|
||||
27228,
|
||||
27302
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
93
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x08
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181205,
|
||||
181215
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36676
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4816,
|
||||
-4812
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q080_SagaOfTheWindRider extends SagasSuperClass
|
||||
public Q080_SagaOfTheWindRider()
|
||||
{
|
||||
super(80, "Saga of the Wind Rider");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31603,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q080_SagaOfTheWindRider extends SagasSuperClass
|
||||
31659,
|
||||
31616
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7517,
|
||||
@@ -56,39 +56,39 @@ public class Q080_SagaOfTheWindRider extends SagasSuperClass
|
||||
7103,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27300,
|
||||
27229,
|
||||
27303
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
101
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x17
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124314,
|
||||
124355
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82155,
|
||||
82155
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2803,
|
||||
-2803
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q081_SagaOfTheGhostHunter extends SagasSuperClass
|
||||
public Q081_SagaOfTheGhostHunter()
|
||||
{
|
||||
super(81, "Saga of the Ghost Hunter");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31603,
|
||||
31624,
|
||||
@@ -41,7 +41,7 @@ public class Q081_SagaOfTheGhostHunter extends SagasSuperClass
|
||||
31656,
|
||||
31616
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7518,
|
||||
@@ -56,39 +56,39 @@ public class Q081_SagaOfTheGhostHunter extends SagasSuperClass
|
||||
7104,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27301,
|
||||
27230,
|
||||
27304
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
108
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x24
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47391,
|
||||
47429
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56929,
|
||||
-56923
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2370,
|
||||
-2383
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q082_SagaOfTheSagittarius extends SagasSuperClass
|
||||
public Q082_SagaOfTheSagittarius()
|
||||
{
|
||||
super(82, "Saga of the Sagittarius");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30702,
|
||||
31627,
|
||||
@@ -42,7 +42,7 @@ public class Q082_SagaOfTheSagittarius extends SagasSuperClass
|
||||
31657,
|
||||
31641
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7519,
|
||||
@@ -57,39 +57,39 @@ public class Q082_SagaOfTheSagittarius extends SagasSuperClass
|
||||
7105,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27296,
|
||||
27231,
|
||||
27305
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
92
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x09
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46066,
|
||||
46066
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36396,
|
||||
-36396
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q083_SagaOfTheMoonlightSentinel extends SagasSuperClass
|
||||
public Q083_SagaOfTheMoonlightSentinel()
|
||||
{
|
||||
super(83, "Saga of the Moonlight Sentinel");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30702,
|
||||
31627,
|
||||
@@ -41,7 +41,7 @@ public class Q083_SagaOfTheMoonlightSentinel extends SagasSuperClass
|
||||
31658,
|
||||
31641
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7520,
|
||||
@@ -56,39 +56,39 @@ public class Q083_SagaOfTheMoonlightSentinel extends SagasSuperClass
|
||||
7106,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27297,
|
||||
27232,
|
||||
27306
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
102
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x18
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
181227,
|
||||
181215
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
36703,
|
||||
36676
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-4816,
|
||||
-4812
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q084_SagaOfTheGhostSentinel extends SagasSuperClass
|
||||
public Q084_SagaOfTheGhostSentinel()
|
||||
{
|
||||
super(84, "Saga of the Ghost Sentinel");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30702,
|
||||
31587,
|
||||
@@ -42,7 +42,7 @@ public class Q084_SagaOfTheGhostSentinel extends SagasSuperClass
|
||||
31659,
|
||||
31641
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7521,
|
||||
@@ -57,39 +57,39 @@ public class Q084_SagaOfTheGhostSentinel extends SagasSuperClass
|
||||
7107,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27298,
|
||||
27233,
|
||||
27307
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
109
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x25
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124376,
|
||||
124376
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82127,
|
||||
82127
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2796,
|
||||
-2796
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q085_SagaOfTheCardinal extends SagasSuperClass
|
||||
public Q085_SagaOfTheCardinal()
|
||||
{
|
||||
super(85, "Saga of the Cardinal");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30191,
|
||||
31626,
|
||||
@@ -41,7 +41,7 @@ public class Q085_SagaOfTheCardinal extends SagasSuperClass
|
||||
31658,
|
||||
31280
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7522,
|
||||
@@ -56,39 +56,39 @@ public class Q085_SagaOfTheCardinal extends SagasSuperClass
|
||||
7087,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27267,
|
||||
27234,
|
||||
27274
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
97
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x10
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181215,
|
||||
181227
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36703
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4812,
|
||||
-4816
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q086_SagaOfTheHierophant extends SagasSuperClass
|
||||
public Q086_SagaOfTheHierophant()
|
||||
{
|
||||
super(86, "Saga of the Hierophant");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30191,
|
||||
31626,
|
||||
@@ -41,7 +41,7 @@ public class Q086_SagaOfTheHierophant extends SagasSuperClass
|
||||
31659,
|
||||
31280
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7523,
|
||||
@@ -56,39 +56,39 @@ public class Q086_SagaOfTheHierophant extends SagasSuperClass
|
||||
7089,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27269,
|
||||
27235,
|
||||
27275
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
98
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x11
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124355,
|
||||
124376
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82155,
|
||||
82127
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2803,
|
||||
-2796
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q087_SagaOfEvasSaint extends SagasSuperClass
|
||||
public Q087_SagaOfEvasSaint()
|
||||
{
|
||||
super(87, "Saga of Eva's Saint");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30191,
|
||||
31626,
|
||||
@@ -41,7 +41,7 @@ public class Q087_SagaOfEvasSaint extends SagasSuperClass
|
||||
31657,
|
||||
31280
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7524,
|
||||
@@ -56,39 +56,39 @@ public class Q087_SagaOfEvasSaint extends SagasSuperClass
|
||||
7088,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27266,
|
||||
27236,
|
||||
27276
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
105
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x1e
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
46087,
|
||||
46066
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-36372,
|
||||
-36396
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q088_SagaOfTheArchmage extends SagasSuperClass
|
||||
public Q088_SagaOfTheArchmage()
|
||||
{
|
||||
super(88, "Saga of the Archmage");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30176,
|
||||
31627,
|
||||
@@ -41,7 +41,7 @@ public class Q088_SagaOfTheArchmage extends SagasSuperClass
|
||||
31657,
|
||||
31282
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7529,
|
||||
@@ -56,39 +56,39 @@ public class Q088_SagaOfTheArchmage extends SagasSuperClass
|
||||
7082,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27250,
|
||||
27237,
|
||||
27254
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
94
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x0c
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46066,
|
||||
46087
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36396,
|
||||
-36372
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q089_SagaOfTheMysticMuse extends SagasSuperClass
|
||||
public Q089_SagaOfTheMysticMuse()
|
||||
{
|
||||
super(89, "Saga of the Mystic Muse");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30174,
|
||||
31627,
|
||||
@@ -41,7 +41,7 @@ public class Q089_SagaOfTheMysticMuse extends SagasSuperClass
|
||||
31658,
|
||||
31283
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7530,
|
||||
@@ -56,39 +56,39 @@ public class Q089_SagaOfTheMysticMuse extends SagasSuperClass
|
||||
7083,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27251,
|
||||
27238,
|
||||
27255
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
103
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x1b
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181227,
|
||||
181215
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36703,
|
||||
36676
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4816,
|
||||
-4812
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q090_SagaOfTheStormScreamer extends SagasSuperClass
|
||||
public Q090_SagaOfTheStormScreamer()
|
||||
{
|
||||
super(90, "Saga of the Storm Screamer");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30175,
|
||||
31627,
|
||||
@@ -41,7 +41,7 @@ public class Q090_SagaOfTheStormScreamer extends SagasSuperClass
|
||||
31659,
|
||||
31287
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7531,
|
||||
@@ -56,39 +56,39 @@ public class Q090_SagaOfTheStormScreamer extends SagasSuperClass
|
||||
7084,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27252,
|
||||
27239,
|
||||
27256
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
110
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x28
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124376,
|
||||
124355
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82127,
|
||||
82155
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2796,
|
||||
-2803
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -26,7 +26,7 @@ public class Q091_SagaOfTheArcanaLord extends SagasSuperClass
|
||||
public Q091_SagaOfTheArcanaLord()
|
||||
{
|
||||
super(91, "Saga of the Arcana Lord");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31605,
|
||||
31622,
|
||||
@@ -41,7 +41,7 @@ public class Q091_SagaOfTheArcanaLord extends SagasSuperClass
|
||||
31658,
|
||||
31608
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7604,
|
||||
@@ -56,39 +56,39 @@ public class Q091_SagaOfTheArcanaLord extends SagasSuperClass
|
||||
7110,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27313,
|
||||
27240,
|
||||
27310
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
96
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x0e
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181215,
|
||||
181227
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36703
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4812,
|
||||
-4816
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q092_SagaOfTheElementalMaster extends SagasSuperClass
|
||||
public Q092_SagaOfTheElementalMaster()
|
||||
{
|
||||
super(92, "Saga of the Elemental Master");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30174,
|
||||
31281,
|
||||
@@ -42,7 +42,7 @@ public class Q092_SagaOfTheElementalMaster extends SagasSuperClass
|
||||
31659,
|
||||
31614
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7605,
|
||||
@@ -57,39 +57,39 @@ public class Q092_SagaOfTheElementalMaster extends SagasSuperClass
|
||||
7111,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27314,
|
||||
27241,
|
||||
27311
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
104
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x1c
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124376,
|
||||
124355
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82127,
|
||||
82155
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2796,
|
||||
-2803
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q093_SagaOfTheSpectralMaster extends SagasSuperClass
|
||||
public Q093_SagaOfTheSpectralMaster()
|
||||
{
|
||||
super(93, "Saga of the Spectral Master");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30175,
|
||||
31287,
|
||||
@@ -42,7 +42,7 @@ public class Q093_SagaOfTheSpectralMaster extends SagasSuperClass
|
||||
31656,
|
||||
31613
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7606,
|
||||
@@ -57,39 +57,39 @@ public class Q093_SagaOfTheSpectralMaster extends SagasSuperClass
|
||||
7112,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27315,
|
||||
27242,
|
||||
27312
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
111
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x29
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47429,
|
||||
47391
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56923,
|
||||
-56929
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2383,
|
||||
-2370
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q094_SagaOfTheSoultaker extends SagasSuperClass
|
||||
public Q094_SagaOfTheSoultaker()
|
||||
{
|
||||
super(94, "Saga of the Soultaker");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
30832,
|
||||
31623,
|
||||
@@ -42,7 +42,7 @@ public class Q094_SagaOfTheSoultaker extends SagasSuperClass
|
||||
31657,
|
||||
31279
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7533,
|
||||
@@ -57,39 +57,39 @@ public class Q094_SagaOfTheSoultaker extends SagasSuperClass
|
||||
7085,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27257,
|
||||
27243,
|
||||
27265
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
95
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x0d
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46066,
|
||||
46087
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36396,
|
||||
-36372
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q095_SagaOfTheHellKnight extends SagasSuperClass
|
||||
public Q095_SagaOfTheHellKnight()
|
||||
{
|
||||
super(95, "Saga of the Hell Knight");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31582,
|
||||
31623,
|
||||
@@ -42,7 +42,7 @@ public class Q095_SagaOfTheHellKnight extends SagasSuperClass
|
||||
31656,
|
||||
31297
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7532,
|
||||
@@ -57,39 +57,39 @@ public class Q095_SagaOfTheHellKnight extends SagasSuperClass
|
||||
7086,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27258,
|
||||
27244,
|
||||
27263
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
91
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x06
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47391,
|
||||
47429
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56929,
|
||||
-56923
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2370,
|
||||
-2383
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q096_SagaOfTheSpectralDancer extends SagasSuperClass
|
||||
public Q096_SagaOfTheSpectralDancer()
|
||||
{
|
||||
super(96, "Saga of the Spectral Dancer");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31582,
|
||||
31623,
|
||||
@@ -42,7 +42,7 @@ public class Q096_SagaOfTheSpectralDancer extends SagasSuperClass
|
||||
31656,
|
||||
31284
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7527,
|
||||
@@ -57,39 +57,39 @@ public class Q096_SagaOfTheSpectralDancer extends SagasSuperClass
|
||||
7092,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27272,
|
||||
27245,
|
||||
27264
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
107
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x22
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47429,
|
||||
47391
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56923,
|
||||
-56929
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2383,
|
||||
-2370
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q097_SagaOfTheShillienTemplar extends SagasSuperClass
|
||||
public Q097_SagaOfTheShillienTemplar()
|
||||
{
|
||||
super(97, "Saga of the Shillien Templar");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31580,
|
||||
31623,
|
||||
@@ -42,7 +42,7 @@ public class Q097_SagaOfTheShillienTemplar extends SagasSuperClass
|
||||
31659,
|
||||
31285
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7526,
|
||||
@@ -57,39 +57,39 @@ public class Q097_SagaOfTheShillienTemplar extends SagasSuperClass
|
||||
7091,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27271,
|
||||
27246,
|
||||
27273
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
106
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x21
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
161719,
|
||||
124355,
|
||||
124376
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-92823,
|
||||
82155,
|
||||
82127
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-1893,
|
||||
-2803,
|
||||
-2796
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q098_SagaOfTheShillienSaint extends SagasSuperClass
|
||||
public Q098_SagaOfTheShillienSaint()
|
||||
{
|
||||
super(98, "Saga of the Shillien Saint");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31581,
|
||||
31626,
|
||||
@@ -42,7 +42,7 @@ public class Q098_SagaOfTheShillienSaint extends SagasSuperClass
|
||||
31658,
|
||||
31287
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7525,
|
||||
@@ -57,39 +57,39 @@ public class Q098_SagaOfTheShillienSaint extends SagasSuperClass
|
||||
7090,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27270,
|
||||
27247,
|
||||
27277
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
112
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x2b
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
119518,
|
||||
181215,
|
||||
181227
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-28658,
|
||||
36676,
|
||||
36703
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3811,
|
||||
-4812,
|
||||
-4816
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q099_SagaOfTheFortuneSeeker extends SagasSuperClass
|
||||
public Q099_SagaOfTheFortuneSeeker()
|
||||
{
|
||||
super(99, "Saga of the Fortune Seeker");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31594,
|
||||
31623,
|
||||
@@ -42,7 +42,7 @@ public class Q099_SagaOfTheFortuneSeeker extends SagasSuperClass
|
||||
31657,
|
||||
31600
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7608,
|
||||
@@ -57,39 +57,39 @@ public class Q099_SagaOfTheFortuneSeeker extends SagasSuperClass
|
||||
7109,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27259,
|
||||
27248,
|
||||
27309
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
117
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x37
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
191046,
|
||||
46066,
|
||||
46087
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-40640,
|
||||
-36396,
|
||||
-36372
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-3042,
|
||||
-1685,
|
||||
-1685
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -27,7 +27,7 @@ public class Q100_SagaOfTheMaestro extends SagasSuperClass
|
||||
public Q100_SagaOfTheMaestro()
|
||||
{
|
||||
super(100, "Saga of the Maestro");
|
||||
NPC = new int[]
|
||||
_npc = new int[]
|
||||
{
|
||||
31592,
|
||||
31273,
|
||||
@@ -42,7 +42,7 @@ public class Q100_SagaOfTheMaestro extends SagasSuperClass
|
||||
31656,
|
||||
31597
|
||||
};
|
||||
Items = new int[]
|
||||
_items = new int[]
|
||||
{
|
||||
7080,
|
||||
7607,
|
||||
@@ -57,39 +57,39 @@ public class Q100_SagaOfTheMaestro extends SagasSuperClass
|
||||
7108,
|
||||
0
|
||||
};
|
||||
Mob = new int[]
|
||||
_mob = new int[]
|
||||
{
|
||||
27260,
|
||||
27249,
|
||||
27308
|
||||
};
|
||||
classid = new int[]
|
||||
_classId = new int[]
|
||||
{
|
||||
118
|
||||
};
|
||||
prevclass = new int[]
|
||||
_prevClass = new int[]
|
||||
{
|
||||
0x39
|
||||
};
|
||||
X = new int[]
|
||||
_x = new int[]
|
||||
{
|
||||
164650,
|
||||
47429,
|
||||
47391
|
||||
};
|
||||
Y = new int[]
|
||||
_y = new int[]
|
||||
{
|
||||
-74121,
|
||||
-56923,
|
||||
-56929
|
||||
};
|
||||
Z = new int[]
|
||||
_z = new int[]
|
||||
{
|
||||
-2871,
|
||||
-2383,
|
||||
-2370
|
||||
};
|
||||
Text = new String[]
|
||||
_text = new String[]
|
||||
{
|
||||
"PLAYERNAME! Pursued to here! However, I jumped out of the Banshouren boundaries! You look at the giant as the sign of power!",
|
||||
"... Oh ... good! So it was ... let's begin!",
|
||||
|
@@ -258,12 +258,9 @@ public class Q111_ElrokianHuntersProof extends Quest
|
||||
case 22201:
|
||||
case 22202:
|
||||
case 22219:
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(CLAW, 1, 10, 650000))
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(CLAW, 1, 10, 650000) && (st.getQuestItemsCount(BONE) >= 10) && (st.getQuestItemsCount(SKIN) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(BONE) >= 10) && (st.getQuestItemsCount(SKIN) >= 10))
|
||||
{
|
||||
st.set("cond", "11");
|
||||
}
|
||||
st.set("cond", "11");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -271,12 +268,9 @@ public class Q111_ElrokianHuntersProof extends Quest
|
||||
case 22209:
|
||||
case 22210:
|
||||
case 22221:
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(SKIN, 1, 10, 650000))
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(SKIN, 1, 10, 650000) && (st.getQuestItemsCount(CLAW) >= 10) && (st.getQuestItemsCount(BONE) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(CLAW) >= 10) && (st.getQuestItemsCount(BONE) >= 10))
|
||||
{
|
||||
st.set("cond", "11");
|
||||
}
|
||||
st.set("cond", "11");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -284,12 +278,9 @@ public class Q111_ElrokianHuntersProof extends Quest
|
||||
case 22204:
|
||||
case 22205:
|
||||
case 22220:
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(BONE, 1, 10, 650000))
|
||||
if ((st.getInt("cond") == 10) && st.dropItems(BONE, 1, 10, 650000) && (st.getQuestItemsCount(CLAW) >= 10) && (st.getQuestItemsCount(SKIN) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(CLAW) >= 10) && (st.getQuestItemsCount(SKIN) >= 10))
|
||||
{
|
||||
st.set("cond", "11");
|
||||
}
|
||||
st.set("cond", "11");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -281,22 +281,16 @@ public class Q125_TheNameOfEvil_1 extends Quest
|
||||
final int npcId = npc.getNpcId();
|
||||
if (Util.contains(ORNITHOMIMUS, npcId))
|
||||
{
|
||||
if (st.dropItems(ORNITHOMIMUS_CLAW, 1, 2, 50000))
|
||||
if (st.dropItems(ORNITHOMIMUS_CLAW, 1, 2, 50000) && (st.getQuestItemsCount(DEINONYCHUS_BONE) == 2))
|
||||
{
|
||||
if (st.getQuestItemsCount(DEINONYCHUS_BONE) == 2)
|
||||
{
|
||||
st.set("cond", "4");
|
||||
}
|
||||
st.set("cond", "4");
|
||||
}
|
||||
}
|
||||
else if (Util.contains(DEINONYCHUS, npcId))
|
||||
{
|
||||
if (st.dropItems(DEINONYCHUS_BONE, 1, 2, 50000))
|
||||
if (st.dropItems(DEINONYCHUS_BONE, 1, 2, 50000) && (st.getQuestItemsCount(ORNITHOMIMUS_CLAW) == 2))
|
||||
{
|
||||
if (st.getQuestItemsCount(ORNITHOMIMUS_CLAW) == 2)
|
||||
{
|
||||
st.set("cond", "4");
|
||||
}
|
||||
st.set("cond", "4");
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
@@ -816,32 +816,23 @@ public class Q214_TrialOfTheScholar extends Quest
|
||||
|
||||
case SHACKLE_1:
|
||||
case SHACKLE_2:
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(SHACKLE_SCALP, 1, 2, 500000))
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(SHACKLE_SCALP, 1, 2, 500000) && (st.getQuestItemsCount(MONSTER_EYE_DESTROYER_SKIN) == 5) && (st.getQuestItemsCount(SHAMAN_NECKLACE) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MONSTER_EYE_DESTROYER_SKIN) == 5) && (st.getQuestItemsCount(SHAMAN_NECKLACE) == 5))
|
||||
{
|
||||
st.set("cond", "17");
|
||||
}
|
||||
st.set("cond", "17");
|
||||
}
|
||||
break;
|
||||
|
||||
case MONSTER_EYE_DESTROYER:
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(MONSTER_EYE_DESTROYER_SKIN, 1, 5, 500000))
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(MONSTER_EYE_DESTROYER_SKIN, 1, 5, 500000) && (st.getQuestItemsCount(SHACKLE_SCALP) == 2) && (st.getQuestItemsCount(SHAMAN_NECKLACE) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(SHACKLE_SCALP) == 2) && (st.getQuestItemsCount(SHAMAN_NECKLACE) == 5))
|
||||
{
|
||||
st.set("cond", "17");
|
||||
}
|
||||
st.set("cond", "17");
|
||||
}
|
||||
break;
|
||||
|
||||
case BREKA_ORC_SHAMAN:
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(SHAMAN_NECKLACE, 1, 5, 500000))
|
||||
if ((st.getInt("cond") == 16) && st.dropItems(SHAMAN_NECKLACE, 1, 5, 500000) && (st.getQuestItemsCount(SHACKLE_SCALP) == 2) && (st.getQuestItemsCount(MONSTER_EYE_DESTROYER_SKIN) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(SHACKLE_SCALP) == 2) && (st.getQuestItemsCount(MONSTER_EYE_DESTROYER_SKIN) == 5))
|
||||
{
|
||||
st.set("cond", "17");
|
||||
}
|
||||
st.set("cond", "17");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -853,42 +844,30 @@ public class Q214_TrialOfTheScholar extends Quest
|
||||
break;
|
||||
|
||||
case MEDUSA:
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(MEDUSA_BLOOD, 1, 12))
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(MEDUSA_BLOOD, 1, 12) && (st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
st.set("cond", "29");
|
||||
}
|
||||
st.set("cond", "29");
|
||||
}
|
||||
break;
|
||||
|
||||
case GHOUL:
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(GHOUL_SKIN, 1, 10))
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(GHOUL_SKIN, 1, 10) && (st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
st.set("cond", "29");
|
||||
}
|
||||
st.set("cond", "29");
|
||||
}
|
||||
break;
|
||||
|
||||
case FETTERED_SOUL:
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(FETTERED_SOUL_ICHOR, 1, 5))
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(FETTERED_SOUL_ICHOR, 1, 5) && (st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(ENCHANTED_GARGOYLE_NAIL) == 5))
|
||||
{
|
||||
st.set("cond", "29");
|
||||
}
|
||||
st.set("cond", "29");
|
||||
}
|
||||
break;
|
||||
|
||||
case ENCHANTED_GARGOYLE:
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(ENCHANTED_GARGOYLE_NAIL, 1, 5))
|
||||
if ((st.getInt("cond") == 28) && st.dropItemsAlways(ENCHANTED_GARGOYLE_NAIL, 1, 5) && (st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MEDUSA_BLOOD) == 12) && (st.getQuestItemsCount(GHOUL_SKIN) == 10) && (st.getQuestItemsCount(FETTERED_SOUL_ICHOR) == 5))
|
||||
{
|
||||
st.set("cond", "29");
|
||||
}
|
||||
st.set("cond", "29");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -446,12 +446,9 @@ public class Q216_TrialOfTheGuildsman extends Quest
|
||||
if (st.hasQuestItems(PINTER_INSTRUCTIONS))
|
||||
{
|
||||
// Different cases if player is a wannabe BH or WS.
|
||||
if (st.dropItemsAlways(AMBER_BEAD, ((player.getClassId() == ClassId.SCAVENGER) && (npc.getIsSpoiledBy() == player.getObjectId())) ? 10 : 5, 70))
|
||||
if (st.dropItemsAlways(AMBER_BEAD, ((player.getClassId() == ClassId.SCAVENGER) && (npc.getIsSpoiledBy() == player.getObjectId())) ? 10 : 5, 70) && (player.getClassId() == ClassId.ARTISAN) && Rnd.nextBoolean())
|
||||
{
|
||||
if ((player.getClassId() == ClassId.ARTISAN) && Rnd.nextBoolean())
|
||||
{
|
||||
st.giveItems(AMBER_LUMP, 1);
|
||||
}
|
||||
st.giveItems(AMBER_LUMP, 1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -492,22 +492,16 @@ public class Q218_TestimonyOfLife extends Quest
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
case 20550:
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(PURE_MITHRIL_ORE, 1, 10, 500000))
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(PURE_MITHRIL_ORE, 1, 10, 500000) && (st.getQuestItemsCount(WYRM_TALON) >= 20) && (st.getQuestItemsCount(ANT_SOLDIER_ACID) >= 20))
|
||||
{
|
||||
if ((st.getQuestItemsCount(WYRM_TALON) >= 20) && (st.getQuestItemsCount(ANT_SOLDIER_ACID) >= 20))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
case 20176:
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(WYRM_TALON, 1, 20, 500000))
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(WYRM_TALON, 1, 20, 500000) && (st.getQuestItemsCount(PURE_MITHRIL_ORE) >= 10) && (st.getQuestItemsCount(ANT_SOLDIER_ACID) >= 20))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PURE_MITHRIL_ORE) >= 10) && (st.getQuestItemsCount(ANT_SOLDIER_ACID) >= 20))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -516,12 +510,9 @@ public class Q218_TestimonyOfLife extends Quest
|
||||
case 20086:
|
||||
case 20087:
|
||||
case 20088:
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(ANT_SOLDIER_ACID, 1, 20, 800000))
|
||||
if ((st.getInt("cond") == 4) && st.dropItems(ANT_SOLDIER_ACID, 1, 20, 800000) && (st.getQuestItemsCount(PURE_MITHRIL_ORE) >= 10) && (st.getQuestItemsCount(WYRM_TALON) >= 20))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PURE_MITHRIL_ORE) >= 10) && (st.getQuestItemsCount(WYRM_TALON) >= 20))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -551,33 +551,24 @@ public class Q219_TestimonyOfFate extends Quest
|
||||
break;
|
||||
|
||||
case DEAD_SEEKER:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(DEAD_SEEKER_DUNG, 1, 10, CHANCES.get(npcId)))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(DEAD_SEEKER_DUNG, 1, 10, CHANCES.get(npcId)) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
case TYRANT:
|
||||
case TYRANT_KINGPIN:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(TYRANT_BLOOD, 1, 10, CHANCES.get(npcId)))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(TYRANT_BLOOD, 1, 10, CHANCES.get(npcId)) && (st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
case MEDUSA:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MEDUSA_ICHOR, 1, 10, CHANCES.get(npcId)))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MEDUSA_ICHOR, 1, 10, CHANCES.get(npcId)) && (st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -585,22 +576,16 @@ public class Q219_TestimonyOfFate extends Quest
|
||||
case MARSH_STAKATO_WORKER:
|
||||
case MARSH_STAKATO_SOLDIER:
|
||||
case MARSH_STAKATO_DRONE:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(NIGHTSHADE_ROOT, 1, 10, CHANCES.get(npcId)))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(NIGHTSHADE_ROOT, 1, 10, CHANCES.get(npcId)) && (st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(MARSH_SPIDER_FLUIDS) >= 10))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
case MARSH_SPIDER:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MARSH_SPIDER_FLUIDS, 1, 10, CHANCES.get(npcId)))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MARSH_SPIDER_FLUIDS, 1, 10, CHANCES.get(npcId)) && (st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(DEAD_SEEKER_DUNG) >= 10) && (st.getQuestItemsCount(TYRANT_BLOOD) >= 10) && (st.getQuestItemsCount(MEDUSA_ICHOR) >= 10) && (st.getQuestItemsCount(NIGHTSHADE_ROOT) >= 10))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -233,102 +233,72 @@ public class Q222_TestOfTheDuelist extends Quest
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
case PUNCHER:
|
||||
if (st.dropItemsAlways(PUNCHER_SHARD, 1, 10))
|
||||
if (st.dropItemsAlways(PUNCHER_SHARD, 1, 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case NOBLE_ANT_LEADER:
|
||||
if (st.dropItemsAlways(NOBLE_ANT_FEELER, 1, 10))
|
||||
if (st.dropItemsAlways(NOBLE_ANT_FEELER, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case MARSH_STAKATO_DRONE:
|
||||
if (st.dropItemsAlways(DRONE_CHITIN, 1, 10))
|
||||
if (st.dropItemsAlways(DRONE_CHITIN, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case DEAD_SEEKER:
|
||||
if (st.dropItemsAlways(DEAD_SEEKER_FANG, 1, 10))
|
||||
if (st.dropItemsAlways(DEAD_SEEKER_FANG, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case BREKA_ORC_OVERLORD:
|
||||
if (st.dropItemsAlways(OVERLORD_NECKLACE, 1, 10))
|
||||
if (st.dropItemsAlways(OVERLORD_NECKLACE, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case FETTERED_SOUL:
|
||||
if (st.dropItemsAlways(FETTERED_SOUL_CHAIN, 1, 10))
|
||||
if (st.dropItemsAlways(FETTERED_SOUL_CHAIN, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case LETO_LIZARDMAN_OVERLORD:
|
||||
if (st.dropItemsAlways(CHIEF_AMULET, 1, 10))
|
||||
if (st.dropItemsAlways(CHIEF_AMULET, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case ENCHANTED_MONSTEREYE:
|
||||
if (st.dropItemsAlways(ENCHANTED_EYE_MEAT, 1, 10))
|
||||
if (st.dropItemsAlways(ENCHANTED_EYE_MEAT, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case TAMLIN_ORC:
|
||||
if (st.dropItemsAlways(TAMRIN_ORC_RING, 1, 10))
|
||||
if (st.dropItemsAlways(TAMRIN_ORC_RING, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
|
||||
case TAMLIN_ORC_ARCHER:
|
||||
if (st.dropItemsAlways(TAMRIN_ORC_ARROW, 1, 10))
|
||||
if (st.dropItemsAlways(TAMRIN_ORC_ARROW, 1, 10) && (st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(PUNCHER_SHARD) >= 10) && (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10) && (st.getQuestItemsCount(DRONE_CHITIN) >= 10) && (st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10) && (st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10) && (st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10) && (st.getQuestItemsCount(CHIEF_AMULET) >= 10) && (st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10) && (st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
}
|
||||
st.set("cond", "3");
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -338,52 +308,37 @@ public class Q222_TestOfTheDuelist extends Quest
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
case EXCURO:
|
||||
if (st.dropItemsAlways(EXCURO_SKIN, 1, 3))
|
||||
if (st.dropItemsAlways(EXCURO_SKIN, 1, 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
case KRATOR:
|
||||
if (st.dropItemsAlways(KRATOR_SHARD, 1, 3))
|
||||
if (st.dropItemsAlways(KRATOR_SHARD, 1, 3) && (st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
case LAKIN:
|
||||
if (st.dropItemsAlways(LAKIN_MACE, 1, 3))
|
||||
if (st.dropItemsAlways(LAKIN_MACE, 1, 3) && (st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
case GRANDIS:
|
||||
if (st.dropItemsAlways(GRANDIS_SKIN, 1, 3))
|
||||
if (st.dropItemsAlways(GRANDIS_SKIN, 1, 3) && (st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
|
||||
case TIMAK_ORC_OVERLORD:
|
||||
if (st.dropItemsAlways(TIMAK_ORC_BELT, 1, 3))
|
||||
if (st.dropItemsAlways(TIMAK_ORC_BELT, 1, 3) && (st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(EXCURO_SKIN) >= 3) && (st.getQuestItemsCount(KRATOR_SHARD) >= 3) && (st.getQuestItemsCount(LAKIN_MACE) >= 3) && (st.getQuestItemsCount(GRANDIS_SKIN) >= 3))
|
||||
{
|
||||
st.set("cond", "5");
|
||||
}
|
||||
st.set("cond", "5");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -407,32 +407,23 @@ public class Q223_TestOfTheChampion extends Quest
|
||||
|
||||
case HARPY:
|
||||
case HARPY_MATRIARCH:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(HARPY_EGG, 1, 30, 500000))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(HARPY_EGG, 1, 30, 500000) && (st.getQuestItemsCount(MEDUSA_VENOM) == 30) && (st.getQuestItemsCount(WINDSUS_BILE) == 30))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MEDUSA_VENOM) == 30) && (st.getQuestItemsCount(WINDSUS_BILE) == 30))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
case MEDUSA:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MEDUSA_VENOM, 1, 30, 500000))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(MEDUSA_VENOM, 1, 30, 500000) && (st.getQuestItemsCount(HARPY_EGG) == 30) && (st.getQuestItemsCount(WINDSUS_BILE) == 30))
|
||||
{
|
||||
if ((st.getQuestItemsCount(HARPY_EGG) == 30) && (st.getQuestItemsCount(WINDSUS_BILE) == 30))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
case WINDSUS:
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(WINDSUS_BILE, 1, 30, 500000))
|
||||
if ((st.getInt("cond") == 6) && st.dropItems(WINDSUS_BILE, 1, 30, 500000) && (st.getQuestItemsCount(HARPY_EGG) == 30) && (st.getQuestItemsCount(MEDUSA_VENOM) == 30))
|
||||
{
|
||||
if ((st.getQuestItemsCount(HARPY_EGG) == 30) && (st.getQuestItemsCount(MEDUSA_VENOM) == 30))
|
||||
{
|
||||
st.set("cond", "7");
|
||||
}
|
||||
st.set("cond", "7");
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -25,8 +25,8 @@ import org.l2jmobius.gameserver.model.quest.State;
|
||||
|
||||
public class Q320_BonesTellTheFuture extends Quest
|
||||
{
|
||||
// Quest item
|
||||
private final int BONE_FRAGMENT = 809;
|
||||
// Item
|
||||
private static final int BONE_FRAGMENT = 809;
|
||||
|
||||
public Q320_BonesTellTheFuture()
|
||||
{
|
||||
|
@@ -229,17 +229,17 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
registerQuestItems(questItems.stream().mapToInt(i -> i).toArray());
|
||||
}
|
||||
|
||||
private static int CalcItemsConds(QuestState st, int[][][] ItemsConds)
|
||||
private static int CalcItemsConds(QuestState st, int[][][] itemConds)
|
||||
{
|
||||
int result = 0;
|
||||
for (int[][] ItemsCond : ItemsConds)
|
||||
for (int[][] itemCond : itemConds)
|
||||
{
|
||||
int count = 0;
|
||||
for (int i : ItemsCond[0])
|
||||
for (int i : itemCond[0])
|
||||
{
|
||||
count += st.getQuestItemsCount(i);
|
||||
}
|
||||
if (count >= ItemsCond[1][0])
|
||||
if (count >= itemCond[1][0])
|
||||
{
|
||||
++result;
|
||||
}
|
||||
@@ -247,11 +247,11 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
return result;
|
||||
}
|
||||
|
||||
private void DelItemsConds(QuestState st, int[][][] ItemsConds)
|
||||
private void DelItemsConds(QuestState st, int[][][] itemConds)
|
||||
{
|
||||
for (int[][] ItemsCond : ItemsConds)
|
||||
for (int[][] itemCond : itemConds)
|
||||
{
|
||||
for (int i : ItemsCond[0])
|
||||
for (int i : itemCond[0])
|
||||
{
|
||||
st.takeItems(i, -1);
|
||||
}
|
||||
@@ -270,9 +270,9 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
return -1;
|
||||
}
|
||||
|
||||
private static boolean Blood_Crystal2Adena(QuestState st, int Blood_Crystal_Level)
|
||||
private static boolean Blood_Crystal2Adena(QuestState st, int bloodCrystalLevel)
|
||||
{
|
||||
if (Blood_Crystal_Level < 2)
|
||||
if (bloodCrystalLevel < 2)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -280,7 +280,7 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
{
|
||||
st.takeItems(i, -1);
|
||||
}
|
||||
st.giveItems(57, (3400 * (int) Math.pow(2.0, Blood_Crystal_Level - 2)));
|
||||
st.giveItems(57, (3400 * (int) Math.pow(2.0, bloodCrystalLevel - 2)));
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -327,10 +327,10 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
list[3] = 6 + Rnd.get(6);
|
||||
list[4] = Rnd.get(12);
|
||||
}
|
||||
boolean sort_flag;
|
||||
boolean sortFlag;
|
||||
do
|
||||
{
|
||||
sort_flag = false;
|
||||
sortFlag = false;
|
||||
for (int j = 1; j < list.length; ++j)
|
||||
{
|
||||
if (list[j] < list[j - 1])
|
||||
@@ -338,11 +338,11 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
final int tmp = list[j];
|
||||
list[j] = list[j - 1];
|
||||
list[j - 1] = tmp;
|
||||
sort_flag = true;
|
||||
sortFlag = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
while (sort_flag);
|
||||
while (sortFlag);
|
||||
int packedlist = 0;
|
||||
try
|
||||
{
|
||||
@@ -350,7 +350,7 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
// Ignore.
|
||||
}
|
||||
st.set("list", String.valueOf(packedlist));
|
||||
}
|
||||
@@ -517,21 +517,21 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
if (event.startsWith("30745-request-") && (state == 2))
|
||||
{
|
||||
event = event.replaceFirst("30745-request-", "");
|
||||
int request_id;
|
||||
int requestId;
|
||||
try
|
||||
{
|
||||
request_id = Integer.valueOf(event);
|
||||
requestId = Integer.parseInt(event);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
if (!isValidRequest(request_id))
|
||||
if (!isValidRequest(requestId))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
st.giveItems(request_id, 1);
|
||||
return "30745-" + request_id + ".htm";
|
||||
st.giveItems(requestId, 1);
|
||||
return "30745-" + requestId + ".htm";
|
||||
}
|
||||
}
|
||||
return event;
|
||||
@@ -691,67 +691,64 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
return null;
|
||||
}
|
||||
final int npcId = npc.getNpcId();
|
||||
int[][][] Items_Circle = null;
|
||||
int[][][] itemsCircle = null;
|
||||
if (st.getQuestItemsCount(TEST_INSTRUCTIONS1) > 0)
|
||||
{
|
||||
Items_Circle = ITEMS_1ST_CIRCLE;
|
||||
itemsCircle = ITEMS_1ST_CIRCLE;
|
||||
}
|
||||
else if (st.getQuestItemsCount(TEST_INSTRUCTIONS2) > 0)
|
||||
{
|
||||
Items_Circle = ITEMS_2ND_CIRCLE;
|
||||
itemsCircle = ITEMS_2ND_CIRCLE;
|
||||
}
|
||||
if (Items_Circle != null)
|
||||
if (itemsCircle != null)
|
||||
{
|
||||
for (int[][] ItemsCond : Items_Circle)
|
||||
for (int[][] itemCond : itemsCircle)
|
||||
{
|
||||
for (int i = 2; i < ItemsCond.length; ++i)
|
||||
for (int i = 2; i < itemCond.length; ++i)
|
||||
{
|
||||
if (npcId == ItemsCond[i][0])
|
||||
if ((npcId == itemCond[i][0]) && (Rnd.get(100) < itemCond[i][1]) && (st.getQuestItemsCount(itemCond[0][0]) < itemCond[1][0]))
|
||||
{
|
||||
if ((Rnd.get(100) < ItemsCond[i][1]) && (st.getQuestItemsCount(ItemsCond[0][0]) < ItemsCond[1][0]))
|
||||
{
|
||||
st.giveItems(ItemsCond[0][0], 1);
|
||||
}
|
||||
st.giveItems(itemCond[0][0], 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (st.getQuestItemsCount(TEST_INSTRUCTIONS1) > 0)
|
||||
{
|
||||
final long Hakas_Head_count = st.getQuestItemsCount(HAKAS_HEAD);
|
||||
final long Jakas_Head_count = st.getQuestItemsCount(JAKAS_HEAD);
|
||||
final long Markas_Head_count = st.getQuestItemsCount(MARKAS_HEAD);
|
||||
final long hakasHeadCount = st.getQuestItemsCount(HAKAS_HEAD);
|
||||
final long jakasHeadCount = st.getQuestItemsCount(JAKAS_HEAD);
|
||||
final long markasHeadCount = st.getQuestItemsCount(MARKAS_HEAD);
|
||||
if (npcId == BREKA_ORC_WARRIOR)
|
||||
{
|
||||
if ((Hakas_Head_count == 0) && (Rnd.get(100) < 10))
|
||||
if ((hakasHeadCount == 0) && (Rnd.get(100) < 10))
|
||||
{
|
||||
st.addSpawn(BREKA_OVERLORD_HAKA, npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 300000);
|
||||
}
|
||||
else if ((Jakas_Head_count == 0) && (Rnd.get(100) < 10))
|
||||
else if ((jakasHeadCount == 0) && (Rnd.get(100) < 10))
|
||||
{
|
||||
st.addSpawn(BREKA_OVERLORD_JAKA, npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 300000);
|
||||
}
|
||||
else if ((Markas_Head_count == 0) && (Rnd.get(100) < 10))
|
||||
else if ((markasHeadCount == 0) && (Rnd.get(100) < 10))
|
||||
{
|
||||
st.addSpawn(BREKA_OVERLORD_MARKA, npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 300000);
|
||||
}
|
||||
}
|
||||
else if (npcId == BREKA_OVERLORD_HAKA)
|
||||
{
|
||||
if (Hakas_Head_count == 0)
|
||||
if (hakasHeadCount == 0)
|
||||
{
|
||||
st.giveItems(HAKAS_HEAD, 1);
|
||||
}
|
||||
}
|
||||
else if (npcId == BREKA_OVERLORD_JAKA)
|
||||
{
|
||||
if (Jakas_Head_count == 0)
|
||||
if (jakasHeadCount == 0)
|
||||
{
|
||||
st.giveItems(JAKAS_HEAD, 1);
|
||||
}
|
||||
}
|
||||
else if (npcId == BREKA_OVERLORD_MARKA)
|
||||
{
|
||||
if (Markas_Head_count == 0)
|
||||
if (markasHeadCount == 0)
|
||||
{
|
||||
st.giveItems(MARKAS_HEAD, 1);
|
||||
}
|
||||
@@ -861,20 +858,17 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
}
|
||||
if (request != null)
|
||||
{
|
||||
if (request.droplist.containsKey(npcId))
|
||||
if (request.droplist.containsKey(npcId) && (Rnd.get(100) < request.droplist.get(npcId)) && (st.getQuestItemsCount(request.request_item) < request.request_count))
|
||||
{
|
||||
if ((Rnd.get(100) < request.droplist.get(npcId)) && (st.getQuestItemsCount(request.request_item) < request.request_count))
|
||||
{
|
||||
st.giveItems(request.request_item, 1);
|
||||
}
|
||||
st.giveItems(request.request_item, 1);
|
||||
}
|
||||
if (request.spawnlist.containsKey(npcId) && (st.getQuestItemsCount(request.request_item) < request.request_count))
|
||||
{
|
||||
final int[] spawn_n_chance = request.spawnlist.get(npcId);
|
||||
if (Rnd.get(100) < spawn_n_chance[1])
|
||||
final int[] spawnChance = request.spawnlist.get(npcId);
|
||||
if (Rnd.get(100) < spawnChance[1])
|
||||
{
|
||||
st.addSpawn(spawn_n_chance[0], npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 300000);
|
||||
if (spawn_n_chance[0] == 27149)
|
||||
st.addSpawn(spawnChance[0], npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 300000);
|
||||
if (spawnChance[0] == 27149)
|
||||
{
|
||||
npc.broadcastNpcSay("Show me the pretty sparkling things! They're all mine!");
|
||||
}
|
||||
@@ -912,25 +906,25 @@ public class Q335_TheSongOfTheHunter extends Quest
|
||||
text = txt;
|
||||
}
|
||||
|
||||
public Request addDrop(int kill_mob_id, int chance)
|
||||
public Request addDrop(int killMobId, int chance)
|
||||
{
|
||||
droplist.put(kill_mob_id, chance);
|
||||
droplist.put(killMobId, chance);
|
||||
return this;
|
||||
}
|
||||
|
||||
public Request addSpawn(int kill_mob_id, int spawn_mob_id, int chance)
|
||||
public Request addSpawn(int killMobId, int spawnMobId, int chance)
|
||||
{
|
||||
try
|
||||
{
|
||||
spawnlist.put(kill_mob_id, new int[]
|
||||
spawnlist.put(killMobId, new int[]
|
||||
{
|
||||
spawn_mob_id,
|
||||
spawnMobId,
|
||||
chance
|
||||
});
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
// Ignore.
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
@@ -243,12 +243,9 @@ public class Q340_SubjugationOfLizardmen extends Quest
|
||||
case 20024:
|
||||
case 20027:
|
||||
case 20030:
|
||||
if (st.getInt("cond") == 3)
|
||||
if ((st.getInt("cond") == 3) && st.dropItems(HOLY, 1, 1, 100000))
|
||||
{
|
||||
if (st.dropItems(HOLY, 1, 1, 100000))
|
||||
{
|
||||
st.dropItems(ROSARY, 1, 1, 100000);
|
||||
}
|
||||
st.dropItems(ROSARY, 1, 1, 100000);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -29,7 +29,7 @@ public class Q358_IllegitimateChildOfAGoddess extends Quest
|
||||
private static final int SCALE = 5868;
|
||||
|
||||
// Reward
|
||||
private static final int REWARD[] =
|
||||
private static final int[] REWARD =
|
||||
{
|
||||
6329,
|
||||
6331,
|
||||
|
@@ -37,7 +37,7 @@ public class Q359_ForSleeplessDeadmen extends Quest
|
||||
private static final int DOOM_ARCHER = 21008;
|
||||
|
||||
// Reward
|
||||
private static final int REWARD[] =
|
||||
private static final int[] REWARD =
|
||||
{
|
||||
6341,
|
||||
6342,
|
||||
|
@@ -38,7 +38,7 @@ public class Q367_ElectrifyingRecharge extends Quest
|
||||
private static final int TITAN_LAMP_5 = 5880;
|
||||
|
||||
// Reward
|
||||
private static final int REWARD[] =
|
||||
private static final int[] REWARD =
|
||||
{
|
||||
4553,
|
||||
4554,
|
||||
|
@@ -29,8 +29,8 @@ import org.l2jmobius.gameserver.model.quest.State;
|
||||
public class Q373_SupplierOfReagents extends Quest
|
||||
{
|
||||
// Variables
|
||||
private static final String _ingredient = "ingredient";
|
||||
private static final String _catalyst = "catalyst";
|
||||
private static final String INGREDIENT = "ingredient";
|
||||
private static final String CATALYST = "catalyst";
|
||||
|
||||
// NPCs
|
||||
private static final int WESLEY = 30166;
|
||||
@@ -322,7 +322,7 @@ public class Q373_SupplierOfReagents extends Quest
|
||||
break;
|
||||
}
|
||||
|
||||
st.set(_ingredient, Integer.toString(regentId));
|
||||
st.set(INGREDIENT, Integer.toString(regentId));
|
||||
return htmltext;
|
||||
}
|
||||
htmltext = "31149-04.htm";
|
||||
@@ -337,12 +337,12 @@ public class Q373_SupplierOfReagents extends Quest
|
||||
return "31149-04.htm";
|
||||
}
|
||||
|
||||
st.set(_catalyst, Integer.toString(catalyst));
|
||||
st.set(CATALYST, Integer.toString(catalyst));
|
||||
}
|
||||
else if (event.startsWith("31149-12-"))
|
||||
{
|
||||
int regent = st.getInt(_ingredient);
|
||||
int catalyst = st.getInt(_catalyst);
|
||||
int regent = st.getInt(INGREDIENT);
|
||||
int catalyst = st.getInt(CATALYST);
|
||||
|
||||
for (int[] formula : FORMULAS)
|
||||
{
|
||||
@@ -367,7 +367,7 @@ public class Q373_SupplierOfReagents extends Quest
|
||||
st.takeItems(catalyst, 1);
|
||||
|
||||
int tempIndex = Integer.parseInt(event.substring(9, 10));
|
||||
for (int temperature[] : TEMPERATURES)
|
||||
for (int[] temperature : TEMPERATURES)
|
||||
{
|
||||
if (temperature[0] != tempIndex)
|
||||
{
|
||||
|
@@ -167,32 +167,23 @@ public class Q380_BringOutTheFlavorOfIngredients extends Quest
|
||||
switch (npc.getNpcId())
|
||||
{
|
||||
case DIRE_WOLF:
|
||||
if (st.dropItems(RITRON_FRUIT, 1, 4, 100000))
|
||||
if (st.dropItems(RITRON_FRUIT, 1, 4, 100000) && (st.getQuestItemsCount(MOON_FACE_FLOWER) == 20) && (st.getQuestItemsCount(LEECH_FLUIDS) == 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(MOON_FACE_FLOWER) == 20) && (st.getQuestItemsCount(LEECH_FLUIDS) == 10))
|
||||
{
|
||||
st.set("cond", "2");
|
||||
}
|
||||
st.set("cond", "2");
|
||||
}
|
||||
break;
|
||||
|
||||
case KADIF_WEREWOLF:
|
||||
if (st.dropItems(MOON_FACE_FLOWER, 1, 20, 500000))
|
||||
if (st.dropItems(MOON_FACE_FLOWER, 1, 20, 500000) && (st.getQuestItemsCount(RITRON_FRUIT) == 4) && (st.getQuestItemsCount(LEECH_FLUIDS) == 10))
|
||||
{
|
||||
if ((st.getQuestItemsCount(RITRON_FRUIT) == 4) && (st.getQuestItemsCount(LEECH_FLUIDS) == 10))
|
||||
{
|
||||
st.set("cond", "2");
|
||||
}
|
||||
st.set("cond", "2");
|
||||
}
|
||||
break;
|
||||
|
||||
case GIANT_MIST_LEECH:
|
||||
if (st.dropItems(LEECH_FLUIDS, 1, 10, 500000))
|
||||
if (st.dropItems(LEECH_FLUIDS, 1, 10, 500000) && (st.getQuestItemsCount(RITRON_FRUIT) == 4) && (st.getQuestItemsCount(MOON_FACE_FLOWER) == 20))
|
||||
{
|
||||
if ((st.getQuestItemsCount(RITRON_FRUIT) == 4) && (st.getQuestItemsCount(MOON_FACE_FLOWER) == 20))
|
||||
{
|
||||
st.set("cond", "2");
|
||||
}
|
||||
st.set("cond", "2");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ import org.l2jmobius.gameserver.model.quest.State;
|
||||
public class Q385_YokeOfThePast extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int GATEKEEPER_ZIGGURAT[] =
|
||||
private static final int[] GATEKEEPER_ZIGGURAT =
|
||||
{
|
||||
31095,
|
||||
31096,
|
||||
|
@@ -173,29 +173,27 @@ public class Q386_StolenDignity extends Quest
|
||||
}
|
||||
|
||||
final Integer chance = DROP_CHANCES.get(npc.getNpcId());
|
||||
if (chance != null)
|
||||
if ((chance != null) && (Rnd.get(100) < chance))
|
||||
{
|
||||
if (Rnd.get(100) < chance)
|
||||
{
|
||||
st.giveItems(STOLEN_INFERIUM_ORE, 1);
|
||||
}
|
||||
st.giveItems(STOLEN_INFERIUM_ORE, 1);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static class Bingo extends ai.others.Bingo
|
||||
{
|
||||
protected static final String msg_begin = "I've arranged the numbers 1 through 9 on the grid. Don't peek!<br>Let me have the " + REQUIRED_STOLEN_INFERIUM_ORE + " Infernium Ores. Too many players try to run away without paying when it becomes obvious that they're losing...<br>OK, select six numbers between 1 and 9. Choose the %choicenum% number.";
|
||||
protected static final String msg_again = "You've already chosen that number. Make your %choicenum% choice again.";
|
||||
protected static final String msg_0lines = "Wow! How unlucky can you get? Your choices are highlighted in red below. As you can see, your choices didn't make a single line! Losing this badly is actually quite rare!<br>You look so sad, I feel bad for you... Wait here... <br>.<br>.<br>.<br>Take this... I hope it will bring you better luck in the future.";
|
||||
protected static final String msg_3lines = "Excellent! As you can see, you've formed three lines! Congratulations! As promised, I'll give you some unclaimed merchandise from the warehouse. Wait here...<br>.<br>.<br>.<br>Whew, it's dusty! OK, here you go. Do you like it?";
|
||||
protected static final String msg_lose = "Oh, too bad. Your choices didn't form three lines. You should try again... Your choices are highlighted in red.";
|
||||
// private static final String template_choice = "<a action=\"bypass -h Quest Q386_StolenDignity choice-%n%\">%n%</a> ";
|
||||
protected static final String MSG_BEGIN = "I've arranged the numbers 1 through 9 on the grid. Don't peek!<br>Let me have the " + REQUIRED_STOLEN_INFERIUM_ORE + " Infernium Ores. Too many players try to run away without paying when it becomes obvious that they're losing...<br>OK, select six numbers between 1 and 9. Choose the %choicenum% number.";
|
||||
protected static final String MSG_AGAIN = "You've already chosen that number. Make your %choicenum% choice again.";
|
||||
protected static final String MSG_ZERO_LINES = "Wow! How unlucky can you get? Your choices are highlighted in red below. As you can see, your choices didn't make a single line! Losing this badly is actually quite rare!<br>You look so sad, I feel bad for you... Wait here... <br>.<br>.<br>.<br>Take this... I hope it will bring you better luck in the future.";
|
||||
protected static final String MSG_THREE_LINES = "Excellent! As you can see, you've formed three lines! Congratulations! As promised, I'll give you some unclaimed merchandise from the warehouse. Wait here...<br>.<br>.<br>.<br>Whew, it's dusty! OK, here you go. Do you like it?";
|
||||
protected static final String MSG_LOSE = "Oh, too bad. Your choices didn't form three lines. You should try again... Your choices are highlighted in red.";
|
||||
private static final String TEMPLATE_CHOICE = "<a action=\"bypass -h Quest Q386_StolenDignity choice-%n%\">%n%</a> ";
|
||||
|
||||
private final QuestState _qs;
|
||||
|
||||
public Bingo(QuestState qs)
|
||||
{
|
||||
super("<a action=\"bypass -h Quest Q386_StolenDignity choice-%n%\">%n%</a> ");
|
||||
super(TEMPLATE_CHOICE);
|
||||
_qs = qs;
|
||||
}
|
||||
|
||||
|
@@ -213,12 +213,9 @@ public class Q401_PathToAWarrior extends Quest
|
||||
|
||||
case 20038:
|
||||
case 20043:
|
||||
if ((st.getInt("cond") == 5) && (st.getItemEquipped(Inventory.PAPERDOLL_RHAND) == RUSTED_BRONZE_SWORD_3))
|
||||
if ((st.getInt("cond") == 5) && (st.getItemEquipped(Inventory.PAPERDOLL_RHAND) == RUSTED_BRONZE_SWORD_3) && st.dropItemsAlways(POISON_SPIDER_LEG, 1, 20))
|
||||
{
|
||||
if (st.dropItemsAlways(POISON_SPIDER_LEG, 1, 20))
|
||||
{
|
||||
st.set("cond", "6");
|
||||
}
|
||||
st.set("cond", "6");
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -409,66 +409,54 @@ public class Q415_PathToAMonk extends Quest
|
||||
break;
|
||||
|
||||
case 20014:
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(FELIM_LIZARDMAN_TOOTH, 1, 3))
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(FELIM_LIZARDMAN_TOOTH, 1, 3) && (st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 20017:
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(VUKU_ORC_TUSK, 1, 3))
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(VUKU_ORC_TUSK, 1, 3) && (st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3))
|
||||
{
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 20024:
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(LANG_KLIZARDMAN_TOOTH, 1, 3))
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(LANG_KLIZARDMAN_TOOTH, 1, 3) && (st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(RATMAN_FANG) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 20359:
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(RATMAN_FANG, 1, 3))
|
||||
if ((st.getInt("cond") == 11) && st.dropItemsAlways(RATMAN_FANG, 1, 3) && (st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
if ((st.getQuestItemsCount(LANG_KLIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(FELIM_LIZARDMAN_TOOTH) == 3) && (st.getQuestItemsCount(VUKU_ORC_TUSK) == 3))
|
||||
{
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
st.set("cond", "12");
|
||||
st.takeItems(VUKU_ORC_TUSK, -1);
|
||||
st.takeItems(RATMAN_FANG, -1);
|
||||
st.takeItems(LANG_KLIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(FELIM_LIZARDMAN_TOOTH, -1);
|
||||
st.takeItems(LEATHER_POUCH_4, 1);
|
||||
st.giveItems(LEATHER_POUCH_FULL_4, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -309,15 +309,12 @@ public class Q421_LittleWingsBigAdventure extends Quest
|
||||
final Creature originalKiller = isPet ? killer.getPet() : killer;
|
||||
|
||||
// Tree curses the killer.
|
||||
if (Rnd.get(100) < 30)
|
||||
if ((Rnd.get(100) < 30) && (originalKiller != null))
|
||||
{
|
||||
if (originalKiller != null)
|
||||
final Skill skill = SkillTable.getInstance().getInfo(4243, 1);
|
||||
if ((skill != null) && (originalKiller.getFirstEffect(skill) == null))
|
||||
{
|
||||
final Skill skill = SkillTable.getInstance().getInfo(4243, 1);
|
||||
if ((skill != null) && (originalKiller.getFirstEffect(skill) == null))
|
||||
{
|
||||
skill.getEffects(npc, originalKiller);
|
||||
}
|
||||
skill.getEffects(npc, originalKiller);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -76,6 +76,7 @@ public class Q501_ProofOfClanAlliance extends Quest
|
||||
|
||||
// Drops
|
||||
private static final Map<Integer, Integer> DROP = new HashMap<>();
|
||||
static
|
||||
{
|
||||
DROP.put(VANOR_SILENOS_SHAMAN, HERB_OF_VANOR);
|
||||
DROP.put(HARIT_LIZARDMAN_SHAMAN, HERB_OF_HARIT);
|
||||
@@ -107,6 +108,7 @@ public class Q501_ProofOfClanAlliance extends Quest
|
||||
|
||||
// Chests
|
||||
private static final List<Integer> CHESTS_ID = new ArrayList<>();
|
||||
static
|
||||
{
|
||||
CHESTS_ID.add(BOX_OF_ATHREA_1);
|
||||
CHESTS_ID.add(BOX_OF_ATHREA_2);
|
||||
@@ -344,7 +346,7 @@ public class Q501_ProofOfClanAlliance extends Quest
|
||||
st.takeItems(VOUCHER_OF_FAITH, -1);
|
||||
st.giveItems(PROOF_OF_ALLIANCE, 1);
|
||||
st.playSound(QuestState.SOUND_FINISH);
|
||||
htmltext = getAlreadyCompletedMsg();
|
||||
// htmltext = getAlreadyCompletedMsg();
|
||||
st.exitQuest(true);
|
||||
}
|
||||
else if (state > 0)
|
||||
|
@@ -83,7 +83,7 @@ public class Q503_PursuitOfClanAmbition extends Quest
|
||||
private static final int IMPERIAL_GRAVEKEEPER = 27181;
|
||||
|
||||
// DROPLIST
|
||||
private static final int DROPLIST[][] =
|
||||
private static final int[][] DROPLIST =
|
||||
{
|
||||
// npcId, cond, MaxCount, chance, item1, item2 (giants), item3 (giants)
|
||||
// @formatter:off
|
||||
@@ -234,10 +234,10 @@ public class Q503_PursuitOfClanAmbition extends Quest
|
||||
{
|
||||
st.set("cond", "9");
|
||||
npc.broadcastNpcSay("Blood and Honor");
|
||||
NpcInstance Sister1 = addSpawn(KALIS, 160665, 21209, -3710, npc.getHeading(), false, 180000);
|
||||
Sister1.broadcastNpcSay("Ambition and Power");
|
||||
NpcInstance Sister2 = addSpawn(ATHREA, 160665, 21291, -3710, npc.getHeading(), false, 180000);
|
||||
Sister2.broadcastNpcSay("War and Death");
|
||||
NpcInstance sister1 = addSpawn(KALIS, 160665, 21209, -3710, npc.getHeading(), false, 180000);
|
||||
sister1.broadcastNpcSay("Ambition and Power");
|
||||
NpcInstance sister2 = addSpawn(ATHREA, 160665, 21291, -3710, npc.getHeading(), false, 180000);
|
||||
sister2.broadcastNpcSay("War and Death");
|
||||
}
|
||||
// Coffer
|
||||
else if (event.equalsIgnoreCase("Open"))
|
||||
@@ -417,52 +417,43 @@ public class Q503_PursuitOfClanAmbition extends Quest
|
||||
break;
|
||||
|
||||
case LUTZ:
|
||||
if (player.isClanLeader())
|
||||
if (player.isClanLeader() && (cond == 2))
|
||||
{
|
||||
if (cond == 2)
|
||||
if (st.getInt("lutz") == 1)
|
||||
{
|
||||
if (st.getInt("lutz") == 1)
|
||||
{
|
||||
htmltext = "30762-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30762-01.htm";
|
||||
}
|
||||
htmltext = "30762-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30762-01.htm";
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case KURTZ:
|
||||
if (player.isClanLeader())
|
||||
if (player.isClanLeader() && (cond == 2))
|
||||
{
|
||||
if (cond == 2)
|
||||
if (st.getInt("kurt") == 1)
|
||||
{
|
||||
if (st.getInt("kurt") == 1)
|
||||
{
|
||||
htmltext = "30763-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30763-01.htm";
|
||||
}
|
||||
htmltext = "30763-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30763-01.htm";
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case FRITZ:
|
||||
if (player.isClanLeader())
|
||||
if (player.isClanLeader() && (cond == 2))
|
||||
{
|
||||
if (cond == 2)
|
||||
if (st.getInt("fritz") == 1)
|
||||
{
|
||||
if (st.getInt("fritz") == 1)
|
||||
{
|
||||
htmltext = "30761-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30761-01.htm";
|
||||
}
|
||||
htmltext = "30761-03.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30761-01.htm";
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -679,15 +670,9 @@ public class Q503_PursuitOfClanAmbition extends Quest
|
||||
NpcInstance coffer = addSpawn(COFFER, npc.getX(), npc.getY(), npc.getZ(), npc.getHeading(), true, 180000);
|
||||
coffer.broadcastNpcSay("Curse of the gods on the one that defiles the property of the empire!");
|
||||
}
|
||||
else if (element[0] == GRAVE_GUARD)
|
||||
else if ((element[0] == GRAVE_GUARD) && (st.getQuestItemsCount(IMP_KEYS) < 6) && (Rnd.get(50) < chance))
|
||||
{
|
||||
if (st.getQuestItemsCount(IMP_KEYS) < 6)
|
||||
{
|
||||
if (Rnd.get(50) < chance)
|
||||
{
|
||||
addSpawn(GRAVE_KEYMASTER, player.getX(), player.getY(), player.getZ(), player.getHeading(), true, 0);
|
||||
}
|
||||
}
|
||||
addSpawn(GRAVE_KEYMASTER, player.getX(), player.getY(), player.getZ(), player.getHeading(), true, 0);
|
||||
}
|
||||
}
|
||||
if ((item2 != 0) && (item3 != 0))
|
||||
|
@@ -60,13 +60,13 @@ public class Q504_CompetitionForTheBanditStronghold extends Quest
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
if (event == "a2.htm")
|
||||
if (event.equals("a2.htm"))
|
||||
{
|
||||
qs.set("cond", "1");
|
||||
qs.setState(State.STARTED);
|
||||
qs.playSound("ItemSound.quest_accept");
|
||||
}
|
||||
if (event == "a4.htm")
|
||||
if (event.equals("a4.htm"))
|
||||
{
|
||||
if (qs.getQuestItemsCount(TARLK_AMULET) == 30)
|
||||
{
|
||||
@@ -105,7 +105,7 @@ public class Q504_CompetitionForTheBanditStronghold extends Quest
|
||||
{
|
||||
return "a6.htm";
|
||||
}
|
||||
if (clan.getLeaderName() != player.getName())
|
||||
if (!clan.getLeaderName().equals(player.getName()))
|
||||
{
|
||||
return "a6.htm";
|
||||
}
|
||||
|
@@ -142,7 +142,7 @@ public class Q505_BloodOffering extends Quest
|
||||
if (!SevenSigns.getInstance().isSealValidationPeriod())
|
||||
{
|
||||
final String cabal = SevenSigns.getInstance().getPlayerData(player).getString("cabal");
|
||||
if (cabal == "dawn")
|
||||
if (cabal.equals("dawn"))
|
||||
{
|
||||
qs.setState(State.STARTED);
|
||||
qs.set("cond", "1");
|
||||
@@ -153,7 +153,7 @@ public class Q505_BloodOffering extends Quest
|
||||
}
|
||||
return "riftpost-1.htm";
|
||||
}
|
||||
if (cabal == "dusk")
|
||||
if (cabal.equals("dusk"))
|
||||
{
|
||||
qs.setState(State.STARTED);
|
||||
qs.set("cond", "1");
|
||||
|
@@ -50,7 +50,7 @@ public class Q508_AClansReputation extends Quest
|
||||
private static final int RAHHA = 25051;
|
||||
|
||||
// Reward list (itemId, minClanPoints, maxClanPoints)
|
||||
private static final int reward_list[][] =
|
||||
private static final int[][] REWARD_LIST =
|
||||
{
|
||||
{
|
||||
PALIBATI_QUEEN_THEMIS,
|
||||
@@ -91,7 +91,7 @@ public class Q508_AClansReputation extends Quest
|
||||
};
|
||||
|
||||
// Radar
|
||||
private static final int radar[][] =
|
||||
private static final int[][] radar =
|
||||
{
|
||||
{
|
||||
192346,
|
||||
@@ -210,9 +210,9 @@ public class Q508_AClansReputation extends Quest
|
||||
int raid = st.getInt("raid");
|
||||
if (st.getInt("cond") == 1)
|
||||
{
|
||||
int item = reward_list[raid - 1][1];
|
||||
int item = REWARD_LIST[raid - 1][1];
|
||||
int count = st.getQuestItemsCount(item);
|
||||
int reward = Rnd.get(reward_list[raid - 1][2], reward_list[raid - 1][3]);
|
||||
int reward = Rnd.get(REWARD_LIST[raid - 1][2], REWARD_LIST[raid - 1][3]);
|
||||
|
||||
if (count == 0)
|
||||
{
|
||||
@@ -245,9 +245,9 @@ public class Q508_AClansReputation extends Quest
|
||||
|
||||
// Reward only if quest is setup on good index.
|
||||
int raid = st.getInt("raid");
|
||||
if (reward_list[raid - 1][0] == npc.getNpcId())
|
||||
if (REWARD_LIST[raid - 1][0] == npc.getNpcId())
|
||||
{
|
||||
int item = reward_list[raid - 1][1];
|
||||
int item = REWARD_LIST[raid - 1][1];
|
||||
if (!st.hasQuestItems(item))
|
||||
{
|
||||
st.giveItems(item, 1);
|
||||
|
@@ -48,7 +48,7 @@ public class Q509_TheClansPrestige extends Quest
|
||||
private static final int QUEEN_SHYEED = 25514;
|
||||
|
||||
// Reward list (itemId, minClanPoints, maxClanPoints)
|
||||
private static final int reward_list[][] =
|
||||
private static final int[][] REWARD_LIST =
|
||||
{
|
||||
{
|
||||
DAIMON_THE_WHITE_EYED,
|
||||
@@ -83,7 +83,7 @@ public class Q509_TheClansPrestige extends Quest
|
||||
};
|
||||
|
||||
// Radar
|
||||
private static final int radar[][] =
|
||||
private static final int[][] radar =
|
||||
{
|
||||
{
|
||||
186320,
|
||||
@@ -197,9 +197,9 @@ public class Q509_TheClansPrestige extends Quest
|
||||
int raid = st.getInt("raid");
|
||||
if (st.getInt("cond") == 1)
|
||||
{
|
||||
int item = reward_list[raid - 1][1];
|
||||
int item = REWARD_LIST[raid - 1][1];
|
||||
int count = st.getQuestItemsCount(item);
|
||||
int reward = Rnd.get(reward_list[raid - 1][2], reward_list[raid - 1][3]);
|
||||
int reward = Rnd.get(REWARD_LIST[raid - 1][2], REWARD_LIST[raid - 1][3]);
|
||||
|
||||
if (count == 0)
|
||||
{
|
||||
@@ -232,9 +232,9 @@ public class Q509_TheClansPrestige extends Quest
|
||||
|
||||
// Reward only if quest is setup on good index.
|
||||
int raid = st.getInt("raid");
|
||||
if (reward_list[raid - 1][0] == npc.getNpcId())
|
||||
if (REWARD_LIST[raid - 1][0] == npc.getNpcId())
|
||||
{
|
||||
int item = reward_list[raid - 1][1];
|
||||
int item = REWARD_LIST[raid - 1][1];
|
||||
if (!st.hasQuestItems(item))
|
||||
{
|
||||
st.giveItems(item, 1);
|
||||
|
@@ -29,10 +29,10 @@ import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
public class Q510_AClansReputation extends Quest
|
||||
{
|
||||
// NPC
|
||||
private static final int Valdis = 31331;
|
||||
private static final int VALDIS = 31331;
|
||||
|
||||
// Quest Item
|
||||
private static final int Claw = 8767;
|
||||
private static final int CLAW = 8767;
|
||||
|
||||
// Reward
|
||||
private static final int CLAN_POINTS_REWARD = 50; // Quantity of points
|
||||
@@ -41,10 +41,10 @@ public class Q510_AClansReputation extends Quest
|
||||
{
|
||||
super(510, "A Clan's Reputation");
|
||||
|
||||
registerQuestItems(Claw);
|
||||
registerQuestItems(CLAW);
|
||||
|
||||
addStartNpc(Valdis);
|
||||
addTalkId(Valdis);
|
||||
addStartNpc(VALDIS);
|
||||
addTalkId(VALDIS);
|
||||
|
||||
addKillId(22215, 22216, 22217);
|
||||
}
|
||||
@@ -106,11 +106,11 @@ public class Q510_AClansReputation extends Quest
|
||||
case State.STARTED:
|
||||
if (st.getInt("cond") == 1)
|
||||
{
|
||||
int count = st.getQuestItemsCount(Claw);
|
||||
int count = st.getQuestItemsCount(CLAW);
|
||||
if (count > 0)
|
||||
{
|
||||
int reward = (CLAN_POINTS_REWARD * count);
|
||||
st.takeItems(Claw, -1);
|
||||
st.takeItems(CLAW, -1);
|
||||
Clan clan = player.getClan();
|
||||
clan.setReputationScore(clan.getReputationScore() + reward, true);
|
||||
player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.CLAN_QUEST_COMPLETED_AND_S1_POINTS_GAINED).addNumber(reward));
|
||||
@@ -139,7 +139,7 @@ public class Q510_AClansReputation extends Quest
|
||||
return null;
|
||||
}
|
||||
|
||||
st.giveItems(Claw, 1);
|
||||
st.giveItems(CLAW, 1);
|
||||
st.playSound(QuestState.SOUND_MIDDLE);
|
||||
|
||||
return null;
|
||||
|
@@ -41,7 +41,7 @@ public class Q604_DaimonTheWhiteEyed_Part2 extends Quest
|
||||
private static final int UNFINISHED_SUMMON_CRYSTAL = 7192;
|
||||
private static final int SUMMON_CRYSTAL = 7193;
|
||||
private static final int ESSENCE_OF_DAIMON = 7194;
|
||||
private static final int REWARD_DYE[] =
|
||||
private static final int[] REWARD_DYE =
|
||||
{
|
||||
4595,
|
||||
4596,
|
||||
@@ -78,6 +78,8 @@ public class Q604_DaimonTheWhiteEyed_Part2 extends Quest
|
||||
|
||||
case ALIVE:
|
||||
spawnNpc();
|
||||
// fallthrough
|
||||
|
||||
case DEAD:
|
||||
startQuestTimer("check", CHECK_INTERVAL, null, null, true);
|
||||
break;
|
||||
|
@@ -68,6 +68,8 @@ public class Q610_MagicalPowerOfWater_Part2 extends Quest
|
||||
|
||||
case ALIVE:
|
||||
spawnNpc();
|
||||
// fallthrough
|
||||
|
||||
case DEAD:
|
||||
startQuestTimer("check", CHECK_INTERVAL, null, null, true);
|
||||
break;
|
||||
|
@@ -68,6 +68,8 @@ public class Q616_MagicalPowerOfFire_Part2 extends Quest
|
||||
|
||||
case ALIVE:
|
||||
spawnNpc();
|
||||
// fallthrough
|
||||
|
||||
case DEAD:
|
||||
startQuestTimer("check", CHECK_INTERVAL, null, null, true);
|
||||
break;
|
||||
|
@@ -70,7 +70,7 @@ public class Q617_GatherTheFlames extends Quest
|
||||
}
|
||||
|
||||
// Rewards
|
||||
private static final int REWARD[] =
|
||||
private static final int[] REWARD =
|
||||
{
|
||||
6881,
|
||||
6883,
|
||||
@@ -135,7 +135,7 @@ public class Q617_GatherTheFlames extends Quest
|
||||
{
|
||||
htmltext = "32049-03.htm";
|
||||
st.takeItems(TORCH, 1200);
|
||||
st.giveItems(Integer.valueOf(event), 1);
|
||||
st.giveItems(Integer.parseInt(event), 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@@ -126,13 +126,13 @@ public class Q620_FourGoblets extends Quest
|
||||
htmltext = "31453-14.htm";
|
||||
}
|
||||
}
|
||||
else if (event.equals("31453-13.htm"))
|
||||
{
|
||||
if (st.getInt("cond") == 2)
|
||||
{
|
||||
htmltext = "31453-19.htm";
|
||||
}
|
||||
}
|
||||
// else if (event.equals("31453-13.htm"))
|
||||
// {
|
||||
// if (st.getInt("cond") == 2)
|
||||
// {
|
||||
// htmltext = "31453-19.htm";
|
||||
// }
|
||||
// }
|
||||
else if (event.equals("31453-18.htm"))
|
||||
{
|
||||
st.playSound(QuestState.SOUND_GIVEUP);
|
||||
|
@@ -41,7 +41,7 @@ public class Q625_TheFinestIngredients_Part2 extends Quest
|
||||
private static final int SOY_SAUCE_JAR = 7205;
|
||||
private static final int FOOD_FOR_BUMBALUMP = 7209;
|
||||
private static final int SPECIAL_YETI_MEAT = 7210;
|
||||
private static final int REWARD_DYE[] =
|
||||
private static final int[] REWARD_DYE =
|
||||
{
|
||||
4589,
|
||||
4590,
|
||||
@@ -78,6 +78,8 @@ public class Q625_TheFinestIngredients_Part2 extends Quest
|
||||
|
||||
case ALIVE:
|
||||
spawnNpc();
|
||||
// fallthrough
|
||||
|
||||
case DEAD:
|
||||
startQuestTimer("check", CHECK_INTERVAL, null, null, true);
|
||||
break;
|
||||
|
@@ -79,7 +79,7 @@ public class Q635_InTheDimensionalRift extends Quest
|
||||
|
||||
final int id = qs.getInt("id");
|
||||
final int count = qs.getInt("count");
|
||||
if (event == "5.htm")
|
||||
if (event.equals("5.htm"))
|
||||
{
|
||||
if (id > 0)
|
||||
{
|
||||
@@ -98,7 +98,7 @@ public class Q635_InTheDimensionalRift extends Quest
|
||||
qs.exitQuest(true);
|
||||
}
|
||||
}
|
||||
else if (event == "6.htm")
|
||||
else if (event.equals("6.htm"))
|
||||
{
|
||||
qs.exitQuest(true);
|
||||
}
|
||||
@@ -130,7 +130,7 @@ public class Q635_InTheDimensionalRift extends Quest
|
||||
qs.exitQuest(true);
|
||||
htmltext = "1a.htm";
|
||||
}
|
||||
else if (!(qs.getQuestItemsCount(DIMENSION_FRAGMENT) > 0))
|
||||
else if (qs.getQuestItemsCount(DIMENSION_FRAGMENT) <= 0)
|
||||
{
|
||||
htmltext = "3.htm";
|
||||
}
|
||||
|
@@ -52,13 +52,13 @@ public class Q636_TheTruthBeyondTheGate extends Quest
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
if (htmltext == "31329-04.htm")
|
||||
if (event.equals("31329-04.htm"))
|
||||
{
|
||||
qs.set("cond", "1");
|
||||
qs.setState(State.STARTED);
|
||||
qs.playSound("ItemSound.quest_accept");
|
||||
}
|
||||
else if (htmltext == "32010-02.htm")
|
||||
else if (event.equals("32010-02.htm"))
|
||||
{
|
||||
qs.playSound("ItemSound.quest_finish");
|
||||
qs.giveItems(MARK, 1);
|
||||
|
@@ -125,7 +125,7 @@ public class Q640_TheZeroHour extends Quest
|
||||
}
|
||||
else if (Util.isDigit(event))
|
||||
{
|
||||
int reward[] = REWARDS[Integer.parseInt(event)];
|
||||
int[] reward = REWARDS[Integer.parseInt(event)];
|
||||
|
||||
if (st.getQuestItemsCount(FANG_OF_STAKATO) >= reward[0])
|
||||
{
|
||||
|
@@ -93,7 +93,7 @@ public class Q644_GraveRobberAnnihilation extends Quest
|
||||
htmltext = "32017-04.htm";
|
||||
st.takeItems(ORC_GRAVE_GOODS, -1);
|
||||
|
||||
final int reward[] = REWARDS[Integer.parseInt(event)];
|
||||
final int[] reward = REWARDS[Integer.parseInt(event)];
|
||||
st.rewardItems(reward[0], reward[1]);
|
||||
|
||||
st.playSound(QuestState.SOUND_FINISH);
|
||||
|
@@ -91,7 +91,7 @@ public class Q645_GhostsOfBatur extends Quest
|
||||
htmltext = "32017-07.htm";
|
||||
st.takeItems(CURSED_GRAVE_GOODS, -1);
|
||||
|
||||
final int reward[] = REWARDS[Integer.parseInt(event)];
|
||||
final int[] reward = REWARDS[Integer.parseInt(event)];
|
||||
st.giveItems(reward[0], reward[1]);
|
||||
|
||||
st.playSound(QuestState.SOUND_FINISH);
|
||||
|
@@ -85,7 +85,7 @@ public class Q646_SignsOfRevolt extends Quest
|
||||
htmltext = "32016-07.htm";
|
||||
st.takeItems(CURSED_DOLL, -1);
|
||||
|
||||
final int reward[] = REWARDS[Integer.parseInt(event)];
|
||||
final int[] reward = REWARDS[Integer.parseInt(event)];
|
||||
st.giveItems(reward[0], reward[1]);
|
||||
|
||||
st.playSound(QuestState.SOUND_FINISH);
|
||||
|
@@ -168,14 +168,11 @@ public class Q648_AnIceMerchantsDream extends Quest
|
||||
{
|
||||
final QuestState st2 = player.getQuestState(Q115_TheOtherSideOfTruth.class.getSimpleName());
|
||||
htmltext = "32020-05.htm";
|
||||
if (st2 != null)
|
||||
if ((st2 != null) && (st2.getState() == State.COMPLETED))
|
||||
{
|
||||
if (st2.getState() == State.COMPLETED)
|
||||
{
|
||||
htmltext = "32020-10.htm";
|
||||
qs.playSound("ItemSound.quest_middle");
|
||||
qs.set("cond", "2");
|
||||
}
|
||||
htmltext = "32020-10.htm";
|
||||
qs.playSound("ItemSound.quest_middle");
|
||||
qs.set("cond", "2");
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@@ -364,31 +364,22 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 16) < 8)
|
||||
{
|
||||
if ((i8 % 8) < 4)
|
||||
if (((i8 % 8) < 4) && (i2 == i3))
|
||||
{
|
||||
if (i2 == i3)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 4;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 4;
|
||||
}
|
||||
|
||||
if ((i8 % 4) < 2)
|
||||
if (((i8 % 4) < 2) && (i2 == i4))
|
||||
{
|
||||
if (i2 == i4)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i2 == i5))
|
||||
{
|
||||
if (i2 == i5)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -396,31 +387,22 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 16) < 8)
|
||||
{
|
||||
if ((i8 % 8) < 4)
|
||||
if (((i8 % 8) < 4) && (i2 == i3))
|
||||
{
|
||||
if (i2 == i3)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 4;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 4;
|
||||
}
|
||||
|
||||
if ((i8 % 4) < 2)
|
||||
if (((i8 % 4) < 2) && (i2 == i4))
|
||||
{
|
||||
if (i2 == i4)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i2 == i5))
|
||||
{
|
||||
if (i2 == i5)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -429,22 +411,16 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 8) < 4)
|
||||
{
|
||||
if ((i8 % 4) < 2)
|
||||
if (((i8 % 4) < 2) && (i3 == i4))
|
||||
{
|
||||
if (i3 == i4)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i3 == i5))
|
||||
{
|
||||
if (i3 == i5)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -452,22 +428,16 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 8) < 4)
|
||||
{
|
||||
if ((i8 % 4) < 2)
|
||||
if (((i8 % 4) < 2) && (i3 == i4))
|
||||
{
|
||||
if (i3 == i4)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 2;
|
||||
}
|
||||
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i3 == i5))
|
||||
{
|
||||
if (i3 == i5)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -476,13 +446,10 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 4) < 2)
|
||||
{
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i4 == i5))
|
||||
{
|
||||
if (i4 == i5)
|
||||
{
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 10;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -490,13 +457,10 @@ public class Q662_AGameOfCards extends Quest
|
||||
{
|
||||
if ((i8 % 4) < 2)
|
||||
{
|
||||
if ((i8 % 2) < 1)
|
||||
if (((i8 % 2) < 1) && (i4 == i5))
|
||||
{
|
||||
if (i4 == i5)
|
||||
{
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
i6 = i6 + 1;
|
||||
i8 = i8 + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -43,7 +43,7 @@ public class Q663_SeductiveWhispers extends Quest
|
||||
private static final int ENCHANT_WEAPON_C = 951;
|
||||
private static final int ENCHANT_WEAPON_D = 955;
|
||||
|
||||
private static final int RECIPES[] =
|
||||
private static final int[] RECIPES =
|
||||
{
|
||||
2353,
|
||||
4963,
|
||||
@@ -57,7 +57,7 @@ public class Q663_SeductiveWhispers extends Quest
|
||||
5007
|
||||
};
|
||||
|
||||
private static final int BLADES[] =
|
||||
private static final int[] BLADES =
|
||||
{
|
||||
2115,
|
||||
4104,
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -67,7 +67,7 @@ public class GrandBossTeleporters extends Quest
|
||||
st = newQuestState(player);
|
||||
}
|
||||
|
||||
if (event == "31540")
|
||||
if (event.equals("31540"))
|
||||
{
|
||||
if (st.getQuestItemsCount(7267) > 0)
|
||||
{
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user