sweetgum83/scripts/npc/1202010.js
2024-01-19 03:56:28 -05:00

57 lines
2.0 KiB
JavaScript

var status = 0;
var spawnPnpc = false;
var spawnPnpcFee = 7000000;
var jobType = 21;
function start() {
const GameConstants = Java.type('constants.game.GameConstants');
if (parseInt(cm.getJobId() / 100) == jobType && cm.canSpawnPlayerNpc(GameConstants.getHallOfFameMapid(cm.getJob()))) {
spawnPnpc = true;
var sendStr = "You have walked a long way to reach the power, wisdom and courage you hold today, haven't you? What do you say about having right now #ra NPC on the Hall of Fame holding the current image of your character#k? Do you like it?";
if (spawnPnpcFee > 0) {
sendStr += " I can do it for you, for the fee of #b " + cm.numberWithCommas(spawnPnpcFee) + " mesos.#k";
}
cm.sendYesNo(sendStr);
} else {
cm.sendOk("Behold, the distinguished brave heroes of Rien! Those stout hearts are who have been protecting our people since long ago, our valiant comrades.");
cm.dispose();
}
}
function action(mode, type, selection) {
status++;
if (mode == 0 && type != 1) {
status -= 2;
}
if (status == -1) {
start();
} else {
if (spawnPnpc) {
if (mode > 0) {
if (cm.getMeso() < spawnPnpcFee) {
cm.sendOk("Sorry, you don't have enough mesos to purchase your place on the Hall of Fame.");
cm.dispose();
return;
}
const PlayerNPC = Java.type('server.life.PlayerNPC');
const GameConstants = Java.type('constants.game.GameConstants');
if (PlayerNPC.spawnPlayerNPC(GameConstants.getHallOfFameMapid(cm.getJob()), cm.getPlayer())) {
cm.sendOk("There you go! Hope you will like it.");
cm.gainMeso(-spawnPnpcFee);
} else {
cm.sendOk("Sorry, the Hall of Fame is currently full...");
}
}
cm.dispose();
} else {
// do nothing
}
}
}