summaryrefslogblamecommitdiff
path: root/npc/003-1/aidan.txt
blob: 0a52454ecae8af2e7db6044a07f040405d61027a (plain) (tree)









































































                                                                                                                                                                                     



                                                                     

          









































                                                                                                 

                                  



                                                              





                                           








                                                         
 

 
// 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(Topaz), 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: @@/1000 kills", getq2(General_Hunter));
    if (getq2(General_Hunter) >= 1000) goto L_Finish;
    close;

L_Register:
    next;
    mesn;
    mesq l("We have a special program, where you kill 1000 of a monster and get great rewards!");
    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 1000 kills!");
        close;
        break;
    case 3:
        setq(General_Hunter, 2);
        mesn;
        mesq l("Good luck! Don't come back until you reach 1000 kills!");
        close;
        break;
    default:
        close;
    }

L_Finish:
    switch (getq(General_Hunter)) {
    case 1:
        setq General_Hunter, 0, 0;
        Zeny=Zeny+5000;
        mesn;
        mesq l("Good job, here is 5,000 GP.");
        close;
    case 2:
        setq General_Hunter, 0, 0;
        Zeny=Zeny+25000;
        mesn;
        mesq l("Good job, here is 25,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;
}