// TMW-2 Script
// Author: Crazyfefe, Jesusalva
// Desc: Originally a Tmw script
003-1,95,97,0 script Aidan NPC_PLAYER,{
function Register
{
mesn l("Aidan, the Monster Guide");
mesq l("Oh my, you don't seem to be registered as a Monster Hunting Quest Participant. Would you like to register?");
next;
mesn l("Aidan, the Monster Guide");
mesq l("The register fee is 2000 GP.");
do
{
select
rif(Zeny >= 2000, l("Register")),
rif(Zeny < 2000, l("How do I get so much money?!")),
l("Not at the moment"),
l("Information");
switch (@menu)
{
case 1:
mes "";
Zeny=Zeny-2000;
MPQUEST=1;
mesn l("Aidan, the Monster Guide");
mesq l("Give me a second to look over your paperwork.");
next;
mesn l("Aidan, the Monster Guide");
mes l("\"Well, looks like you qualify!");
mes l("Welcome to the questing world!\"");
close;
break;
case 2:
mes "";
mesn l("Aidan, the Monster Guide");
mesq l("Sell old equipment and items you won't use. For example, what should you do with a @@ or an @@? Sell it!", getitemlink(Ruby), getitemlink(ScorpionStinger));
close;
break;
case 3:
mes "";
mesn l("Aidan, the Monster Guide");
mesq l("Very well, you don't know what you're missing.");
close;
break;
case 4:
mes "";
mesn l("Aidan, the Monster Guide");
mesq l("You see, because the Monster King, monsters have been running rampant. If they grow too much in numbers, cities may be overrun.");
next;
mesn l("Aidan, the Monster Guide");
mesq l("Therefore, the Alliance created a system so when you kill a monster, depending on its strength, you'll get Monster Points.");
next;
mesn l("Aidan, the Monster Guide");
mesq l("To prevent abuse, a registering fee is charged. Nothing major.");
next;
mesn l("Aidan, the Monster Guide");
mesq l("So whaddaya say, sign up won't you?");
next;
mes "";
Register;
break;
}
} while (@menu != 4);
}
if (MPQUEST == 0)
Register;
mesn l("Aidan, the Monster Guide");
mesq l("You currently have @@ Monster Points. These points are acquired while killing monsters.", Mobpt);
if (getq(General_Hunter) == 0) goto L_Register;
mesn;
mesq l("Current Progress: @@/10,000 kills", getq2(General_Hunter));
if (getq2(General_Hunter) >= 10000) goto L_Finish;
close;
L_Register:
next;
mesn;
mesq l("The alliance also have a special program, called ##BGrand Hunter Quest##b, where you kill 10,000 of a monster and get great rewards.");
next;
mesn;
mesq l("You can gain rares, even. Come register for this special program. It's free!");
// TODO: Here we must setarray, and add the flag you are now allowed to do these quests.
// Then the other NPCs can give you other monsters to kill, backuping previous values
// to this array. You won't be penalized for switching.
select
l("I'm not interested."),
l("(Lv 20) Maggots"),
l("(Lv 60) Snakes");
switch (@menu) {
case 2:
setq(General_Hunter, 1);
mesn;
mesq l("Good luck! Don't come back until you reach 10000 kills!");
close;
break;
case 3:
setq(General_Hunter, 2);
mesn;
mesq l("Good luck! Don't come back until you reach 10000 kills!");
close;
break;
default:
close;
}
L_Finish:
switch (getq(General_Hunter)) {
case 1:
setq General_Hunter, 0, 0;
Zeny=Zeny+25000;
inventoryplace MaggotCocoon, 1;
getitem MaggotCocoon, 1;
getexp 15000, 0;
mesn;
mesq l("Good job, here is 25,000 GP and 15,000 EXP.");
mesq l("And your rare, a @@! Enjoy!", getitemlink(MaggotCocoon));
close;
case 2:
setq General_Hunter, 0, 0;
Zeny=Zeny+250000;
mesn;
mesq l("Good job, here is 250,000 GP!");
close;
}
OnInit:
.@npcId = getnpcid(0, .name$);
setunitdata(.@npcId, UDT_HEADTOP, NPCEyes);
setunitdata(.@npcId, UDT_HEADMIDDLE, LegionCopperArmor);
setunitdata(.@npcId, UDT_HEADBOTTOM, CottonTrousers);
setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); // Boots
setunitdata(.@npcId, UDT_HAIRSTYLE, 3);
setunitdata(.@npcId, UDT_HAIRCOLOR, 3);
.sex = G_MALE;
.distance = 5;
end;
OnNPCKillEvent:
if (getq(General_Hunter) == 0) end;
if (getq(General_Hunter) == 1 && killedrid == Maggot)
setq2 General_Hunter, getq2(General_Hunter)+1;
if (getq(General_Hunter) == 2 && killedrid == Snake)
setq2 General_Hunter, getq2(General_Hunter)+1;
end;
}