Reformat and clean up npc scripts
This commit is contained in:
@@ -26,9 +26,9 @@
|
||||
|
||||
var itemToUse = 4001126;
|
||||
|
||||
var chairs = new Array(3010000, 3010001, 3010002, 3010003, 3010004, 3010005, 3010006, 3010007, 3010008, 3010009, 3010010, 3010011, 3010012, 3010013, 3010015, 3010016, 3010017, 3010018, 3010019, 3010022, 3010023, 3010024, 3010025, 3010026, 3010028, 3010040, 3010041, 3010043, 3010045, 3010046, 3010047,3010057,3010058,3010060,3010061,3010062,3010063, 3010064,3010065,3010066,3010067,3010069,3010071,3010072,3010073,3010080,3010081,3010082,3010083, 3010084,3010085,3010097,3010098,3010099,3010101,3010106,3010116,3011000,3012005,3012010,3012011);
|
||||
var scrolls = new Array(2040603,2044503,2041024,2041025,2044703,2044603,2043303,2040807,2040806,2040006,2040007,2043103,2043203,2043003,2040506,2044403,2040903,2040709,2040710,2040711,2044303,2043803,2040403,2044103,2044203,2044003,2043703);
|
||||
var weapons = new Array(1302020, 1302030, 1302033, 1302058, 1302064, 1302080, 1312032, 1322054, 1332025, 1332055, 1332056, 1372034, 1382009, 1382012, 1382039, 1402039, 1412011, 1412027, 1422014, 1422029, 1432012, 1432040, 1432046, 1442024, 1442030, 1442051, 1452016, 1452022, 1452045, 1462014, 1462019, 1462040, 1472030, 1472032, 1472055, 1482020, 1482021, 1482022, 1492020, 1492021, 1492022, 1092030, 1092045, 1092046, 1092047);
|
||||
var chairs = [3010000, 3010001, 3010002, 3010003, 3010004, 3010005, 3010006, 3010007, 3010008, 3010009, 3010010, 3010011, 3010012, 3010013, 3010015, 3010016, 3010017, 3010018, 3010019, 3010022, 3010023, 3010024, 3010025, 3010026, 3010028, 3010040, 3010041, 3010043, 3010045, 3010046, 3010047, 3010057, 3010058, 3010060, 3010061, 3010062, 3010063, 3010064, 3010065, 3010066, 3010067, 3010069, 3010071, 3010072, 3010073, 3010080, 3010081, 3010082, 3010083, 3010084, 3010085, 3010097, 3010098, 3010099, 3010101, 3010106, 3010116, 3011000, 3012005, 3012010, 3012011];
|
||||
var scrolls = [2040603, 2044503, 2041024, 2041025, 2044703, 2044603, 2043303, 2040807, 2040806, 2040006, 2040007, 2043103, 2043203, 2043003, 2040506, 2044403, 2040903, 2040709, 2040710, 2040711, 2044303, 2043803, 2040403, 2044103, 2044203, 2044003, 2043703];
|
||||
var weapons = [1302020, 1302030, 1302033, 1302058, 1302064, 1302080, 1312032, 1322054, 1332025, 1332055, 1332056, 1372034, 1382009, 1382012, 1382039, 1402039, 1412011, 1412027, 1422014, 1422029, 1432012, 1432040, 1432046, 1442024, 1442030, 1442051, 1452016, 1452022, 1452045, 1462014, 1462019, 1462040, 1472030, 1472032, 1472055, 1482020, 1482021, 1482022, 1492020, 1492021, 1492022, 1092030, 1092045, 1092046, 1092047];
|
||||
|
||||
var nxAmount = 3000;
|
||||
var chairAmount = 2;
|
||||
@@ -41,176 +41,182 @@ var buff2ID = 2022179;
|
||||
var status;
|
||||
var vp;
|
||||
var choice;
|
||||
|
||||
|
||||
function start() {
|
||||
//vp = cm.getClient().getVotePoints();
|
||||
//if(vp == null)
|
||||
vp = 0;
|
||||
|
||||
//vp = cm.getClient().getVotePoints();
|
||||
//if(vp == null)
|
||||
vp = 0;
|
||||
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode < 0)
|
||||
if (mode < 0) {
|
||||
cm.dispose();
|
||||
else {
|
||||
if (mode == 1)
|
||||
} else {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
else
|
||||
} else {
|
||||
status--;
|
||||
}
|
||||
if (status == 0 && mode == 1) {
|
||||
if(cm.getPlayer().getLevel() < 20) {
|
||||
cm.sendOk("Hello, I am the Vote Point exchanger for #rMapleSolaxia#k!\r\n\r\nI am sorry, but I can only exchange Vote Points for players #blevel 20 or over#k.");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
var outStr = "Hello, I am the Vote Point exchanger for #rMapleSolaxia#k!\r\n";
|
||||
outStr += "You currently have #r#c" + itemToUse + "##k #t" + itemToUse + "# and #r" + vp + "#k Vote Points.#b\r\n\r\n";
|
||||
outStr += "#L0#I would like to exchange my vote points for Maple Leaves#l\r\n";
|
||||
outStr += "#L1#I would like to exchange 1 #t" + itemToUse + "# for "+ nxAmount + " NX Cash#l\r\n";
|
||||
outStr += "#L2#I would like to exchange 1 #t" + itemToUse + "# for " + chairAmount + " Random Chair" + (chairAmount > 1 ? "s" : "") + "#l\r\n";
|
||||
outStr += "#L3#I would like to exchange 1 #t" + itemToUse + "# for " + weaponAmount + " Maple Weapons#l\r\n";
|
||||
outStr += "#L4#I would like to exchange 1 #t" + itemToUse + "# for " + buffAmount + " #t" + buff1ID + "#s and " + buffAmount + " #t" + buff2ID + "#s#l\r\n";
|
||||
outStr += "#L5#I would like to exchange 1 #t" + itemToUse + "# for a " + hiredMerchantLength + " Day Hired Merchant#l\r\n";
|
||||
cm.sendSimple(outStr);
|
||||
} else if(status == 1) {
|
||||
choice = selection;
|
||||
|
||||
if(selection > 0) {
|
||||
if(!cm.haveItem(itemToUse) && vp == 0) {
|
||||
cm.sendOk("I'm sorry, but you don't have any #t" +itemToUse + " or Vote Points.");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(selection == 0) {
|
||||
// Exchange VP for leaves
|
||||
if(vp <= 0) {
|
||||
cm.sendOk("I'm sorry, but you don't have any Vote Points to exchange!");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
cm.sendYesNo("Would you like to exchange " + vp + " Vote Point" + (vp > 0 ? "s" : "") + " for " + vp + " #t" + itemToUse + "# " + (vp > 0 ? "s" : "") + "?");
|
||||
} else if(selection == 1) {
|
||||
// Exchange 1 Leaf for Cash
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + nxAmount + " NX Cash?");
|
||||
} else if(selection == 2) {
|
||||
// Exchange 1 Leaf for Chair
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + chairAmount + " Random Chair" + (chairAmount > 1 ? "s" : "") + "?");
|
||||
} else if(selection == 3) {
|
||||
// Exchange 1 Leaf for Maple Weapons
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + weaponAmount + " Random Maple Weapons?");
|
||||
} else if(selection == 4) {
|
||||
// Exchange 1 Leaf for Apples/Cheese
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + buffAmount + " #t" + buff1ID + "# and #t" + buff2ID + "#?");
|
||||
} else if(selection == 5) {
|
||||
// Echange 1 Leaf for Merchant
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for a " + hiredMerchantLength + " Day Hired Merchant?");
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
} else if(status == 2) {
|
||||
var useVP = false;
|
||||
if(!cm.hasItem(itemToUse) && vp > 0)
|
||||
useVP = true;
|
||||
if (cm.getPlayer().getLevel() < 20) {
|
||||
cm.sendOk("Hello, I am the Vote Point exchanger for #rMapleSolaxia#k!\r\n\r\nI am sorry, but I can only exchange Vote Points for players #blevel 20 or over#k.");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
var outStr = "Hello, I am the Vote Point exchanger for #rMapleSolaxia#k!\r\n";
|
||||
outStr += "You currently have #r#c" + itemToUse + "##k #t" + itemToUse + "# and #r" + vp + "#k Vote Points.#b\r\n\r\n";
|
||||
outStr += "#L0#I would like to exchange my vote points for Maple Leaves#l\r\n";
|
||||
outStr += "#L1#I would like to exchange 1 #t" + itemToUse + "# for " + nxAmount + " NX Cash#l\r\n";
|
||||
outStr += "#L2#I would like to exchange 1 #t" + itemToUse + "# for " + chairAmount + " Random Chair" + (chairAmount > 1 ? "s" : "") + "#l\r\n";
|
||||
outStr += "#L3#I would like to exchange 1 #t" + itemToUse + "# for " + weaponAmount + " Maple Weapons#l\r\n";
|
||||
outStr += "#L4#I would like to exchange 1 #t" + itemToUse + "# for " + buffAmount + " #t" + buff1ID + "#s and " + buffAmount + " #t" + buff2ID + "#s#l\r\n";
|
||||
outStr += "#L5#I would like to exchange 1 #t" + itemToUse + "# for a " + hiredMerchantLength + " Day Hired Merchant#l\r\n";
|
||||
cm.sendSimple(outStr);
|
||||
} else if (status == 1) {
|
||||
choice = selection;
|
||||
|
||||
const InventoryType = Java.type('client.inventory.InventoryType');
|
||||
if(choice == 0) {
|
||||
// VP Exchange
|
||||
if(!cm.canHold(itemToUse)) {
|
||||
cm.sendOk("It looks like you don't have enough space in your #rETC#k inventory to hold the #t" + itemToUse + "#" + (vp > 0 ? "s" : "") + ".");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
cm.getClient().useVotePoints(vp);
|
||||
cm.gainItem(itemToUse, vp);
|
||||
cm.dispose();
|
||||
} else if(choice == 1) {
|
||||
// Leaf for Cash
|
||||
if(useVP)
|
||||
cm.getClient().useVotePoints(1);
|
||||
else
|
||||
cm.gainItem(itemToUse, -1);
|
||||
|
||||
cm.getPlayer().getCashShop().gainCash(1, nxAmount);
|
||||
const PacketCreator = Java.type('tools.PacketCreator');
|
||||
cm.getPlayer().sendPacket(PacketCreator.earnTitleMessage("You have earned " + nxAmount + " NX"));
|
||||
cm.logLeaf(nxAmount + " NX");
|
||||
cm.dispose();
|
||||
} else if(choice == 2) {
|
||||
if(!cm.getPlayer().getInventory(InventoryType.SETUP).isFull(chairAmount)) {
|
||||
|
||||
var chairStr = "";
|
||||
for(var i = 0; i < chairAmount; i++) {
|
||||
var chair = chairs[Math.floor(Math.random() * chairs.length)];
|
||||
cm.gainItem(chair, 1, true);
|
||||
chairStr += chair + " ";
|
||||
}
|
||||
|
||||
if(useVP)
|
||||
cm.getClient().useVotePoints(1);
|
||||
else
|
||||
cm.gainItem(itemToUse, -1);
|
||||
|
||||
cm.logLeaf("Chair ID: " + chairStr);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if(choice == 3) {
|
||||
if(!cm.getPlayer().getInventory(InventoryType.EQUIP).isFull(weaponAmount)) {
|
||||
|
||||
var weaponStr = "";
|
||||
for(var i = 0; i < weaponAmount; i++) {
|
||||
var weapon = weapons[Math.floor(Math.random() * weapons.length)];
|
||||
cm.gainItem(weapon, 1, true, true);
|
||||
weaponStr += weapon + " ";
|
||||
}
|
||||
|
||||
if(useVP)
|
||||
cm.getClient().useVotePoints(1);
|
||||
else
|
||||
cm.gainItem(itemToUse, -1);
|
||||
|
||||
cm.logLeaf("Maple Weapon IDs: " + weaponStr);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if(choice == 4) {
|
||||
if(!cm.getPlayer().getInventory(InventoryType.USE).isFull(2)) {
|
||||
cm.gainItem(buff1ID, buffAmount, true);
|
||||
cm.gainItem(buff2ID, buffAmount, true);
|
||||
cm.gainItem(itemToUse, -1);
|
||||
cm.logLeaf(buffAmount + " cheeses and apples");
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if(choice == 5) {
|
||||
if(!cm.haveItem(5030000, 1)) {
|
||||
if(!cm.getPlayer().getInventory(InventoryType.CASH).isFull(1)){
|
||||
cm.gainItem(5030000, 1, false, true, 1000 * 60 * 60 * 24 * hiredMerchantLength);
|
||||
|
||||
if(useVP)
|
||||
cm.getClient().useVotePoints(1);
|
||||
else
|
||||
cm.gainItem(itemToUse, -1);
|
||||
|
||||
cm.logLeaf(hiredMerchantLength + " day hired merchant");
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold these items!");
|
||||
}
|
||||
} else {
|
||||
cm.sendOk("I can't give you a merchant if you already have one!");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
if (selection > 0) {
|
||||
if (!cm.haveItem(itemToUse) && vp == 0) {
|
||||
cm.sendOk("I'm sorry, but you don't have any #t" + itemToUse + " or Vote Points.");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (selection == 0) {
|
||||
// Exchange VP for leaves
|
||||
if (vp <= 0) {
|
||||
cm.sendOk("I'm sorry, but you don't have any Vote Points to exchange!");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
cm.sendYesNo("Would you like to exchange " + vp + " Vote Point" + (vp > 0 ? "s" : "") + " for " + vp + " #t" + itemToUse + "# " + (vp > 0 ? "s" : "") + "?");
|
||||
} else if (selection == 1) {
|
||||
// Exchange 1 Leaf for Cash
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + nxAmount + " NX Cash?");
|
||||
} else if (selection == 2) {
|
||||
// Exchange 1 Leaf for Chair
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + chairAmount + " Random Chair" + (chairAmount > 1 ? "s" : "") + "?");
|
||||
} else if (selection == 3) {
|
||||
// Exchange 1 Leaf for Maple Weapons
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + weaponAmount + " Random Maple Weapons?");
|
||||
} else if (selection == 4) {
|
||||
// Exchange 1 Leaf for Apples/Cheese
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for " + buffAmount + " #t" + buff1ID + "# and #t" + buff2ID + "#?");
|
||||
} else if (selection == 5) {
|
||||
// Echange 1 Leaf for Merchant
|
||||
cm.sendYesNo("Would you like to exchange 1 #t" + itemToUse + "# for a " + hiredMerchantLength + " Day Hired Merchant?");
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
} else if (status == 2) {
|
||||
var useVP = false;
|
||||
if (!cm.hasItem(itemToUse) && vp > 0) {
|
||||
useVP = true;
|
||||
}
|
||||
|
||||
const InventoryType = Java.type('client.inventory.InventoryType');
|
||||
if (choice == 0) {
|
||||
// VP Exchange
|
||||
if (!cm.canHold(itemToUse)) {
|
||||
cm.sendOk("It looks like you don't have enough space in your #rETC#k inventory to hold the #t" + itemToUse + "#" + (vp > 0 ? "s" : "") + ".");
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
cm.getClient().useVotePoints(vp);
|
||||
cm.gainItem(itemToUse, vp);
|
||||
cm.dispose();
|
||||
} else if (choice == 1) {
|
||||
// Leaf for Cash
|
||||
if (useVP) {
|
||||
cm.getClient().useVotePoints(1);
|
||||
} else {
|
||||
cm.gainItem(itemToUse, -1);
|
||||
}
|
||||
|
||||
cm.getPlayer().getCashShop().gainCash(1, nxAmount);
|
||||
const PacketCreator = Java.type('tools.PacketCreator');
|
||||
cm.getPlayer().sendPacket(PacketCreator.earnTitleMessage("You have earned " + nxAmount + " NX"));
|
||||
cm.logLeaf(nxAmount + " NX");
|
||||
cm.dispose();
|
||||
} else if (choice == 2) {
|
||||
if (!cm.getPlayer().getInventory(InventoryType.SETUP).isFull(chairAmount)) {
|
||||
|
||||
var chairStr = "";
|
||||
for (var i = 0; i < chairAmount; i++) {
|
||||
var chair = chairs[Math.floor(Math.random() * chairs.length)];
|
||||
cm.gainItem(chair, 1, true);
|
||||
chairStr += chair + " ";
|
||||
}
|
||||
|
||||
if (useVP) {
|
||||
cm.getClient().useVotePoints(1);
|
||||
} else {
|
||||
cm.gainItem(itemToUse, -1);
|
||||
}
|
||||
|
||||
cm.logLeaf("Chair ID: " + chairStr);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if (choice == 3) {
|
||||
if (!cm.getPlayer().getInventory(InventoryType.EQUIP).isFull(weaponAmount)) {
|
||||
|
||||
var weaponStr = "";
|
||||
for (var i = 0; i < weaponAmount; i++) {
|
||||
var weapon = weapons[Math.floor(Math.random() * weapons.length)];
|
||||
cm.gainItem(weapon, 1, true, true);
|
||||
weaponStr += weapon + " ";
|
||||
}
|
||||
|
||||
if (useVP) {
|
||||
cm.getClient().useVotePoints(1);
|
||||
} else {
|
||||
cm.gainItem(itemToUse, -1);
|
||||
}
|
||||
|
||||
cm.logLeaf("Maple Weapon IDs: " + weaponStr);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if (choice == 4) {
|
||||
if (!cm.getPlayer().getInventory(InventoryType.USE).isFull(2)) {
|
||||
cm.gainItem(buff1ID, buffAmount, true);
|
||||
cm.gainItem(buff2ID, buffAmount, true);
|
||||
cm.gainItem(itemToUse, -1);
|
||||
cm.logLeaf(buffAmount + " cheeses and apples");
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold the items!");
|
||||
}
|
||||
} else if (choice == 5) {
|
||||
if (!cm.haveItem(5030000, 1)) {
|
||||
if (!cm.getPlayer().getInventory(InventoryType.CASH).isFull(1)) {
|
||||
cm.gainItem(5030000, 1, false, true, 1000 * 60 * 60 * 24 * hiredMerchantLength);
|
||||
|
||||
if (useVP) {
|
||||
cm.getClient().useVotePoints(1);
|
||||
} else {
|
||||
cm.gainItem(itemToUse, -1);
|
||||
}
|
||||
|
||||
cm.logLeaf(hiredMerchantLength + " day hired merchant");
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Please make sure you have enough space to hold these items!");
|
||||
}
|
||||
} else {
|
||||
cm.sendOk("I can't give you a merchant if you already have one!");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user