More PQ-esque script modules + HP Bar on some bosses

Completed (hopefully, now!) implementation of automated modules for PQ
scripting. Added HP bar for some bosses that wouldn't display it before
(like King Slime, Alishar and CRog).
This commit is contained in:
ronancpl
2017-05-09 20:02:10 -03:00
parent da00345aec
commit 73557f0d61
59 changed files with 943 additions and 608 deletions

View File

@@ -1,27 +1,26 @@
importPackage(Packages.server.life);
function enter(pi) {
if (pi.getMap().getReactorByName("sMob1").getState() >= 1 && pi.getMap().getReactorByName("sMob2").getState() >= 1 && pi.getMap().getReactorByName("sMob3").getState() >= 1 && pi.getMap().getReactorByName("sMob4").getState() >= 1) {
if (pi.isLeader()) {
var em = pi.getEventManager("PiratePQ");
var level = parseInt(em.getProperty("level"));
var chests = parseInt(em.getProperty("openedChests"));
if (pi.getMap().getReactorByName("sMob1").getState() >= 1 && pi.getMap().getReactorByName("sMob2").getState() >= 1 && pi.getMap().getReactorByName("sMob3").getState() >= 1 && pi.getMap().getReactorByName("sMob4").getState() >= 1 && pi.getMap().getMonsters().size() == 0) {
var eim = pi.getEventInstance();
if(eim.getProperty("spawnedBoss") == null) {
var level = parseInt(eim.getProperty("level"));
var chests = parseInt(eim.getProperty("openedChests"));
var boss;
if(chests == 0) boss = MapleLifeFactory.getMonster(9300119); //lord pirate
else if(chests == 1) boss = MapleLifeFactory.getMonster(9300105); //angry lord pirate
else boss = MapleLifeFactory.getMonster(9300106); //enraged lord pirate
boss.changeDifficulty(level, true);
pi.getMap(925100500).spawnMonsterOnGroundBelow(boss, new java.awt.Point(777, 140));
pi.warpParty(925100500); //next
return(true);
} else {
pi.playerMessage(5, "The leader must be here.");
return(false);
}
eim.setProperty("spawnedBoss", "true");
}
pi.warp(925100500, 0);
return(true);
} else {
pi.playerMessage(5, "The portal is not opened yet.");
return(false);