Several PQ platform patches + Quest complete count + Fast meso drop
Implemented CPQ challenges using the matching system. Fixed LanguageConstants statically acting for all players. Fixed OPQ's <On the Way Up> stage sometimes leading players to unexpected platforms. Fixed EllinPQ fountain not giving Altaire Fragment to players. Fixed "Lab - Unit" stage on RnJPQ, now using correlated sequences between the units. Fixed Fredrick handing out negative values of mesos to players. Improved "goto" command info. Implemented quest complete count. Fixed mobs still being "controlled" by players even though it's already dead. Concurrently protected adding items into inventory. Concurrently protected EXP gain through Writs of Solomon. Adjusted smoothly respawn rate of mobs in map (solo players in a map now experiences 75% of mobs spawned). Fixed mesos not being able to drop so frequently (prior 200ms threshold between drops). Tweaked matchchecking so that match checking doesn't outright dispose matching members on dismissal (match still sticks to the player until they answer or timeout). Fixed a dupe case within storage's item store. Added any-NPC scriptable to the source.
This commit is contained in:
@@ -35,7 +35,7 @@ function enter(pi) {
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (em.startInstance(pi.getPlayer(), pi.getMap())) {
|
||||
if (em.startInstance(pi.getPlayer())) { // thanks RedHat for noticing an issue here
|
||||
pi.playPortalSound();
|
||||
return true;
|
||||
} else {
|
||||
@@ -57,7 +57,7 @@ function enter(pi) {
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (em.startInstance(pi.getPlayer(), pi.getMap())) {
|
||||
if (em.startInstance(pi.getPlayer())) {
|
||||
pi.playPortalSound();
|
||||
return true;
|
||||
} else {
|
||||
|
||||
@@ -43,11 +43,11 @@ function enter(pi) {
|
||||
var pRow = Math.floor(portalId / 10);
|
||||
var pCol = portalId % 10;
|
||||
|
||||
|
||||
if (pCol == parseInt(comb.substring(pRow, pRow + 1), 10)) { //climb
|
||||
pi.playPortalSound(); pi.warp(pi.getMapId(), (pRow % 4 != 0) ? pi.getPortal().getId() + 4 : (pRow / 4));
|
||||
} else { //fail
|
||||
pi.playPortalSound(); pi.warp(pi.getMapId(), 5);
|
||||
pRow--;
|
||||
pi.playPortalSound(); pi.warp(pi.getMapId(), (pRow / 4) > 1 ? (pRow / 4) : 5); // thanks Chloek3, seth1 for noticing next plaform issues
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
@@ -5,7 +5,8 @@ function enter(pi) {
|
||||
pi.removeAll(4001169);
|
||||
pi.removeAll(2270004);
|
||||
|
||||
if(pi.getMap().getReactorByName("") != null && pi.getMap().getReactorByName("").getState() == 1) {
|
||||
var spring = pi.getMap().getReactorById(3008000); // thanks Chloek3, seth1 for noticing fragments not being awarded properly
|
||||
if(spring != null && spring.getState() > 0) {
|
||||
if(!pi.canHold(4001198, 1)) {
|
||||
pi.playerMessage(5, "Check for a free space on your ETC inventory before entering this portal.");
|
||||
return false;
|
||||
|
||||
@@ -25,17 +25,6 @@ function enter(pi) {
|
||||
var mapplayer = "stage6_comb" + (pi.getMapId() % 10);
|
||||
var eim = pi.getEventInstance();
|
||||
|
||||
if(eim.getProperty(mapplayer) == null) {
|
||||
var comb = "";
|
||||
|
||||
for(var i = 0; i < 10; i++) {
|
||||
var r = Math.floor((Math.random() * 4));
|
||||
comb += r.toString();
|
||||
}
|
||||
|
||||
eim.setProperty(mapplayer, comb);
|
||||
}
|
||||
|
||||
var comb = eim.getProperty(mapplayer);
|
||||
|
||||
var name = pi.getPortal().getName().substring(2, 4);
|
||||
|
||||
Reference in New Issue
Block a user