Code review Part 3.
This commit is contained in:
@@ -584,9 +584,6 @@
|
||||
<admin command="admin_tvt_maxplayers" accessLevel="80" />
|
||||
<admin command="admin_tvtkick" accessLevel="80" />
|
||||
|
||||
<!-- Section: UnblockIp -->
|
||||
<admin command="admin_unblockip" accessLevel="90" />
|
||||
|
||||
<!-- Section: VIPEngine -->
|
||||
<admin command="admin_vip" accessLevel="80" />
|
||||
<admin command="admin_vip_setteam" accessLevel="80" />
|
||||
|
||||
@@ -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
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user