Skilled Illusionist
- Joined
- Dec 7, 2012
- Messages
- 330
- Reaction score
- 24
Hey everyone, I edited this Vote Point NPC that my buddy badger wrote, and attempted to turn it into a donator NPC. Every time I click on the NPC, I disconnect and get an error that says something has gone wrong with the client. There are no BAT errors.
I'm thinking I may need to add something to MapleCharacter.java - Or possibly change what I did in the NPCConversationManager.java
Can anyone offer me some insight / help?
My script:
I added these 2 pieces of code in my NPCConversationManager.java - I simply changed the VPoints one that was already there - The vote point ones will also be included in the code.
I'm thinking I may need to add something to MapleCharacter.java - Or possibly change what I did in the NPCConversationManager.java
Can anyone offer me some insight / help?
My script:
Code:
/*
Written by: potimus
*/
var status;
var sCube = 5062002;
var hunters = 2450000;
var potscroll = 2049406;
var panda = 3010131;
var maplechair = 3010145;
var badge = 1182006;
var ttmedal = 1142247;
var specs = 1022082;
var branch = 1012107;
var wabr = 1112663;
var vest = 1042191;
var bring = 1112665;
var gring = 1112664;
var stirgepants = 1060133;
var stirgeskirt = 1061155;
function start() {
status = -1;
action (1, 0, 0);
}
function action(mode, type, selection) {
if (mode == 1) {
status++;
} else {
status--;
}
if (status == 0) {
cm.sendSimple("You can exchange your Donator Points here for some sweet items!" +
"\r\nChoose one!" + " You have " + cm.numOfPoints() + " donator points." +
"\r\n#L0#Trade 5,000 Donator Points for 25 #i5062002#" +
"\r\n#L1#Trade 10,000 Donator Points for 50 #i5062002#" +
"\r\n#L2#Trade 20,000 Donator Points for 120 #i5062002#" +
"\r\n#L3#Trade 250 Donator Points for #i2450000#" +
"\r\n#L4#Trade 1,000 Donator Points for #i2049406#" +
"\r\n#L5#Trade 3,000 Donator Points for #i3010131#" +
"\r\n#L6#Trade 3,000 Donator Points for #i3010145#" +
"\r\n#L7#Trade 3,500 Donator Points for #i1182006#" +
"\r\n#L8#Trade 3,500 Donator Points for #i1142247#" +
"\r\n#L9#Trade 4,000 Donator Points for #i1022082#" +
"\r\n#L10#Trade 5,000 Donator Points for #i1012107#" +
"\r\n#L11#Trade 6,000 Donator Points for #i1112663#" +
"\r\n#L12#Trade 6,000 Donator Points for #i1042191#" +
"\r\n#L13#Trade 7,000 DOnator Points for #i1112665#" +
"\r\n#L14#Trade 7,000 Donator Points for #i1112664#" +
"\r\n#L15#Trade 7,500 Donator Points for #i1060133#" +
"\r\n#L16#Trade 7,500 Donator Points for #i1061155#");
} else if (status == 1) {
if (selection == 0 && cm.numOfVP() >= 5000) {
cm.gainItem(sCube, 25)
cm.setNumOfPoints(-5000);
cm.sendOk("You have traded 5,000 Donator Points for 25 #i5062002#");
cm.dispose();
} else if (selection == 1 && cm.numOfPoints() >= 10000) {
cm.gainItem(sCube, 50);
cm.setNumOfVP(-10000);
cm.sendOk("You have traded 10,000 Donator Points for 50 #i5062002#");
cm.dispose();
} else if (selection == 2 && cm.numOfPoints() >= 25000) {
cm.gainItem(sCube, 120);
cm.setNumOfVP(-25000);
cm.sendOk("You have traded 25,000 Donator Points for 120 #i5062002#");
cm.dispose();
} else if (selection == 3 && cm.numOfPoints() >= 250) {
cm.gainItem(hunters, 1);
cm.setNumOfVP(-250);
cm.sendOk("You have traded 250 Donator Points for #i2450000#");
cm.dispose();
} else if (selection == 4 && cm.numOfPoints() >= 1000) {
cm.gainItem(potscroll, 1);
cm.setNumOfVP(-1000);
cm.sendOk("You have traded 1000 Donator Points for #i2049406#");
cm.dispose();
} else if (selection == 5 && cm.numOfPoints() >= 3000) {
cm.gainItem(panda, 1);
cm.setNumOfVP(-3000);
cm.sendOk("You have traded 3000 Donator Points for #i3010131#");
cm.dispose();
} else if (selection == 6 && cm.numOfPoints() >= 3000) {
cm.gainItem(maplechair, 1);
cm.setNumOfVP(-3000);
cm.sendOk("You have traded 3000 Donator Points for #i3010145#");
cm.dispose();
} else if (selection == 7 && cm.numOfPoints() >= 3500) {
cm.gainItem(badge, 1);
cm.setNumOfVP(-3500);
cm.sendOk("You have traded 3500 Donator Points for #i1182006#");
cm.dispose();
} else if (selection == 8 && cm.numOfPoints() >= 3500) {
cm.gainItem(ttmedal, 1);
cm.setNumOfVP(-3500);
cm.sendOk("You have traded 3500 Donator Points for #i1142247#");
cm.dispose();
} else if (selection == 9 && cm.numOfPoints() >= 4000) {
cm.gainItem(specs, 1);
cm.setNumOfVP(-4000);
cm.sendOk("You have traded 4000 Donator Points for #i1022082#");
cm.dispose();
} else if (selection == 10 && cm.numOfPoints() >= 5000) {
cm.gainItem(branch, 1);
cm.setNumOfVP(-5000);
cm.sendOk("You have traded 5000 Donator Points for #i1012107#");
cm.dispose();
} else if (selection == 11 && cm.numOfPoints() >= 6000) {
cm.gainItem(wabr, 1);
cm.setNumOfVP(-6000);
cm.sendOk("You have traded 6000 Donator Points for #i1112663#");
cm.dispose();
} else if (selection == 12 && cm.numOfPoints() >= 6000) {
cm.gainItem(vest, 1);
cm.setNumOfVP(-6000);
cm.sendOk("You have traded 6000 Donator Points for #i1042191#");
cm.dispose();
} else if (selection == 13 && cm.numOfPoints() >= 7000) {
cm.gainItem(bring, 1);
cm.setNumOfVP(-7000);
cm.sendOk("You have traded 7000 Donator Points for #i1112665#");
cm.dispose();
} else if (selection == 14 && cm.numOfPoints() >= 7000) {
cm.gainItem(gring, 1);
cm.setNumOfVP(-7000);
cm.sendOk("You have traded 7000 Donator Points for #i1112664#");
cm.dispose();
} else if (selection == 15 && cm.numOfPoints() >= 7500) {
cm.gainItem(stirgepants, 1);
cm.setNumOfVP(-7500);
cm.sendOk("You have traded 7500 Donator Points for #i1060133#");
cm.dispose();
} else if (selection == 16 && cm.numOfPoints() >= 7500) {
cm.gainItem(stirgeskirt, 1);
cm.setNumOfVP(-7500);
cm.sendOk("You have traded 7500 Donator Points for #i1061155#");
cm.dispose();
} else {
cm.dispose();
}
}
}
I added these 2 pieces of code in my NPCConversationManager.java - I simply changed the VPoints one that was already there - The vote point ones will also be included in the code.
Code:
/*Start of Custom Features*/
public void gainAPS(int gain) {
getPlayer().gainAPS(gain);
}
public int numOfVP() {
return c.getPlayer().getVPoints();
}
public void setNumOfVP(int amount) {
c.getPlayer().setVPoints(c.getPlayer().getVPoints() + amount);
}
public void setCSPoints(int amount) {
c.getPlayer().modifyCSPoints(amount);
}
public int numOfPoints() { //these are the codes I added here
return c.getPlayer().getPoints();
}
public void setNumOfPoints(int amount) {
c.getPlayer().setPoints(c.getPlayer().getPoints() + amount);
}
/*End of Custom Features*/
}
Last edited: