summaryrefslogblamecommitdiff
path: root/npc/functions/mobhunter.txt
blob: 2c0031bb7aadf294854fca64a8cac93b18eab2c1 (plain) (tree)
1
2
3
4
5


                                   
                                       
 











                                                         
                            

                     


                     


                                                                                      















                                                         
                            
                  
               
                                  
                  


                          


                                                                                      





                     
                      
                                         






                                            


                                       
         
                                                             
         

                                                                                          

                                                                                                                                                 



                    
                                                                                                              









                                                                          
              
     

                


 
// TMW-2 Script
// Author: Jesusalva
// Desc:   Grand Hunter Quest Utils
// Note:   Remember to update Aidan too

// MobID
function	script	GHQ_GetQuestIDByMonsterID	{
    switch (getarg(0)) {
        case Maggot:
            return 1;
            break;
        case Snake:
            return 2;
            break;
        case Scorpion:
            return 3;
            break;
        case ForestMushroom:
            return 4;
            break;
        case Pinkie:
            return 5;
            break;
        default:
            debugmes "Invalid mob ID: " + getarg(0);
            dispbottom l("ERROR, Please report: GHQ GQID: Invalid ID: @@", getarg(0));
            return 0;
            break;
    }

}

// QuestID (basically reverses the previous code)
function	script	GHQ_GetMonsterIDByQuestID	{
    switch (getarg(0)) {
        case 1:
            return Maggot;
            break;
        case 2:
            return Snake;
            break;
        case 3:
            return Scorpion;
            break;
        case 4:
            return ForestMushroom;
            break;
        case 5:
            return Pinkie;
            break;
        default:
            debugmes "Invalid quest ID: " + getarg(0);
            dispbottom l("ERROR, Please report: GHQ GMID: Invalid ID: @@", getarg(0));
            return 0;
            break;
    }

}

// MobID, Place, Prize
function	script	GHQ_Assign	{
    // Arguments
    .@mobId =getarg(0);
    .@loc$  =getarg(1);
    .@prize$=getarg(2);

    // Current Quest Status + vars
    .@id=GHQ_GetQuestIDByMonsterID(.@mobId);
    .@q=getq(General_Hunter);
    .@p=getq2(General_Hunter);
    .@m=GHQ_GetMonsterIDByQuestID(.@q);
    next;
    //mesq l("Current Quest Progress: @@/10,000 kills", .@p);
    mesn;
    mes l("I represent the @@ Hunters. We hunt @@.", .@loc$, getmonsterlink(.@mobId));
    mes l("The great prize is @@. It can be claimed with Aidan, on Tulimshar.", .@prize$);
    if (.@q == .@id) {
        mes l("You are currently hunting @@/10000 @@. When done, remember to claim rewards with Aidan, on Tulimshar!", .@p, getmonsterlink(.@m));
        next;
        closedialog;
        goodbye;
    }
    if (.@q) mes l("You are currently hunting @@/10000 @@. Do you want to switch?", .@p, getmonsterlink(.@m));
    select
        l("I'm not interested."),
        rif(GHMEMO[.@id] < 10000,l("I'll hunt them for you."));

    switch (@menu) {
    case 2:
        GHMEMO[getq(General_Hunter)]=getq2(General_Hunter);
        setq(General_Hunter, .@id, GHMEMO[.@id]);
        mesn;
        mesq l("Good luck! Don't come back until you reach 10000 kills!");
        break;
    }
    closedialog;
    goodbye;

}