[Add-on] [NPC] Custom MSI Npc

Newbie Spellweaver
Joined
Oct 8, 2010
Messages
10
Reaction score
2
Not sure if anyone has released this, I was bored so I made this..

Code:
importPackage(Packages.server);
var status;
function start() {
status = -1;
action(1, 0, 0);
}
function action(mode, type, selection) {
if (mode == 1)
status++;
else {
cm.sendOk("#e#kOkay, see you next time!");
cm.dispose();
return;
}
if (status == 0)  {
cm.sendSimple("#r#eHello I am a custom a made MSI Maker." +
"\r\n#L99##r(equipable 4 times)Get a #i1112900# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L98##gGet a #i1042162# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L97##bGet a #i1060026# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L96##rGet a #i1142126# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L95##gGet a #i1072153# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L94##bGet a #i1082102# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L93##rGet a #i1002186# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L92##gGet a #i1102039# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L91##bGet a #i1012057# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L90##rGet a #i1032024# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L89##gGet a #i1132010# with 30k all stats for 100RBs, + 30k stats." +
"\r\n#L88##bGet a #i1122001# with 30k all stats for 100RBs, + 30k stats.");
} else if (selection == 99) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1112900);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1112900, "str", 30000); Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1112900, "dex", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1112900, "int", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1112900, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 98) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1042162);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1042162, "str", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1042162, "dex", 30000);      Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1042162, "int", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1042162, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 97) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1060026);  Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1060026, "str", 30000);       Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1060026, "dex", 30000);      Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1060026, "int", 30000);         Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1060026, "luk", 30000);
cm.reloadChar();
cm.dispose();

} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 96) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.gainItem(1142126); 
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1142126, "str", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1142126, "dex", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1142126, "int", 30000);    Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1142126, "luk", 30000);
cm.reloadChar();
cm.dispose()
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 95) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1072153);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1072153, "str", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1072153, "dex", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1072153, "int", 30000);            Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1072153, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 94) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1082102);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1082102, "str", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1082102, "dex", 30000);   Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1082102, "int", 30000);   Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1082102, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 93) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1002186);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1002186, "str", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1002186, "dex", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1002186, "int", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1002186, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 92) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1102039);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1102039, "str", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1102039, "dex", 30000);     Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1102039, "int", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1102039, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 91) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1012057);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1012057, "str", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1012057, "dex", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1012057, "int", 30000);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1012057, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 90) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1032024);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1032024, "str", 30000);   Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1032024, "dex", 30000);       Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1032024, "int", 30000);        Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1032024, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 89) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1132010);
Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1132010, "str", 30000);        Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1132010, "dex", 30000);          Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1132010, "int", 30000);         Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1132010, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
} else if (selection == 88) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() > 29999 && cm.getPlayer().getLuk() > 29999 && cm.getPlayer().getReborns() > 99) { 
cm.getPlayer().setStr(4); 
cm.getPlayer().setDex(4);
cm.getPlayer().setLuk(4); 
cm.getPlayer().setInt(4); 
cm.gainItem(1122001);          Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1122001, "str", 30000);   Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1122001, "dex", 30000);       Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1122001, "int", 30000);             Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, 1122001, "luk", 30000);
cm.reloadChar();
cm.dispose();
} else {
cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
cm.dispose();
}
}
}
If it doesn't work for you add this in MapleInventoryManipulator
Code:
                                    public static int editEquipById(MapleCharacter chr, int max, int itemid, String stat, int newval) {
        return editEquipById(chr,max,itemid,stat,(short)newval);
    }

    public static int editEquipById(MapleCharacter chr, int max, int itemid, String stat, short newval) {
        // Is it an equip?
        if (!MapleItemInformationProvider.getInstance().isEquip(itemid)) {
            return -1;
        }

        // Get List
        List<IItem> equips = chr.getInventory(MapleInventoryType.EQUIP).listById(itemid);
        List<IItem> equipped = chr.getInventory(MapleInventoryType.EQUIPPED).listById(itemid);

        // Do you have any?
        if (equips.size() == 0 && equipped.size() == 0) {
            return 0;
        }

        int edited = 0;

        // edit items
        for(IItem itm : equips) {
            Equip e = (Equip)itm;
            if (edited >= max) {
                break;
            }
            edited++;
            if (stat.equals("str")) {
                e.setStr(newval);
            } else if (stat.equals("dex")) {
                e.setDex(newval);
            } else if (stat.equals("int")) {
                e.setInt(newval);
            } else if (stat.equals("luk")) {
                e.setLuk(newval);
            } else if (stat.equals("watk")) {
                e.setWatk(newval);
            } else if (stat.equals("matk")) {
                e.setMatk(newval);
            } else {
                return -2;
            }
        }
        for(IItem itm : equipped) {
            Equip e = (Equip)itm;
            if (edited >= max) {
                break;
            }
            edited++;
            if (stat.equals("str")) {
                e.setStr(newval);
            } else if (stat.equals("dex")) {
                e.setDex(newval);
            } else if (stat.equals("int")) {
                e.setInt(newval);
            } else if (stat.equals("luk")) {
                e.setLuk(newval);
            } else if (stat.equals("watk")) {
                e.setWatk(newval);
            } else if (stat.equals("matk")) {
                e.setMatk(newval);
            } else {
                return -2;
            }
        }

        // Return items edited
        return (edited);
    }

Sorry for the poor indenting, I made the NPC in NotePad. -.-"
Haven't tested this, although it should work.
If someone has released this please tell me and I will give proper credits :].
 
Last edited:
Re: Custom MSI Npc

Good... i guess. Really messy and could of used a array.

Also, didn't you mean to take away their stats? ( Like set luk, str, int, etc to 4, kinda liek super rebirth? O.o )

Anyways, heres a cleaner, nicer, script.

PHP:
importPackage(Packages.server);
var status = 0;
var item = [1112900, 1042162, 1060026, 1142126, 1072153, 1082102, 1002186, 1102039, 1012057, 1032024, 1132010, 1122001];

function start() {
	cm.sendSimple("#r#eHello I am a custom a made MSI Maker. \r\n#L0##r(equipable 4 times)Get a #i1112900# with 30k all stats for 100RBs, + 30k stats. \r\n#L1##gGet a #i1042162# with 30k all stats for 100RBs, + 30k stats. \r\n#L2##bGet a #i1060026# with 30k all stats for 100RBs, + 30k stats. \r\n#L3##rGet a #i1142126# with 30k all stats for 100RBs, + 30k stats. \r\n#L4##gGet a #i1072153# with 30k all stats for 100RBs, + 30k stats. \r\n#L5##bGet a #i1082102# with 30k all stats for 100RBs, + 30k stats. \r\n#L6##rGet a #i1002186# with 30k all stats for 100RBs, + 30k stats. \r\n#L7##gGet a #i1102039# with 30k all stats for 100RBs, + 30k stats. \r\n#L8##bGet a #i1012057# with 30k all stats for 100RBs, + 30k stats. \r\n#L9##rGet a #i1032024# with 30k all stats for 100RBs, + 30k stats. \r\n#L10##gGet a #i1132010# with 30k all stats for 100RBs, + 30k stats. \r\n#L11##bGet a #i1122001# with 30k all stats for 100RBs, + 30k stats.");
}

function action(m,t,s) {
    if (m < 1) {
        cm.sendOk("#e#kOk, see you next time!");
        cm.dispose();
        return;
    } else {
        status++;
    }
    if (status == 1) {
if (cm.getPlayer().getStr() > 29999 && cm.getPlayer().getDex() > 29999 && cm.getPlayer().getInt() >= 29999 && cm.getPlayer().getLuk() >= 29999 && cm.getPlayer().getReborns() > 99) {	
		cm.gainItem(item[s], 1);
			Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, item[s], "str", 30000);
			Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, item[s], "dex", 30000);     
			Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, item[s], "int", 30000);            
			Packages.server.MapleInventoryManipulator.editEquipById(cm.getPlayer(), 1, item[s], "luk", 30000);
		cm.getPlayer().setStr(4); 
		cm.getPlayer().setDex(4);
		cm.getPlayer().setLuk(4); 
		cm.getPlayer().setInt(4);
		cm.dispose();
				} else {
					cm.sendOk("You do not have the right requirements for this MSI, which is 30k str, dex, int, luk, and 100 Reborns.");
					cm.dispose();
		}	
	}
}


---------- Post added at 01:42 AM ---------- Previous post was at 01:41 AM ----------

Kinda embarrassing to ask, but what is MSI? >.<
Max Stat Item

P.s. This is not Max stats... max stats is 32767... jsut being a prick right now, lol :D
 
Re: Custom MSI Npc

Lol, oops, I forgot about taking away the stats i'll do it right now.
Sorry :P

---------- Post added at 01:57 AM ---------- Previous post was at 01:46 AM ----------

Updated.
 
Re: Custom MSI Npc

Nice Release llol
NPC Scripts works on all version always exapt if you have part specific for other version but ya xD

Again, Helpful release for some people xD
 
Re: Custom MSI Npc

WOw ! so wierd i put the script on a npc then i use it i got the item but it nots 30k it only give me a ring there no stats in it.For the MapleCharacter i already got it but it doesn't give me the stats.
 
Last edited:
Back