summaryrefslogblamecommitdiff
path: root/world/map/npc/009-1/event.txt
blob: 4b2a65d81f418a7ba43bee519ab3f57743d1654e (plain) (tree)
1
2
3
4
5
6
7
8

                                                                    
                                                                            




                                                           


                                                                                     




                                                                                           
                                   















































                                                                                                                                                                
                      






















                                                                                                                                                                                                              
                                                                                                                                                                  







                                                         
                                       



                                                                     

                                      













                                                                                                                
                                                                                                                             
         
                                       
                                   
                                      





                                                                          















                                                                                                                               














                                                                    
                                                                 




                
// Kytty <3 Valentine Day 2021
// Valentine Day 2021-02-14 script authored by Jesusalva on the 12th
// St. Valentine Day is always on the 14th, the event goes from 13th to 15th

009-1,30,34,0|script|Kytty|430
{
    // Core Variable Switcher
    if (gettime(5) >= 13 && gettime(5) <= 15) goto L_Quest;
    if (gettime(5) > 15 && strcharinfo(0) == "kytty" && $VALENTINE) goto L_StopEvent;
    if (gettime(5) > 15 && #VALENTINE) goto L_ClaimRewards;
    if (gettime(5) > 15 && GM >= GM_DEV && $VALENTINE) goto L_ReadOnly;
    mes "[Kytty]";
    mes "\"Uh? Hello there. I am looking for my husband to stare at him, don't mind me.\"";
    close;

L_Quest:
    if (#VALENTINE) goto L_Running;
    // Core dialog
    mes "[Kytty]";
    mes "\"Hey, "+strcharinfo(0)+"! I have a problem and perhaps you can help me!\"";
    next;
    menu
        "Sure, m'am... What should I do?", L_Continue,
        "Who, me? Sorry, wrong person.", L_Close;

L_Continue:
    mes "";
    mes "[Kytty]";
    mes "\"I feel like my husband is staring at other people, and that is ABSURD! He should only stare at kytty!\" %%e";
    next;
    mes "[Kytty]";
    mes "\"So kytty came up with a great plan - kytty will brew some [@@5263|Love Potions@@] so hubby only stares at me!\"";
    next;
    mes "[Kytty]";
    mes "\"I have most ingredients, but a few are still missing and I was hoping you could help me out:\"";
    mes "- 20x Cherry";
    mes "- 20x Chocolate Bar";
    mes "- 1x Diamond";
    mes "- 1x Chocolate Cake";
    next;
    mes "[Kytty]";
    mes "\"Uh? Of course I won't put everything in the potion! Wyara will sell me some other ingredients for the diamond, and... Hey, stop making questions!\"";
    next;
    mes "[Kytty]";
    mes "\"Do you have everything I've asked for?\"";
    menu
        "I do.", L_Check,
        "I don't.", L_Close;

L_Check:
    mes "";
    getinventorylist;
    if (@inventorylist_count == 100) goto L_Full;

    if (countitem("ChocolateBar") < 20) goto L_NotEnough;
    if (countitem("Cherry") < 20) goto L_NotEnough;
    if (countitem("Diamond") < 1) goto L_NotEnough;
    if (countitem("ChocolateCake") < 1) goto L_NotEnough;

    delitem "ChocolateBar", 20;
    delitem "Cherry", 20;
    delitem "Diamond", 1;
    delitem "ChocolateCake", 1;
    getitem "LovePotion", 1;
    getexp 50000, 0;
    set #VALENTINE, 1;
    mes "[Kytty]";
    mes "\"With this, he will totally stare only at me now! Thanks for the help. Here, you can have an extra, but you are not cute like him so don't blame me if it don't work or present... side effects.\"";
    next;
    mes "[Kytty]";
    mes "\"Also, I love chocolate. I'll give you a spare potion every fifty [@@509|@@] you bring me.\"";
    close;

L_NotEnough:
    mes "";
    mes "[Kytty]";
    mes "\"Don't try to troll me, I know you don't have everything.\"";
    close;

L_Full:
    mes "[Kytty]";
    mes "\"Free up some space in your inventory, please.\"";
    close;

/////////////////////////////////////////////////////////////////////
L_Running:
    getinventorylist;
    if (@inventorylist_count == 100) goto L_Full;
    mes "[Kytty]";
    mes "\"Have you brought me more chocolate? I am starving with only "+$VALENTINE+" [@@509|@@]. You ##Bonly##b gave me "+(#VALENTINE-1)+" bar(s), after all!\"";
    next;
    menu
        "Not yet, but I'll be back.", L_Close,
        "Sure thing miss, take all you want!", L_Collect;

L_Collect:
    mes "";
    set @choco, countitem("ChocolateBar");
    set @bonus, (#VALENTINE%50)+@choco;
    set @potio, @bonus/50;
    //debugmes "Choco "+@choco+" Potio "+@potio+" Bonus "+@bonus+".";
    set @bonus, 0;
    delitem "ChocolateBar", @choco;
    set #VALENTINE, #VALENTINE+@choco;
    set $VALENTINE, $VALENTINE+@choco;
    getexp @choco*15, @choco*7;
    if (@potio) goto L_BonusPots;
    mes "[Kytty]";
    mes "\"Yummy! Thanks for your support. Tell me if you have more chocolate!\"";
    close;

L_BonusPots:
    getitem "LovePotion", @potio;
    mes "[Kytty]";
    mes "\"Here are some love potions for you. But as I said - I'm not sure if you are cute enough for them.\"";
    close;

L_StopEvent:
    mes "[Kytty]";
    mes "\"Hey other me! I still have "+$VALENTINE+" chocolate bars, but I'm a NPC and cannot eat them, so here they are!\"";
    next;
    set @choco, min($VALENTINE, 30000);
    getitem "ChocolateBar", @choco;
    set $VALENTINE, $VALENTINE-@choco;
    mes "[Kytty]";
    mes "\"Also: Jesusalva asked me to wish you a happy Valentine Day.\"";
    close;

L_ReadOnly:
    mes "[Kytty]";
    mes "\"I'm still holding on "+$VALENTINE+" chocolate bars, but I'll eat them soon!\"";
    close;

////////////////////////////////////////////////////////////////////
L_ClaimRewards:
    if(!#VALENTINE) goto L_Close;
    getinventorylist;
    if (@inventorylist_count > 95) goto L_Full;
    setarray @oldstock$, "GrassFedTofu", "Honey", "VeganWater", "FairTradeSoil", "LactoseFreeAcorn", "RawAir", "FreeRangeMoss";
    getitem @oldstock$[rand(getarraysize(@oldstock$))], 1;
    cleararray @oldstock$, "", getarraysize(@oldstock$);
    //getitem "BlueWolfHelmet", 1; // FIXME?
    getitem "ShockSweet", rand(4, 7);
    getitem "DarkConcentrationPotion", rand(2, 5);
    getexp 1+(#VALENTINE*BaseLevel)/2, 0;
    set #VALENTINE, 0;
    close;

////////////////////////////////////////////////////////////////////
L_Close:
    close;

L_Off:
    disablenpc "Kytty";
    end;

L_On:
    enablenpc "Kytty";
    end;

OnInit:
    if (gettime(6) == 2) goto L_On; // NPC shows only in February
    goto L_Off;

OnClock0000:
    goto OnInit;
}