summaryrefslogblamecommitdiff
path: root/npc/001-4/lilica.txt
blob: 67f9f69ea881d2af100a83e3b2d009305c0ba154 (plain) (tree)
1
2
3
4
5
6
7
8
9







                                                                                 
                                                                                                                                                                                                                                                             

         
                                                                                                       



                                         

                                                                              







                                        




                            












                                                                                                                                                                                    
          
 
        
                                                                                                                     













                                                                                                                                                                 

                                

                                              




                                                                                               

          









                                                                                                                                   












                                                    
                                    
                                

                                   











                                                 







                                                    


                                       




                                   
 


                                                
 





                                                 

 
// TMW2 scripts.
// Author:
//    Jesusalva
// Description:
//    Lilica is TMW-BR Scary Scary Easter Bunny and will help your trading stuff.

001-4,139,151,0	script	Lilica#easter	NPC_EASTER,{
    mesn;
    mesq lg("Ah, traveller! I am Lilica the Scary Bunny! I exchange many @@ and @@ for neat rewards!","Ah, traveller! I am Lilica the Scary Bunny! I exchange many @@ and @@ for neat rewards!", getitemlink(SilverEasteregg), getitemlink(GoldenEasteregg));
    next;
    mesn;
    mesq l("Golden Eggs are used for the grand collector prize. Ah, I love Easter! I loooooooove it!");

    menu
        l("Scary..........."), -,
        l("Trade Silver Eggs"), L_Silver,
        l("Trade Golden Eggs"), L_Golden,
        rif(EASTER_EVENT != gettime(7),l("I want an Eggshell Hat!")), L_Quest,
        l("View LeaderBoard"), L_Leader;
    close;

L_Silver:
    openshop "#eastershop1";
    closedialog;
    close;

L_Golden:
    openshop "#eastershop2";
    closedialog;
    close;

L_Leader:
	.@nb = query_sql("SELECT c.name, i.amount FROM `inventory` AS i, `char` AS c WHERE i.nameid=834 AND i.char_id=c.char_id ORDER BY i.amount DESC LIMIT 10", .@name$, .@value);

	mes("1."+.@name$[0]+" ("+.@value[0]+")");
	mes("2."+.@name$[1]+" ("+.@value[1]+")");
	mes("3."+.@name$[2]+" ("+.@value[2]+")");
	mes("4."+.@name$[3]+" ("+.@value[3]+")");
	mes("5."+.@name$[4]+" ("+.@value[4]+")");
	mes("6."+.@name$[5]+" ("+.@value[5]+")");
	mes("7."+.@name$[6]+" ("+.@value[6]+")");
	mes("8."+.@name$[7]+" ("+.@value[7]+")");
	mes("9."+.@name$[8]+" ("+.@value[8]+")");
	mes("10."+.@name$[9]+" ("+.@value[9]+")");
    close;

L_Quest:
    setarray .@Seasonal, EggshellHat, EggshellHat, GreenEggshellHat, OrangeEggshellHat, DarkEggshellHat, EggshellHat;
    .@Hat=.@Seasonal[gettime(7)%6]; // Magically choose the hat from the array
    mesn;
    mesq l("Good choice! This year we're having a @@!", getitemlink(.@Hat));
    next;
    mesn;
    mesq l("As usual, you can get only one hat yearly, for the symbolic amount of 30 @@ and 10 @@!", getitemlink(GoldenEasteregg), getitemlink(SilverEasteregg));
    next;
    menu
        l("Maybe later."), -,
        rif(countitem(GoldenEasteregg) >= 30 && countitem(SilverEasteregg) >= 10, l("Deal.")), L_QuestDone;
    close;

L_QuestDone:
    inventoryplace .@Hat, 1;
    delitem GoldenEasteregg, 30;
    delitem SilverEasteregg, 10;
    if (rand(0, 10000) < 1000) goto L_Unlucky;
    EASTER_EVENT=gettime(7);
    // The code below not allow hat to leave user account. A bad idea here so I left commented.
    //getitembound(.@Hat, 1, 1);
    getnameditem(.@Hat, strcharinfo(0));
    mesn;
    mesq l("Here you go! Happy easter! Bhop bhop!");
    close;

L_Unlucky:
    getitem StrangeCoin, 15;
    mesn;
    mes l("\"Oh... Sorry, @@.", strcharinfo(0));
    mes l("But in accordance to [@@https://tmw2.org/forums/viewtopic.php?pid=8|Community Decision@@], you were unlucky.");
    mes l("This means ##BAll items were lost##b, and you need to collect EVERYTHING, again, to get the hat.");
    mes l("But hey, it is Easter and the poll is still open, so here are 15 @@ as a consolation prize.", getitemlink(StrangeCoin));
    mes l("Better luck next time!\"");
    close;

OnInit:
    .sex = G_OTHER;
    .distance = 5;
    end;
}

// Silver Easter Egg exchange.
001-4,139,151,0	trader	#eastershop1	NPC_HIDDEN,{
    end;

OnInit:
	tradertype(NST_CUSTOM);

	sellitem GoldenEasteregg,25;
	sellitem StrangeCoin,20;
	sellitem ChocolateMouboo,6;
	sellitem EasterEgg,3;
    end;

OnCountFunds:
	setcurrency(countitem(SilverEasteregg));
	end;

OnPayFunds:
	if( countitem(SilverEasteregg) < @price )
		end;
	delitem SilverEasteregg,@price;
	purchaseok();
	end;
}
// Golden Easter Egg exchange.
001-4,139,151,0	trader	#eastershop2	NPC_HIDDEN,{
    end;

OnInit:
	tradertype(NST_CUSTOM);

    // Ultra rare items
	sellitem OrangeEggshellHat,200;

    // Rare Items
	sellitem BunnyEars,50;
	sellitem StrangeCoin,2;
	sellitem SilverEasteregg,1;
    end;

OnCountFunds:
	setcurrency(countitem(GoldenEasteregg));
	end;

OnPayFunds:
	if( countitem(GoldenEasteregg) < @price )
		end;
	delitem GoldenEasteregg,@price;
	purchaseok();
	end;
}