summaryrefslogblamecommitdiff
path: root/npc/000-2-1/chefgado.txt
blob: 0e3a71beaffc02c12be25f9958b7db12380c32a4 (plain) (tree)
1
2
3
4
5
6
7
8
9
                
           
             
                   

                      

                         
                     



                                                       
                         


                                                            
 
                                                       

                                    



                                        
                                                                 

                                     
 
         
                  


                                                                                                   
 














                                                                        
          
 
             
         



                                                                                                                            
                                                                      





                                                 
          
 
       
           
         
                                                                                                                                              

         

                         

           
         

                                                                                                                            
                                                                                                                                                                                     
         
                                                                                                                                                    
         
                                                                                                        

         

                         

           
         
                                                            
         
                                                                                                                         
         
                                                                                                                      
         
                                                   


         
                                                                          
                               
 

                                
         
                                                                                                                                                                 
         
                                                                                                                           
 
                        
 
                
         
                                                                                         

         
        
                                                                                                                                                                                              


                                                               
 
               

           
                                                                                                                                                                  


                        
          
 
         
           
 
                                   
 



                            
 
         
                                                                            


                                                                                  
                                                                                                                               
 
                                
                            
          
 
       



                                               
                                                                                                                      
         
                                                   
 
          
 
                 
         
                                                                                                 
 
          
 
              
         
                                                                                                                                     

                                
                
                                                        
                            
                     
                 
 
          
 
                
         
                                                                                                    
 
          
 
           
         
                                                              

         

                                                         


           
                            
         
                                                      
 
                                                             

         
                                                                           
 
          
 
               
         
                                                                                               
 
          
 
       
                      
          

       
                  
        
 
// Evol scripts.
// Authors:
//    Hal9000
//    Qwerty Dragon
// Description:
//    La Johanne Chef.
// Variable:
//    ShipQuests_ChefGado
//    ShipQuests_Nard
// Values:
//    0   Default, no quest given.
//    1   Quest accepted.
//    2   Ingredients collected, ready to poison Julia.
//    3   Julia poisoned.
//    4   Quest complete. Chef Gago wins.
//    5   Quest complete. Julia wins (poison dish returned).
//    6   Quest complete. Julia wins.

000-2-1,27,28,0	script	Chef Gado	NPC_CHEF_GADO,{
    .@q = getq(ShipQuests_ChefGado);
    .@n = getq(ShipQuests_Nard);
    if (.@q == 1) goto L_QuestAccepted;
    if (.@q == 2) goto L_PoisonAccepted;
    if (.@q == 3) goto L_PoisonJulia;
    if (.@q == 4) goto L_QuestComplete;
    if (.@q == 5 && countitem(PoisonedDish) > 0) goto L_Aborting;
    if (.@q > 4) goto L_QuestAborted;
    if (.@n == 3) goto L_QuestStart;

    mesn;
    .@r = rand(3);
    if (.@r == 0) mesq l("What are you doing in my kitchen?! Get out, it's not a place for kids!");
    if (.@r == 1) mesq l("Where is the damn salt?! Give me the salt, I know you have it!");
    if (.@r == 2) mesq l("Are you going to stand here all day long? Do the dishes or go away.");

    if (getq(General_SmearedHands) < 3) {
        next;
        select
            l("I'll get moving, sorry!"),
            //rif(.@r == 1 && countitem(Salt), l("Offer him the salt")),
            l("Can you teach me cooking?");
        mes "";
        if (@menu == 2) {
            mesn;
            mesq l("NO! I am busy, can't you see?!");
            next;
            mesn;
            mesq l("When we reach Artis, maybe, but not now!");
        }
    }
    close;

L_QuestStart:
    mesn;
    mesq l("So it seems I have another stomach to fill. Those bastards have no respect for who feeds them every damn day!");
    next;

    menu
        l("How rude! What is the reason behind your malice?"), L_Rude,
        l("I swear, I do not eat so much."), -;

    mes "";
    mesn;
    mesq l("Yeah, yeah, of course you don't...");

    close;

L_Rude:
    mes "";
    mesn;
    mesq l("UAHAHAHAAH! I am the cook of that bunch of donkeys, and I can be rude with everyone from this bossy captain to that harpy-lady!");
    next;

    select
        l("Harpy-lady?");

    mes "";
    mesn;
    mesq l("I am sure you know her. Nice dress, large smile and a constant flux of orders and rules. Julia they call her!");
    next;
    mesq l("You have to know that there was a time during which I was the unopposed lieutenant of this crew. Then one day one of those damn sailors brought that 'nice' lady here.");
    next;
    mesq l("I will not tell you all the details, but after a month, she was ruling the ship and I was sent down here, cooking for those traitors!");
    next;
    mesq l("But I swear that one day... Oh... My tasty revenge! Hhm, actually I wonder if... Maybe...");
    next;

    select
        l("M... Maybe?");

    mes "";
    mesn;
    mesq l("Well, eh-heh... Welcome aboard, young fellow!");
    next;
    mesq l("I just realized I am lacking some common things, and one key ingredient, to prepare a... A special recipe.");
    next;
    mesq l("I only need 2 @@, 2 @@s, 1 @@...", getitemlink(PiouLegs), getitemlink(HalfCroconut), getitemlink(Aquada));
    next;
    mesq l("... and 1 @@.", getitemlink(SeaDrops));
    next;

    menu
        l("Sea water?! I will not help you with your evil plan!"), L_Quit,
        l("Sure, why not?"), -;

    setq ShipQuests_ChefGado, 1;
    mes "";
    mesn;
    mesq l("Well done! Collect all the ingredients and then come back here. You will be rewarded once I am satisfied that they understand who rules this ship!");
    next;
    mesq l("Before you go, let me tell you how to get @@s, because you don't look very smart.", getitemlink(HalfCroconut));

    goto L_OpenCroconut;

L_QuestAccepted:
    mesn;
    mesq l("Have you collected all the ingredients for my recipe? The special one too?");
    next;

    menu
        rif(countitem(PiouLegs) > 1 && countitem(HalfCroconut) > 1 && countitem(Aquada) > 0 && countitem(SeaDrops) > 0, l("All your... Fresh ingredients are ready to be cooked.")), L_GotAll,
        l("What are your needs?"), L_Need,
        l("Where can I find a half croconut?"), L_OpenCroconut,
        l("Not yet. I will be back soon."), L_Quit;

L_OpenCroconut:
    mes "";
    mesn;
    mesq l("Take a @@ and try opening it using something like a sharp knife. I doubt you'll succeed, you're being so weak in everything.", getitemlink(Croconut));
    next;
    mesq l("Now move!");

    close;

L_GotAll:
    mes "";

    inventoryplace PoisonedDish, 1;

    delitem PiouLegs, 2;
    delitem HalfCroconut, 1;
    delitem Aquada, 1;
    delitem SeaDrops, 1;

    mesn;
    mesq l("Let me see... Crispy legs, disgusting liquids... Let's start!");
    next;
    mesq l("Water, salt, spicy herbs and meat stuffed with my special surprise!");
    next;
    mesq l("Done. Here, take it! Now, here is the plan. Go talk to her and offer our beautiful lady a bite of her arrogance!");

    setq ShipQuests_ChefGado, 2;
    getitem PoisonedDish, 1;
    close;

L_Need:
    mes "";
    mesn;
    mesq l("Shhht, don't say it that loud...");
    next;
    mesq l("I only need 2 @@, 2 @@s, 1 @@...", getitemlink(PiouLegs), getitemlink(HalfCroconut), getitemlink(Aquada));
    next;
    mesq l("... and 1 @@.", getitemlink(SeaDrops));

    close;

L_PoisonAccepted:
    mesn;
    mesq l("Fool! Just come back here when you'll be done with our little... 'Secret mission'.");

    close;

L_PoisonJulia:
    mesn;
    mesq l("The usurper has been punished! This is a great day! Take this reward as a prize for your loyalty to the old commander!");

    setq ShipQuests_ChefGado, 4;
    Zeny += 200;
    message strcharinfo(0), l("You receive @@ E!", 200);
    inventoryplace Bread, 1;
    getitem Bread, 1;
    getexp 15, 0;

    close;

L_QuestComplete:
    mesn;
    mesq l("Oh, it's you. I think it's better we do not talk for a while. They suspect something.");

    close;

L_Aborting:
    mesn;
    mesq l("Wait, why do you still have the dish with you?!");
    next;

    select
        l("I informed Julia about your monstrous plan.");

    mes "";
    mesn;
    mesq l("Are you mad?!");
    next;
    mesq l("Give me back this dish, you dirty liar!");

    if (countitem(PoisonedDish) > 0) delitem PoisonedDish, 1;

    next;
    mesq l("You're like the rest of this filthy crew, I can't trust you!");

    close;

L_QuestAborted:
    mesn;
    mesq l("You're like the rest of this filthy crew. Your name is now on the traitors list!");

    close;

L_Quit:
    closeclientdialog;
    close;

OnInit:
    .distance = 2;
    end;
}