Horntail PQ & Exped + Equip levelup fix

Added Horntail PQ and boss fight. Fixed short integer overflow of
equipment stats on client messing up player stats.
This commit is contained in:
ronancpl
2017-07-20 12:02:59 -03:00
parent 8fab2a6e3e
commit c09bc02c85
137 changed files with 1154 additions and 583 deletions

View File

@@ -748,13 +748,13 @@ public class AbstractPlayerInteraction {
map.broadcastMessage(MaplePacketCreator.spawnNPC(npc));
}
}
public void spawnMonster(int id, int x, int y) {
MapleMonster monster = MapleLifeFactory.getMonster(id);
monster.setPosition(new Point(x, y));
getPlayer().getMap().spawnMonster(monster);
}
public MapleMonster getMonsterLifeFactory(int mid) {
return MapleLifeFactory.getMonster(mid);
}

View File

@@ -68,7 +68,8 @@ import tools.MaplePacketCreator;
/**
*
* @author Matze, Ronan
* @author Matze
* @author Ronan
*/
public class EventInstanceManager {
private Map<Integer, MapleCharacter> chars = new HashMap<>();
@@ -415,11 +416,13 @@ public class EventInstanceManager {
}
public void changedLeader(MapleCharacter ldr) {
try {
try {
em.getIv().invokeFunction("changedLeader", this, ldr);
} catch (ScriptException | NoSuchMethodException ex) {
ex.printStackTrace();
}
leaderId = ldr.getId();
}
public void monsterKilled(MapleMonster mob) {
@@ -1002,6 +1005,10 @@ public class EventInstanceManager {
showClearEffect(hasGate, getLeader().getMapId());
}
public final void showClearEffect(int mapId) {
showClearEffect(false, mapId);
}
public final void showClearEffect(boolean hasGate, int mapId) {
showClearEffect(hasGate, mapId, "gate", 2);
}

View File

@@ -45,7 +45,8 @@ import server.maps.MapleReactor;
import server.maps.ReactorDropEntry;
/**
* @author Lerk, Ronan
* @author Lerk
* @author Ronan
*/
public class ReactorActionManager extends AbstractPlayerInteraction {
private MapleReactor reactor;
@@ -59,6 +60,14 @@ public class ReactorActionManager extends AbstractPlayerInteraction {
this.iv = iv;
}
public void hitReactor() {
reactor.hitReactor(client);
}
public void destroyNpc(int npcId) {
reactor.getMap().destroyNPC(npcId);
}
public void dropItems() {
dropItems(false, 0, 0, 0, 0);
}