Merge branch 'master' into credits_update

This commit is contained in:
ronancpl
2019-06-15 15:56:15 -03:00
146 changed files with 7810 additions and 2802 deletions

View File

@@ -86,29 +86,38 @@ function scheduledTimeout(eim){
eim.dispose();
}
function playerRevive(eim, player){
player.respawn(eim, entryMap);
return false;
function playerRevive(eim, player) { // player presses ok on the death pop up.
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
function playerDead(eim, player){}
function playerDisconnected(eim, player){
var party = eim.getPlayers();
for(var i = 0; i < party.size(); i++){
if(party.get(i).equals(player))
removePlayer(eim, player);
else
playerExit(eim, party.get(i));
}
eim.dispose();
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
function monsterValue(eim, mobId){
return -1;
}
function end(eim) {
var party = eim.getPlayers();
for (var i = 0; i < party.size(); i++) {
playerExit(eim, party.get(i));
}
eim.dispose();
}
function leftParty(eim, player){}
function disbandParty(eim){}
@@ -120,8 +129,15 @@ function playerExit(eim, player){
player.changeMap(exitMap, 2);
}
function changedMap(eim, chr, mapid) {
if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
}
function removePlayer(eim, player){

View File

@@ -77,29 +77,38 @@ function scheduledTimeout(eim){
eim.dispose();
}
function playerRevive(eim, player){
player.respawn(eim, entryMap);
return false;
function playerRevive(eim, player) { // player presses ok on the death pop up.
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
function playerDead(eim, player){}
function playerDisconnected(eim, player){
var party = eim.getPlayers();
for(var i = 0; i < party.size(); i++){
if(party.get(i).equals(player))
removePlayer(eim, player);
else
playerExit(eim, party.get(i));
}
eim.dispose();
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
function monsterValue(eim, mobId){
return -1;
}
function end(eim) {
var party = eim.getPlayers();
for (var i = 0; i < party.size(); i++) {
playerExit(eim, party.get(i));
}
eim.dispose();
}
function leftParty(eim, player){}
function disbandParty(eim){}
@@ -112,7 +121,14 @@ function playerExit(eim, player){
}
function changedMap(eim, chr, mapid) {
if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
if (mapid < minMapId || mapid > maxMapId) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
}
else
eim.unregisterPlayer(player);
}
}
function removePlayer(eim, player){

105
scripts/event/NineSpirit.js Normal file
View File

@@ -0,0 +1,105 @@
var minPlayers = 1;
var timeLimit = 5; //5 minutes
var eventTimer = 1000 * 60 * timeLimit;
var exitMap = 240040610;
var eventMap = 240040611;
var minMapId = 240040611;
var maxMapId = 240040611;
function init(){}
function setup(difficulty, lobbyId){
var eim = em.newInstance("NineSpirit_" +lobbyId);
eim.getInstanceMap(eventMap).resetFully();
eim.getInstanceMap(eventMap).allowSummonState(false);
respawn(eim);
eim.startEventTimer(eventTimer);
return eim;
}
function afterSetup(eim){}
function respawn(eim){}
function playerEntry(eim, player){
var nest = eim.getMapInstance(eventMap);
if (!player.haveItem(4001094)) {
eim.spawnNpc(2081008, nest.getReactorById(2406000).getPosition(), nest);
}
player.changeMap(nest, 1);
}
function scheduledTimeout(eim){
var party = eim.getPlayers();
for(var i = 0; i < party.size(); i++)
playerExit(eim, party.get(i));
eim.dispose();
}
function playerRevive(eim, player){
player.respawn(eim, exitMap);
return false;
}
function playerDead(eim, player){}
function playerDisconnected(eim, player){
var party = eim.getPlayers();
for(var i = 0; i < party.size(); i++){
if(party.get(i).equals(player))
removePlayer(eim, player);
else
playerExit(eim, party.get(i));
}
eim.dispose();
}
function monsterValue(eim, mobId){
return -1;
}
function leftParty(eim, player){}
function disbandParty(eim){}
function playerUnregistered(eim, player){}
function playerExit(eim, player){
eim.unregisterPlayer(player);
player.changeMap(exitMap);
}
function changedMap(eim, chr, mapid){
if(mapid < minMapId || mapid > maxMapId){
removePlayer(eim, chr);
eim.stopEventTimer();
eim.setEventCleared();
eim.dispose();
}
}
function removePlayer(eim, player){
eim.unregisterPlayer(player);
player.getMap().removePlayer(player);
player.setMap(exitMap);
}
function cancelSchedule(){}
function dispose(){}
function clearPQ(eim){}
function monsterKilled(mob, eim){}
function allMonstersDead(eim){}
// ---------- FILLER FUNCTIONS ----------
function changedLeader(eim, leader) {}

View File

@@ -4,6 +4,9 @@ var eventTimer = 1000 * 60 * timeLimit;
var exitMap = 105070300;
var eventMap = 910510000;
var minMapId = 910510000;
var maxMapId = 910510000;
function init(){}
function setup(difficulty, lobbyId){
@@ -67,9 +70,9 @@ function playerExit(eim, player){
player.changeMap(exitMap);
}
function changedMap(eim, player){
if(player.getMap().getId() < eventMap || player.getMap().getId() > next){
removePlayer(eim, player);
function changedMap(eim, chr, mapid){
if(mapid < minMapId || mapid > maxMapId){
removePlayer(eim, chr);
eim.stopEventTimer();
eim.setEventCleared();
eim.dispose();