White scroll & PiratePQ fix + Party for starters + concurrency protection on event scripts

Fixed successful scrolled items not using up an upgrade slot when using white scroll. Fixed some issues with the PiratePQ and added a "clear all boxes to complete a stage"-mode. Added "Party for Starters" feature. Added concurrency protection on event script modules.
This commit is contained in:
ronancpl
2017-10-13 03:31:51 -03:00
parent 6e1442af30
commit 1ec7487bd3
96 changed files with 470 additions and 109 deletions

View File

@@ -147,6 +147,7 @@ import constants.skills.Spearman;
import constants.skills.SuperGM;
import constants.skills.Swordsman;
import constants.skills.ThunderBreaker;
import net.server.channel.handlers.PartyOperationHandler;
import scripting.item.ItemScriptManager;
import server.maps.MapleMapItem;
@@ -1902,7 +1903,7 @@ public class MapleCharacter extends AbstractAnimatedMapleMapObject {
}, healInterval, healInterval);
}
public void disableDoor() {
public void disableDoorSpawn() {
canDoor = false;
TimerManager.getInstance().schedule(new Runnable() {
@Override
@@ -4803,6 +4804,14 @@ public class MapleCharacter extends AbstractAnimatedMapleMapObject {
recalcLocalStats();
setMPC(new MaplePartyCharacter(this));
silentPartyUpdate();
if(level == 10 && party != null) {
if(this.isPartyLeader()) party.assignNewLeader(client);
PartyOperationHandler.leaveParty(party, mpc, client);
client.announceHint("You have reached #blevel 10#k, therefore you must leave your #rstarter party#k.");
}
if (this.guildid > 0) {
getGuild().broadcast(MaplePacketCreator.levelUpMessage(2, level, name), this.getId());
}