Search the Community
Showing results for 'lotti'.
-
how to make this lotti girl announcer will announce only if you get item below 10%. and it will not announce the default reward item. mes "[Lotti Girl]"; mes "It costs "+.Price+" Zeny to play."; if (Zeny < .Price) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; progressbar "",2; set Zeny, Zeny-.Price; set .@i, rand(1,.Total); if (rand(1,100) > getd(".P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) { getitem .Default[.@j], .Default[.@j+1]; if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } } else { for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) { getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } } announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0; specialeffect2 248; close;
-
if( .@gz && .@gz <= 10 ) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0; Thanks again sir emistry, last question how can i disable this? setarray .@Default[0],13517,1; so it will only choose on the arrays i added...because the npc always give default, and few on the array items.
-
if( .@gz && .@gz <= 10 ) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0;
-
Yup it would act like lotti girl its like give this ticket and he will give the items something like this format %,itemid,amount something like that bump the percentage here is like we have in our db? //<%>,<ItemID>,<Amount> setarray .@P1[0],600,8001,1; 600 = 6% chance ? or 600 = 600% chance ?
-
Thanks Skorm, can you help me where to put that random in this script? // http://rathena.org/board/topic/83017-pro-lotti-girl-refine-master/ prontera,139,172,4 script Lotti Girl 714,{ mes "[Lotti Girl]"; mes "Hello Sir! Are you out"; mes "shopping in the city?!"; next; mes "[Lotti Girl]"; mes "I'm Lotti! I'll exchange cool"; mes "random prizes for every"; mes "^ff00001 Lottery Ticket^000000."; next; mes "[Lotti Girl]"; mes "Our Grand prize is:"; mes "^ff0000+9 Weapon Refine Deed^000000"; mes "^ff0000+10 Weapon Refine Deed^000000"; mes "^ff0000+9 Armor Refine Deed^000000"; mes "^ff0000+10 Armor Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "Special prizes are:"; mes "^ff0000+5 Armor Refine Deed^000000"; mes "^ff0000+6 Armor Refine Deed^000000"; mes "^ff0000+7 Armor Refine Deed^000000"; mes "^ff0000+8 Armor Refine Deed^000000"; mes "^ff0000+5 Weapon Refine Deed^000000"; mes "^ff0000+6 Weapon Refine Deed^000000"; mes "^ff0000+7 Weapon Refine Deed^000000"; mes "^ff0000+8 Weapon Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "MVP Card & Headgear prizes are:"; mes "^ff0000Tao Gunka Card^000000"; mes "^ff0000Turtle General Card^000000"; mes "^ff0000Japan Anniversary Hat^000000"; next; mes "[Lotti Girl]"; mes "You can still get random item"; mes "if you failed to get the grand"; mes "prize and special prizes."; next; mes "Consolation prizes are:"; mes "^ff0000Food Buffs^000000"; mes "^ff0000Healing Foods^000000"; mes "^ff0000Random Dye Box^000000"; if (countitem(7528) < 1) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; delitem 7528,1; set .@Total,33; //<%>,<ItemID>,<Amount> setarray .@P1[0],6,8001,1; setarray .@P2[0],5,8002,1; setarray .@P3[0],4,8003,1; setarray .@P4[0],3,8004,1; setarray .@P5[0],2,8005,1; setarray .@P6[0],1,8006,1; setarray .@P7[0],6,8007,1; setarray .@P8[0],5,8008,1; setarray .@P9[0],4,8009,1; setarray .@P10[0],3,8010,1; setarray .@P11[0],2,8011,1; setarray .@P12[0],1,8012,1; setarray .@P13[0],20,13517,3; setarray .@P14[0],20,12080,5; setarray .@P15[0],20,12075,5; setarray .@P16[0],20,12085,5; setarray .@P17[0],20,12090,5; setarray .@P18[0],20,12095,5; setarray .@P18[0],20,12100,5; setarray .@P19[0],50,26000,1; setarray .@P20[0],40,7528,1; setarray .@P21[0],1,4305,1; setarray .@P22[0],45,12033,10; setarray .@P23[0],45,13548,2; setarray .@P24[0],60,12709,20; setarray .@P25[0],65,663,50; setarray .@P26[0],50,26048,1; setarray .@P27[0],1,5846,1; setarray .@P28[0],1,4302,1; setarray .@P29[0],80,13517,1; setarray .@P30[0],80,13517,1; setarray .@P31[0],80,13517,1; setarray .@P32[0],80,13517,1; setarray .@P33[0],80,13517,1; setarray .@Default[0],13517,1; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; } } else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0; specialeffect2 248; close; } and how can i configure the announcement when getting 10% and below items from it? Thanks!
-
i have this now delitem 7539,15; set .@Total,21; //<%>,<ItemID>,<Amount> setarray .@P1[0],10,8005,1; setarray .@P2[0],10,8006,1; setarray .@P3[0],10,8011,1; setarray .@P4[0],10,8012,1; setarray .@P5[0],20,616,20; setarray .@P6[0],25,14232,3; setarray .@P7[0],10,13583,1; setarray .@P8[0],50,26000,10; setarray .@P9[0],50,12246,5; setarray .@P10[0],50,12080,10; setarray .@P11[0],50,12075,10; setarray .@P12[0],50,12085,10; setarray .@P13[0],50,12090,10; setarray .@P14[0],50,12095,10; setarray .@P15[0],50,12100,10; setarray .@P16[0],10,18785,1; setarray .@P17[0],20,18632,1; setarray .@P18[0],20,18633,1; setarray .@P19[0],20,18634,1; setarray .@P20[0],20,18635,1; setarray .@P21[0],20,5335,1; setarray .@P21[0],10,5486,1; setarray .@Default[0],12709,60; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { but still default occurs alot, is there a way to remove the default and make the script choose only from those 21 array?? and how can i make it announce for 10% and below? i dont know where to change but i think it should be here somewhere.. if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl!",0; specialeffect2 248; close; } bump~
-
prontera,139,172,4 script Lotti Girl 714,{ mes "[Lotti Girl]"; mes "Hello Sir! Are you out"; mes "shopping in the city?!"; next; mes "[Lotti Girl]"; mes "I'm Lotti! I'll exchange cool"; mes "random prizes for every"; mes "^ff00001 Lottery Ticket^000000."; next; mes "[Lotti Girl]"; mes "Our Grand prize is:"; mes "^ff0000+9 Weapon Refine Deed^000000"; mes "^ff0000+10 Weapon Refine Deed^000000"; mes "^ff0000+9 Armor Refine Deed^000000"; mes "^ff0000+10 Armor Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "Special prizes are:"; mes "^ff0000+5 Armor Refine Deed^000000"; mes "^ff0000+6 Armor Refine Deed^000000"; mes "^ff0000+7 Armor Refine Deed^000000"; mes "^ff0000+8 Armor Refine Deed^000000"; mes "^ff0000+5 Weapon Refine Deed^000000"; mes "^ff0000+6 Weapon Refine Deed^000000"; mes "^ff0000+7 Weapon Refine Deed^000000"; mes "^ff0000+8 Weapon Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "MVP Card & Headgear prizes are:"; mes "^ff0000Tao Gunka Card^000000"; mes "^ff0000Turtle General Card^000000"; mes "^ff0000Japan Anniversary Hat^000000"; next; mes "Consolation prizes are:"; mes "^ff0000Food Buffs^000000"; mes "^ff0000Healing Foods^000000"; mes "^ff0000Random Dye Box^000000"; if (countitem(7528) < 1) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; delitem 7528,1; set .@Total,33; //<%>,<ItemID>,<Amount> setarray .@P1[0],6,8001,1; setarray .@P2[0],5,8002,1; setarray .@P3[0],4,8003,1; setarray .@P4[0],3,8004,1; setarray .@P5[0],2,8005,1; setarray .@P6[0],1,8006,1; setarray .@P7[0],6,8007,1; setarray .@P8[0],5,8008,1; setarray .@P9[0],4,8009,1; setarray .@P10[0],3,8010,1; setarray .@P11[0],2,8011,1; setarray .@P12[0],1,8012,1; setarray .@P13[0],20,13517,3; setarray .@P14[0],20,12080,5; setarray .@P15[0],20,12075,5; setarray .@P16[0],20,12085,5; setarray .@P17[0],20,12090,5; setarray .@P18[0],20,12095,5; setarray .@P18[0],20,12100,5; setarray .@P19[0],50,26000,1; setarray .@P20[0],40,7528,1; setarray .@P21[0],1,4305,1; setarray .@P22[0],45,12033,10; setarray .@P23[0],45,13548,2; setarray .@P24[0],60,12709,20; setarray .@P25[0],65,663,50; setarray .@P26[0],50,26048,1; setarray .@P27[0],1,5846,1; setarray .@P28[0],1,4302,1; setarray .@P29[0],80,13517,1; setarray .@P30[0],80,13517,1; setarray .@P31[0],80,13517,1; setarray .@P32[0],80,13517,1; setarray .@P33[0],80,13517,1; setarray .@Default[0],13517,1; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; } } else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl!",0; specialeffect2 248; close; } I am using this script but after i edited the prizes, it only gives mostly the default prize which is setarray .@Default[0],13517,1; i don't know i'f im wrong or maybe the npc is more likely choosing the default....Can you help me with this? even i put 100% on the item mostyly the item give is default.
-
[pRO] Lotti Girl & Refine Master
nexus1528 replied to Jaburak's topic in Game, Event, Quest Script Releases
sir for your lotti girl .. how can i make it one click ? EDIT: sir I have made modifications on your lotti girl script to make it just one click but when only 1 ticket is in my inventory it doesnt delete the item and keeps on giving item. what should I do ? here's the script.. turbo_room,72,98,6 script Lotti Girl 714,{ if (countitem(30177) < 1) { mes "You need at least 1 Lotti Ticket!"; close; next; } if (countitem(30177) > 1) { delitem 30177,1; set .@Total,8; } //<%>,<ItemID>,<Amount> setarray .@P1[0],0,30327,1; setarray .@P2[0],1,30352,1; setarray .@P3[0],5,30188,1; setarray .@P4[0],20,30161,1; setarray .@P5[0],90,30176,5; setarray .@P6[0],80,30173,10; setarray .@P7[0],90,30159,5; setarray .@P8[0],80,674,10; setarray .@Default[0],673,5; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; } } else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl!",0; specialeffect2 248; close; } -
[pRO] Lotti Girl & Refine Master
Jaburak replied to Jaburak's topic in Game, Event, Quest Script Releases
Add: if(Weight >= MaxWeight/2) goto Low; Low: mes "You are Overweight!"; close; why when i put this script it will keep telling You are Overweight! if(Weight >= MaxWeight/2) goto Low; and Low: mes "You are Overweight!"; close; but when this script only everything works fine the npc will closed automatic but i want to add message when the player is overweight the npc will tell. if(Weight >= MaxWeight/2) Where did you put it? Can you post your script? prontera,141,226,6 script Lotti Girl 714,{ mes "[Lotti Girl]"; mes "Hello Sir! Are you out"; mes "shopping in the city?!"; next; mes "[Lotti Girl]"; mes "I'm Lotti! I'll exchange cool"; mes "random prizes for every"; mes "^ff00001 Premium Ticket^000000."; next; mes "[Lotti Girl]"; mes "Our Grand prize is:"; mes "^ff0000Combat Knife^000000"; mes "Special prizes are:"; mes "^ff0000+7 Armor Refine Deed^000000"; mes "^ff0000+10 Weapon Refine Deed^000000"; mes "and ^ff0000+6 Armor Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "You can still get random item"; mes "if you failed to get the grand"; mes "prize and special prizes."; if (countitem(7608) < 1) close; next; if(Weight >= MaxWeight/2) goto Low; Low: mes "You are Overweight!"; close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; delitem 7608,1; set .@Total,2;//<%>,<ItemID>,<Amount> setarray .@P1[0],10,6233,1; setarray .@P2[0],20,1228,1; setarray .@P3[0],90,2423,1; setarray .@Default[0], 14232,5; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; }} else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0; specialeffect2 248; close;} // http://rathena.org/board/topic/83017-pro-lotti-girl-refine-master/ prontera,141,226,6 script Lotti Girl 714,{ if(Weight >= MaxWeight/2) goto Low; mes "[Lotti Girl]"; mes "Hello Sir! Are you out"; mes "shopping in the city?!"; next; mes "[Lotti Girl]"; mes "I'm Lotti! I'll exchange cool"; mes "random prizes for every"; mes "^ff00001 Premium Ticket^000000."; next; mes "[Lotti Girl]"; mes "Our Grand prize is:"; mes "^ff0000+8 Armor Refine Deed^000000"; mes "Special prizes are:"; mes "^ff0000+7 Armor Refine Deed^000000"; mes "^ff0000+10 Weapon Refine Deed^000000"; mes "and ^ff0000+6 Armor Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "You can still get random item"; mes "if you failed to get the grand"; mes "prize and special prizes."; if (countitem(7608) < 1) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; delitem 7608,1; set .@Total,8; //<%>,<ItemID>,<Amount> setarray .@P1[0],0,8012,1; setarray .@P2[0],1,8011,1; setarray .@P3[0],5,8006,1; setarray .@P4[0],20,8010,1; setarray .@P5[0],90,13517,5; setarray .@P6[0],80,12080,10; setarray .@P7[0],90,30110,5; setarray .@P8[0],80,12075,10; setarray .@Default[0],30095,5; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; } } else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0; specialeffect2 248; close; Low: mes "You are Overweight!"; close; } -
[pRO] Lotti Girl & Refine Master
Spectator replied to Jaburak's topic in Game, Event, Quest Script Releases
Add: if(Weight >= MaxWeight/2) goto Low; Low: mes "You are Overweight!"; close; why when i put this script it will keep telling You are Overweight! if(Weight >= MaxWeight/2) goto Low; and Low: mes "You are Overweight!"; close; but when this script only everything works fine the npc will closed automatic but i want to add message when the player is overweight the npc will tell. if(Weight >= MaxWeight/2) Where did you put it? Can you post your script? prontera,141,226,6 script Lotti Girl 714,{ mes "[Lotti Girl]"; mes "Hello Sir! Are you out"; mes "shopping in the city?!"; next; mes "[Lotti Girl]"; mes "I'm Lotti! I'll exchange cool"; mes "random prizes for every"; mes "^ff00001 Premium Ticket^000000."; next; mes "[Lotti Girl]"; mes "Our Grand prize is:"; mes "^ff0000Combat Knife^000000"; mes "Special prizes are:"; mes "^ff0000+7 Armor Refine Deed^000000"; mes "^ff0000+10 Weapon Refine Deed^000000"; mes "and ^ff0000+6 Armor Refine Deed^000000"; next; mes "[Lotti Girl]"; mes "You can still get random item"; mes "if you failed to get the grand"; mes "prize and special prizes."; if (countitem(7608) < 1) close; next; if(Weight >= MaxWeight/2) goto Low; Low: mes "You are Overweight!"; close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; delitem 7608,1; set .@Total,2;//<%>,<ItemID>,<Amount> setarray .@P1[0],10,6233,1; setarray .@P2[0],20,1228,1; setarray .@P3[0],90,2423,1; setarray .@Default[0], 14232,5; set .@i, rand(1,.@Total); if (rand(1,100) > getd(".@P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.@Default); set .@j,.@j+2) { getitem .@Default[.@j], .@Default[.@j+1]; if(!.@k[0]) setarray .@k[0], .@Default[.@j], .@Default[.@j+1]; }} else{ for(set .@j,1; .@j<getarraysize(getd(".@P"+.@i)); set .@j,.@j+2) { getitem getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) { set .@gz,.@i; setarray .@k[0], getd(".@P"+.@i+"["+.@j+"]"), getd(".@P"+.@i+"["+(.@j+1)+"]"); break; } } } if(1<=.@gz&&.@gz<=4) announce "Congratulations! "+strcharinfo(0)+" just received "+getitemname(.@k[0])+" x "+.@k[1]+" from Lotti Girl (prontera 139 173)!",0; specialeffect2 248; close;} -
Lotti Girl & Refine Master pRO Lotti Girl This script is pretty much the same pRO's Lotti Girl NPC. You must have a Premium Ticket to be able to get the jackpot prize. Script is very easy to config. Adjustable chance. A semi user friendly script. Credits to Euphy //<Chance><ItemID><Item Amount> setarray .@P1[0],0,8012,1; setarray .@P2[0],1,8011,1; setarray .@P3[0],5,8006,1; setarray .@P4[0],20,8010,1; setarray .@P5[0],90,13517,5; setarray .@P6[0],80,12080,10; setarray .@P7[0],90,30110,5; setarray .@P8[0],80,12075,10; setarray .@Default[0],30095,5; pRO Refine Master This script is pretty much the same pRO's Refine Master NPC. Player should have Refine Deed Ticket as a requirement for the upgrade. set @c,select("+5 Weapon Deed", "+6 Weapon Deed", "+7 Weapon Deed", "+8 Weapon Deed", "+9 Weapon Deed", "+10 Weapon Deed", "+11 Weapon Deed", "+12 Weapon Deed", "+5 Armor Deed", "+6 Armor Deed", "+7 Armor Deed", "+8 Armor Deed", "+9 Armor Deed", "+10 Armor Deed", "+11 Armor Deed", "+12 Armor Deed"); set @deed_item_id,8000+@c; item_db2.txt: 8001,+5_Weapon_Refine_Deed,+5 Weapon Refine Deed,3,,10,10,,,,,,,,,,,,,{},{},{} idnum2itemdisplaynametable.txt: 8001#+5_Weapon_Refine_Deed# idnum2itemresnametable.txt: 8001#ÄíÆù# idnum2itemdesctable.txt: 8001# A ticket that upgrade to +5 your weapon safely. ^ffffff_^000000 Weight :^777777 0^000000 # Lotti Girl.txt Refine Master.txt Data Refine Deed.rar
-
how to make 1 proof of donation needs to play then 1 proof of donation = 5 try. and how to change the announce item won prontera,155,181,5 script Lotti Girl 714,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { callsub L_default; mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 607,25; setarray .p2, 70, 13710,1; setarray .p3, 40, 5471,1; setarray .p4, 40, 5210,1; setarray .p5, 40, 5224,1; setarray .p6, 50, 2357,1, 2524,1, 2421,1, 2115,1; setarray .p7, 25, 2701,1; setarray .p8, 5, 2394,1; callsub L_default; setarray .cost, 7227,300; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; end; L_default: deletearray .p9; setarray .p9, 30+30+60+60+60+50+75+95, callfunc( "F_RandMes", 5, 12214,502,503,504,505 ),1; // default ... the chance are added up by 100-n% return; }
-
How to make the default random? Like 5 items in random..
Capuche replied to Meister's question in Scripting Support
Maybe you mean 1 random item in the list of randoms items by default ? prontera,155,181,5 script Lotti Girl 100,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { callsub L_default; mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 607,25; setarray .p2, 70, 13710,1; setarray .p3, 40, 5471,1; setarray .p4, 40, 5210,1; setarray .p5, 40, 5224,1; setarray .p6, 50, 2357,1, 2524,1, 2421,1, 2115,1; setarray .p7, 25, 2701,1; setarray .p8, 5, 2394,1; callsub L_default; setarray .cost, 7227,300; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; end; L_default: deletearray .p9; setarray .p9, 30+30+60+60+60+50+75+95, callfunc( "F_RandMes", 5, 12214,502,503,504,505 ),1; // default ... the chance are added up by 100-n% return; } List of randoms items callfunc( "F_RandMes", 5, 12214,502,503,504,505 )// count, item ID, item ID.. -
How to make the default random? Like 5 items in random..
Meister posted a question in Scripting Support
prontera,155,181,5 script Lotti Girl 100,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 607,25; setarray .p2, 70, 13710,1; setarray .p3, 40, 5471,1; setarray .p4, 40, 5210,1; setarray .p5, 40, 5224,1; setarray .p6, 50, 2357,1, 2524,1, 2421,1, 2115,1; setarray .p7, 25, 2701,1; setarray .p8, 5, 2394,1; setarray .p9, 30+30+60+60+60+50+75+95, 12214,1; // default ... the chance are added up by 100-n% setarray .cost, 7227,300; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; } yeah. The default item is convex mirror box. How to make it a random one. for example the default items are. YGG Box, Convex Mirror Box, ESB and other.. how to set it? -
This is my own version of Lottery/Lotti npc script. Options: set .npc$,"[Lotti]"; // NPC Name set .MaxNum,10; // Total number to win setarray .SWinNum[0],1,2,5; // Number need to win Single Reward setarray .MWinNum[0],3,4,6; // Number need to win Multi Reward // Setup the .MWinT if you use Give random set .MWinall,0; // 1 = Give all Multi Reward, 0 = Give random // Note: .MWinall must be 0 inorder to use this) // Note: If Not-Repeat make sure Amount of reward >= .MReward item) // 0 = Off (Default: 1 random item only), 1 = On; 0 = Consecutive , 1 = Random; 0 = Not, 1 = Repeat Reward; // Format: <On/Off>,<Consecutive/Random>,<Not-Repeat/Repeat>,<Amount of reward can win> setarray .MWinT[0],1,1,1,2; // 1 = On , 0 = off; set .announce,1; // announce set .announcec$,"ffc0cb"; // announce color // Format: <item ID>,<amount>{,...}; setarray .ItemR[0],909,5,7126,5; // Item ID,Item Amount setarray .ZenyR,1000000; // Item Requirements // Format: <item ID>,<amount>,<Refine>{,...}; setarray .SReward[0],2301,1,10,1202,1,5,2304,1,5,2319,1,5,909,5,0,741,1,0; // Single Reward // Format: <item ID>,<amount>,<Refine>{,....}; setarray .MReward[0],501,5,0,502,5,0,503,5,0,504,5,0; //Multiple Reward ________________________________ I hope you like it Lottie.txt
- 1 reply
-
- 1
-
thanks and one more thing how if i want base on SUCCESS Rate like the LOTTI GURL ?
-
prontera,139,229,5 script Lotti Girl 864,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 14232,1; setarray .p2, 10, 2115,1; setarray .p3, 50, 13582,1; setarray .p4, 40, 5210,1; setarray .p5, 10, 2421,1; setarray .p6, 5, 2524,1; setarray .p7, 5, 2357,1; setarray .p8, 5, 2729,1; setarray .p9, 30+30+60+60+60+50+75+95, 7040,1; // default ... the chance are added up by 100-n% setarray .cost, 7227,1; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; } Can this script can be use in eathena version? lottiNPC.txt lottiNPC.txt
-
TCG Drainer - Very useful to most of the servers (just like Lotti Girl in pRO)
newchaos replied to Dvrstle's question in Script Requests
gagana po ba to sa eathena? prontera,139,229,5 script Lotti Girl 864,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 14232,1; setarray .p2, 10, 2115,1; setarray .p3, 50, 13582,1; setarray .p4, 40, 5210,1; setarray .p5, 10, 2421,1; setarray .p6, 5, 2524,1; setarray .p7, 5, 2357,1; setarray .p8, 5, 2729,1; setarray .p9, 30+30+60+60+60+50+75+95, 7040,1; // default ... the chance are added up by 100-n% setarray .cost, 7227,1; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; } lottiNPC.txt -
Try this but I don't know if it works I just edited the Lotti Gurl of Mr. Euphy prontera,150,50,5 script Piercing Expert 968,{ mes "[Piercing Expert]"; mes "I've been researching ways to use Auger of Spirit to put a socket on Elven Ears and Black Devil Mask"; next; mes "[Piercing Expert]"; menu "Auger of Spirit for Elven Ears [1]",-,"Auger of Spirit for Black Devil Mask [1]",bdm; if (countitem(.Cost[0]) < .Cost[1]) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Piercing Expert]"; mes "Here we go..."; progressbar "",2; delitem .Cost[0], .Cost[1]; set .@i, rand(1,.Total); if (rand(1,100) > getd(".P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) { getitem .Default[.@j], .Default[.@j+1]; if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } } else { for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) { getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } } announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0; specialeffect2 248; close; OnInit: // Format: <%>,<item ID>,<count>{,...}; setarray .P1[0],70,607,1; //607 = YGG change to you Black Devil Mask Id setarray .Default[0],0,0; setarray .Cost[0],6396,1;//6396 = Auger of Spirit set .Total,1; end; bdm: if (countitem(.Cost[0]) < .Cost[1]) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Piercing Expert]"; mes "Here we go..."; progressbar "",2; delitem .Cost[0], .Cost[1]; set .@i, rand(1,.Total); if (rand(1,100) > getd(".P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) { getitem .Default[.@j], .Default[.@j+1]; if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } } else { for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) { getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } } announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0; specialeffect2 248; close; OnInit: // Format: <%>,<item ID>,<count>{,...}; setarray .P1[0],70,607,1; //607 = YGG change to you Black Devil Mask Id setarray .Default[0],0,0; setarray .Cost[0],6396,1;//6396 = Auger of Spirit set .Total,1; end; } }
-
adding announcement and ladder to TCG Drainer
AnnieRuru replied to uDe's question in Script Requests
prontera,155,181,5 script Lotti Girl 100,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+ getitemname( .cost[0] ) +" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; while (1) { mes "Here we go..."; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); .@r = 0; // <-- think you forgot to put this while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } mes " "; mes "wanna try again ?"; next; if ( select( "Yes", "No" ) == 2 ) close; mes "[Lotti Girl]"; if ( countitem( .cost[0] ) < .cost[1] ) { mes "it seems you have ran out of "+ getitemname( .cost[0] ); close; } } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 607,25; setarray .p2, 70, 13710,1; setarray .p3, 40, 5471,1; setarray .p4, 40, 5210,1; setarray .p5, 40, 5224,1; setarray .p6, 50, 2357,1, 2524,1, 2421,1, 2115,1; setarray .p7, 25, 2701,1; setarray .p8, 5, 2394,1; setarray .p9, 30+30+60+60+60+50+75+95, 12214,1; // default ... the chance are added up by 100-n% setarray .cost, 7227,300; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; } -
adding announcement and ladder to TCG Drainer
AnnieRuru replied to uDe's question in Script Requests
like I said before ... adding custom features to existing scripts means = open a new topic because in request section, the request to based on 1st post ... hmm .... I use different formula than Euphy ... I dislike to make too much calculation when its possible to set everything on server startup prontera,155,181,5 script Lotti Girl 100,{ mes "[Lotti Girl]"; mes "It costs "+ .cost[1] +"x "+getitemname( .cost[0] )+" to play."; mes " "; for ( .@i = 0; .@i < 20; .@i++ ) mes $lotti_girl_ladder$[.@i]; if ( countitem( .cost[0] ) < .cost[1] ) close; next; if ( select( "Deal me in!", "No way..." ) == 2 ) close; mes "[Lotti Girl]"; mes "Here we go..."; progressbar "", 2; delitem .cost[0], .cost[1]; .@rand = rand(.totalchance); while ( ( .@rand = .@rand - getd( ".p"+ .@r +"[0]" ) ) >= 0 ) .@r++; .@size = getarraysize( getd(".p"+ .@r ) ); for ( .@i = 1; .@i < .@size; .@i += 2 ) getitem getd( ".p"+ .@r +"["+ .@i +"]" ), getd( ".p"+ .@r +"["+( .@i +1 )+"]" ); if ( getd( ".p"+ .@r +"[0]" ) < 50 ) // announce if below 50% chance announce "Congratulations to "+strcharinfo(0)+" for getting "+ .ann$[.@r] +"!", 0; if ( getd( ".p"+ .@r +"[0]" ) < 10 ) { // score the ladder if below 10% chance copyarray $lotti_girl_ladder$[1], $lotti_girl_ladder$[0], 19; $lotti_girl_ladder$ = strcharinfo(0) +" gains "+ .ann$[.@r] +" at "+ gettimestr( "%d/%m/%Y %H:%M %p", 21 ); } close; OnInit: // setarray .p1, 70, 501,25; // debugging ... // setarray .p2, 70, 502,1; // setarray .p3, 40, 503,1; // setarray .p4, 40, 504,1; // setarray .p5, 40, 505,1; // setarray .p6, 50, 506,1, 507,1, 508,1, 509,1; // setarray .p7, 25, 512,1; // setarray .p8, 5, 513,1; setarray .p1, 70, 607,25; setarray .p2, 70, 13710,1; setarray .p3, 40, 5471,1; setarray .p4, 40, 5210,1; setarray .p5, 40, 5224,1; setarray .p6, 50, 2357,1, 2524,1, 2421,1, 2115,1; setarray .p7, 25, 2701,1; setarray .p8, 5, 2394,1; setarray .p9, 30+30+60+60+60+50+75+95, 12214,1; // default ... the chance are added up by 100-n% setarray .cost, 7227,300; .total = 9; freeloop 1; .@i = 1; while ( .@i <= .total ) { .totalchance = .totalchance + getd(".p"+ .@i ); .@j = 1; .@size = getarraysize( getd(".p"+ .@i ) ); while ( .@j < .@size ) { .ann$[.@i] = .ann$[.@i] + getd( ".p"+ .@i +"["+( .@j +1 )+"]" ) +"x "+ getitemname( getd( ".p"+ .@i +"["+ .@j +"]" ) ) +( ( .@j == .@size -2 )? "":"," ); // I think Euphy forgotten to make announcement when configuration has set more than 1 items .@j += 2; } .@i++; } freeloop 0; } EDITING ... wait a moment .. I think this script is bugged... ok fixed -
use this http://rathena.org/board/topic/65196-tcg-drainer-very-useful-to-most-of-the-servers-just-like-lotti-girl-in-pro/
-
if you want like that you can use this.. http://rathena.org/board/topic/65196-tcg-drainer-very-useful-to-most-of-the-servers-just-like-lotti-girl-in-pro/
-
Sir can someone help me about this lotti girl im always stock at here we go if i havent get any item -.- <header> { mes "[Lotti Girl]"; mes "It costs "+.Cost[1]+"x "+getitemname(.Cost[0])+" to play."; if (countitem(.Cost[0]) < .Cost[1]) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; progressbar "",2; delitem .Cost[0], .Cost[1]; set .@i, rand(1,.Total); if (rand(1,100) > getd(".P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) { getitem .Default[.@j], .Default[.@j+1]; if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } } else { for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) { getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } } announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0; specialeffect2 248; close; OnInit: // Format: <%>,<item ID>,<count>{,...}; setarray .P1[0],70,607,25; setarray .P2[0],70,13710,1; setarray .P3[0],40,5471,1; setarray .P4[0],40,5210,1; setarray .P5[0],40,5224,1; setarray .P6[0],50,2357,1,2524,1,2421,1,2115,1; setarray .P7[0],25,2701,1; setarray .P8[0],5,2394,1; setarray .Default[0],12214,1; setarray .Cost[0],7227,300; set .Total,8; end; } i think theres a wrong code can some one help me gimme a full script that i can use im begging
-
wow. that's what i'm talking about paopleperson49. thanks for this script. i have a request. can you make this npc script announce when the player gets an item that has 10% chance of gaining it? <header> { mes "[Lotti Girl]"; mes "It costs "+.Cost[1]+"x "+getitemname(.Cost[0])+" to play."; if (countitem(.Cost[0]) < .Cost[1]) close; next; if(select("Deal me in!:No way...")==2) close; mes "[Lotti Girl]"; mes "Here we go..."; progressbar "",2; delitem .Cost[0], .Cost[1]; set .@i, rand(1,.Total); if (rand(1,100) > getd(".P"+.@i+"[0]")) { for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) { getitem .Default[.@j], .Default[.@j+1]; if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } } else { for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) { getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } } announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0; specialeffect2 248; close; OnInit: // Format: <%>,<item ID>,<count>{,...}; setarray .P1[0],70,607,25; setarray .P2[0],70,13710,1; setarray .P3[0],40,5471,1; setarray .P4[0],40,5210,1; setarray .P5[0],40,5224,1; setarray .P6[0],50,2357,1,2524,1,2421,1,2115,1; setarray .P7[0],25,2701,1; setarray .P8[0],5,2394,1; setarray .Default[0],12214,1; setarray .Cost[0],7227,300; set .Total,8; end; }