summaryrefslogblamecommitdiff
path: root/npc/003-1-1/yetiking.txt
blob: 0e293d0963d6937430ae44a9ca1f933a9abfa685 (plain) (tree)
1
2
3
4
5
6
7
8
9
10






                                                                                
                                      

                                         
 

                                                            
                                           













                                                                                            

                                        











                                                                       
                                                                                     


        
                                                                         








                                                          

                                                                




                   

                   

















                                                                                              





                                                                                                         




                                                                                                                                    
                                                                                           
                                
                              



                                             




                   
                                                  

        
// TMW2 Scripts
// Author:
//   Jesusalva
// Description:
//   Celestia Yeti King's quest. Designed so if you're with 4 players, all 4 can
//   summon the Yeti King, helping you while doing the quest by themselves.

// TODO: OnPCDieEvent must reset quest
// setnpcdisplay getarg(0), NPC_YETI_KING


003-1-1,94,21,0	script	#YetiKingSummon	NPC_SUMMONING_CIRC,{
    .@q=getq(HurnscaldQuest_Celestia);
    if (.@q == 1 && !.inUse) goto L_Summon;
    end;

L_Summon:
    dispbottom l("Emoc otem itey gnik!"); // come to me yeti king, spelled backwards. Sorry.
    initnpctimer;
    end;

L_Die:
    percentheal(-100, -100);
    npctalk3 l("You're playing with fire. Or ice. Or whatever.");
    closedialog;
    close;

OnTimer1000:
    setnpcdisplay .name$, NPC_YETI_KING;
    .inUse=1;
    end;

OnTimer2000:
    npctalk("Whom dares to disturb my slumber?!");
    end;

OnTimer5000:
    if (getareausers("003-1-1", 5) < 2) {
        npctalk("A lone adventurer? Pft. I'm back to my slumber!");
        stopnpctimer;
    } else {
        npctalk("You're courageous to summon me, I'll give you that.");
        areatimer 0, "003-1-1", 93, 20, 97, 25,3000, "#YetiKingSummon::OnSummonTalk";
    }
    end;

// You can only talk to him with SummonTalk. Only one player will summon.
OnSummonTalk:
    .@q=getq(HurnscaldQuest_Celestia);
    if (.@q != 1)
        end;
    mesn "Dah Yeti King!!";
    mesq l("Why do you summon me? Speak.");
    mes "";
    select
        l("I'm sorry, these words just came to my mind."),
        l("I did not summon you, I'm just a passer-by. Sorry."),
        rif(.@q == 1, l("Celestia asks for your help."));

    mes "";

    if (@menu == 1)
        goto L_Die;
    if (@menu == 2)
        close;

    mesn "Dah Yeti King!!";
    mesq l("Yeah yeah yeah, you're not the first one to come talking about that to me.");
    next;
    mesn "Dah Yeti King!!";
    mesq l("My answer is a no, and it'll say like that. Don't test my patience any further.");
    next;
    select
        l("You'll come with me!"),
        l("I can prove you my worth!"),
        l("Sorry! Sorry!");

    mes "";
    if (@menu == 1)
        goto L_Die;
    if (@menu == 2)
        close;

    mesn "Dah Yeti King!!";
    mesq l("Well, then I'll give you a task. We may meet again in Soren Village.");
    next;
    mesn "Dah Yeti King!!";
    mesq l("I'll warp you to the Cave Of Trials. Pass all trials, and meet me on Soren's House. Hahah!");
    setq HurnscaldQuest_Celestia, 2;
    areatimer 0, "003-1-1", 93, 20, 97, 25, 15000, "#YetiKingSummon::OnWarper";
    npctalk l("Listen to me! Whoever wants to follow foolish @@ on their suicide quest, stay here for 15 seconds!", strcharinfo(0));
    close;

OnWarper:
    mes col("Warp to the Cave Of Trials? You still get EXP penalty if you die, beware!",9);
    if (askyesno() == ASK_YES) {
        warp "001-6", 27, 180;
    }
    setnpcdisplay .name$, NPC_SUMMONING_CIRC;
    .inUse=0;
    closedialog;
    close;

OnInit:
    .sex = G_OTHER;
    .distance = 1;
    .inUse=0; // Prevent multiple summons and etc.
    end;
}