Jump to content

Capuche

Developer
  • Posts

    2407
  • Joined

  • Last visited

  • Days Won

    52

Everything posted by Capuche

  1. If you make a duplicate of the npc (the npc for up the healer or the healer), they wouldn't have to re-up the skill... you wanted the guildmaster have to re-up the skill if you had another duplicate npc in another place ? New sql part alter table guild add column buff varchar(255) NOT NULL default '' after emblem_data, add index (buff); NPC for up : - script flop -1,{ if( !getcharid(2) ) { mes "you are not in a guild !"; close; } else if( getguildmaster( getcharid(2) ) != strcharinfo(0) ) { mes "I only talk to your guildmaster, go away !"; close; } query_sql "SELECT buff FROM guild WHERE guild_id = "+ getcharid(2), .@buff_type$; if( getstrlen( .@buff_type$ ) ) explode( .@b$, .@buff_type$, "|" ); else { for( .@i = 0; .@i < .size_buff; .@i++ ) .@b$[.@i] = "0"; } mes "hello "+ strcharinfo(0) +", what do you want to up the skill in the guild healer today ?"; next; .@s = select( .menu$ ) -1; if( atoi(.@b$[.@s]) + .min_Levels == .max_Levels ) { mes "Your current "+ .skills_$[.@s] +" skill's guild healer has already reached the max level."; close; } mes "Your current "+ .skills_$[.@s] +" skill's healer is level ^0000ff("+ ( .min_Levels + atoi( .@b$[.@s] ) ) +")^000000."; mes "It will cost ^0000ff"+ ( .cost_[atoi(.@b$[.@s]) +1] * .rate_buff_zeny[.@s] ) +"^000000 zeny to up this skill for your guild."; next; if( select( "Paid to up "+ .skills_$[.@s], "Leave" ) -1 ) close; else if( Zeny < .cost_[atoi(.@b$[.@s]) +1] * .rate_buff_zeny[.@s] ) { mes "You're kidding me? you don't have enough zeny."; close; } Zeny = Zeny - .cost_[atoi(.@b$[.@s]) +1] * .rate_buff_zeny[.@s]; .@b$[.@s] = atoi( .@b$[.@s] ) +1; .@a$ = implode( .@b$, "|" ); query_sql "update guild set buff = '"+ .@a$ +"' where guild_id = "+ getcharid(2); mes "Your "+ .skills_$[.@s] +" skill's healer is now level ^0000ff("+ ( .min_Levels + atoi( .@b$[.@s] ) ) +")^000000. Congratulation !"; close; OnInit: deletearray .cost_; deletearray .skills_$; deletearray .skill_$; deletearray .min_Levels; deletearray .max_Levels; deletearray .rate_buff_zeny; setarray .skills_$, "agi", "bless", "Kyrie Eleison"; // add more skill here - think to add them also in the healer setarray .min_Levels, 5, 5, 0; // min level of the skill boost in the healer setarray .max_Levels, 10, 10, 10; // max level of the skill you can up setarray .rate_buff_zeny, 1, 1, 1; // rate for zeny - ex: 2 to kyrie -> cost *2 ; 2/5 -> cost *2/5 setarray .cost_[1], 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000, 100000; // cost zeny to up the healer .size_buff = getarraysize( .skills_$ ); .menu$ = implode( .skills_$, ":" ); end; } prontera,160,185,6 duplicate(flop) flop#1 909 Healer - script Healer -1,{ if( getcharid(2) ) { query_sql "SELECT buff FROM guild WHERE guild_id = "+ getcharid(2), .@buff_type$; if( getstrlen( .@buff_type$ ) ) explode( .@b$, .@buff_type$, "|" ); } set .@Price,0; // Zeny required for heal set .@Buffs,1; // Also buff players? (1: yes / 0: no) set .@Delay,0; // Heal delay, in seconds callfunc "F_ClearGarbage",0; if (@HD > gettimetick(2)) end; if (.@Price) { message strcharinfo(0),"Healing costs "+.@Price+" Zeny."; if (Zeny < .@Price) end; if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close; set Zeny, Zeny-.@Price; } specialeffect2 EF_HEAL2; percentheal 100,100; if (.@Buffs) { for( .@i = 0; .@i < .size_buff; .@i++ ) { .@sum = atoi(.@b$[.@i]) + .min_Levels[.@i]; .@j = .Buffs$[.@i]; if( .@sum ) sc_start .@j,240000,.@sum; } } if (.@Delay) set @HD, gettimetick(2)+.@Delay; close; OnInit: deletearray .Buffs$; deletearray .min_Levels; setarray .Buffs$, SC_INCREASEAGI, SC_BLESSING, SC_KYRIE; // in the same order than .skills_$ in guild up healer setarray .min_Levels, 5, 5, 0;// min level of the skill boost - default: agi (5), bless (5), kyrie (0) .size_buff = getarraysize( .Buffs$ ); end; } prontera,163,185,6 duplicate(Healer) Healer#alb 909
  2. O_o I tried with @load, @warp, @go, flying wing item, etc.. on the same map, my loadevent trigger each time Well your request is solved, forget it
  3. Why don't use the mapflag restricted in conf/mapflag/restricted.txt ?
  4. announce "LOOK! THE RATES CHANGED!: Base:"+($mbrate/100)+"x Job:"+($mjrate/100)+"x Drops:"+($mdrate/100)+"x",bc_all,0xFFFFFF; should be on 1 line announce "LOOK! THE RATES CHANGED!: Base:"+($mbrate/100)+"x Job:"+($mjrate/100)+"x Drops:"+ ($mdrate/100)+"x",bc_all,0xFFFFFF; This script need to be cleaned...
  5. A menu where he can chose what he want to upgrade ?
  6. There is a small typo error close; } } OnPCLoginEvent: should be close; } OnPCLoginEvent: bindatcmd("security","SecurityManager::OnAtcommand"); add a new command, @security
  7. You should search/ask in source forum part.
  8. // ~~~~~ show time left in days, hours, minutes and seconds ~~~~~ function script timeleft__ { if ( ( .@left = getarg(0) ) <= 0 ) return getarg(0); .@day = .@left / 86400; .@hour = .@left % 86400 / 3600; .@min = .@left % 3600 / 60; .@sec = .@left % 60; if ( .@day ) return .@day +" day "+ .@hour +" hour"; else if ( .@hour ) return .@hour +" hour "+ .@min +" min"; else if ( .@min ) return .@min +" min "+ .@sec +" sec"; else return .@sec +" sec"; } prontera,166,185,6 script ghjkl 56,{ if( !getcharid(2) ) { dispbottom "you are not in a guild !"; end; } else if( getguildmaster( getcharid(2) ) != strcharinfo(0) ) { dispbottom "I only talk to your guildmaster, go away !"; end; } else if( cooldown_g > gettimetick(2) ) { dispbottom "You must wait "+ callfunc( "timeleft__", cooldown_g - gettimetick(2) ); end; } .@size = query_sql( "SELECT name FROM guild_member WHERE guild_id = "+ getcharid(2), .@name$ ); .@map_leader$ = strcharinfo(3); for( .@i = 0; .@i < .@size; .@i++ ) if( !getmapxy( .@map$, .@x, .@y, 0, .@name$[.@i] ) && .@map$ == .@map_leader$ ) { .@s_name$[.@count] = .@name$[.@i]; .@count++; } if( Zeny < .cost * .@count ) end; Zeny = Zeny - .cost * .@count; cooldown_g = gettimetick(2) + 60 * 10;// 10min - should restricted @changegm during woe for( .@i = 0; .@i < .@count; .@i++ ) { attachrid( getcharid( 3,.@s_name$[.@i] ) ); percentheal 100,100; specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,5; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,5; } end; OnAgitstart: OnAgitstart2: enablenpc strnpcinfo(0); end; OnInit: .cost = 1000; // Zeny/member OnAgitEnd: OnAgitEnd2: disablenpc strnpcinfo(0); end; } Try this one
  9. That means others guild couldn't warp on the map ? I have done something but it's a little weird, feel free to hate it xD and it's global : all guild have access to the npc, but only the guildmaster can up the healer. bwt if you want to test it sql part alter table guild add column buff tinyint(3) default 0 after emblem_data, add index (buff); NPC to UP the healer - script flop -1,{ if( !getcharid(2) ) { mes "you are not in a guild !"; close; } else if( getguildmaster( getcharid(2) ) != strcharinfo(0) ) { mes "I only talk to your guildmaster, go away !"; close; } query_sql "SELECT buff FROM guild WHERE guild_id = "+ getcharid(2), .@buff_type; if( .@buff_type == .max_buff ) { mes "sorry you can't no more up the healer"; close; } mes "Up your guild's healer to level ^0000ff("+ ( .@buff_type +1 ) +")^000000 ?"; mes "- It will cost ^0000ff"+ .cost_[.@buff_type +1] +"^000000 zeny to up the healer for your guild."; mes "- With this the buffer will add/up ^ff0000"+ .skills_$[.@buff_type +1] +"^000000 skills."; next; if( select( "Paid", "Leave" ) -1 ) close; else if( Zeny < .cost_[.@buff_type +1] ) { mes "You're kidding me? you don't have enough zeny."; close; } Zeny = Zeny - .cost_[.@buff_type +1]; query_sql "update guild set buff = buff +1 where guild_id = "+ getcharid(2); mes "It's done. Congratulation !"; close; OnInit: deletearray .cost_; deletearray .skills_$; setarray .cost_[1], 10000, 20000, 30000; // cost zeny to up the healer setarray .skills_$[1], "Kyrie Eleison (3), agi (8), bless (8)", "Kyrie Eleison (5), agi (9), bless (8)", "Kyrie Eleison (9), agi (9), bless (9)"; .max_buff = 3; // can up the healer 3 time end; } prontera,160,185,6 duplicate(flop) flop#1 909 // geffen,163,185,6 duplicate(flop) flop#2 909 // payon,163,185,6 duplicate(flop) flop#3 909 // yuno,163,185,6 duplicate(flop) flop# 909 Then the npc healer (the script is based on the healer in the svn) - script Healer -1,{ if( getcharid(2) ) query_sql "SELECT buff FROM guild WHERE guild_id = "+ getcharid(2), .@buff_type; set .@Price,0; // Zeny required for heal set .@Buffs,1; // Also buff players? (1: yes / 0: no) set .@Delay,0; // Heal delay, in seconds callfunc "F_ClearGarbage",0; if (@HD > gettimetick(2)) end; if (.@Price) { message strcharinfo(0),"Healing costs "+.@Price+" Zeny."; if (Zeny < .@Price) end; if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close; set Zeny, Zeny-.@Price; } specialeffect2 EF_HEAL2; percentheal 100,100; if (.@Buffs) { switch( .@buff_type ) { case 3: specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,9; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,9; sc_start SC_KYRIE,240000,9; break; case 2: specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,8; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,9; sc_start SC_KYRIE,240000,9; break; case 1: specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,8; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,8; sc_start SC_KYRIE,240000,3; break; default: specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,5; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,5; } } if (.@Delay) set @HD, gettimetick(2)+.@Delay; close; } prontera,163,185,6 duplicate(Healer) Healer#alb 909 I just add :
  10. Sorry to harass you but I try to understand explaining with my word (lol) It's like a buff for guild member. The guildmaster (only) can up the healer for him and his member isn't it ?
  11. it's support here haha ! You mean the guildmaster make the exchange and he can get a superbuff or he allows his guildmember to get a superbuff too ? if( !getcharid(2) ) { mes "you have to be in a guild !"; close; } else if( getguildmaster( getcharid(2) ) != strcharinfo(0) ) { mes "I only talk to your guildmaster, go away !"; close; } It allows to play with concatenate variables. Useful when you want to store permanents variables
  12. prontera,150,184,5 script blop 56,{ mes "hello ! a little gamble ?"; mes "you will need "+ .item_num +" "+ getitemname( .item_req ) +" or "+ .item_num[1] +" "+ getitemname( .item_req[1] ) +" to play"; next; set .@req_1, countitem( .item_req ) - .item_num; set .@req_2, countitem( .item_req[1] ) - .item_num[1]; set .@s, select( ( .@req_1 >= 0 ? "Play with "+ getitemname( .item_req ) +"!" : "" ), ( .@req_2 >= 0 ? "Play with "+ getitemname( .item_req[1] ) +"!" : "" ),"Leave" ) -1; if( .@s == 2 ) { mes "good bye !"; close; } mes "let's see..."; sleep2 1000; mes "."; sleep2 1000; mes ".."; sleep2 1000; mes "..."; if( .percent_gain[.@s] < rand( 1,100 ) ) { mes "Sorry you lose !"; close; } set .@r, rand( .size_gain ); getitem .item_gainID[.@r], 1; delitem .item_req[.@s], .item_num[.@s]; mes "you got a "+ getitemname( .item_gainID[.@r] ) +" !"; close; OnInit: setarray .item_req, 671, 7227; setarray .item_num, 1, 1; // number of items req for each column setarray .percent_gain, 50,20; // % (independent) to gain something for each column // equiprobable gains setarray .item_gainID, 501,502,503; // Put ID YGG,bubble gum , token and else. set .size_gain, getarraysize( .item_gainID ); end; } try this
  13. Permanently ? they paid just one time or they have to pay each time to get a superbuff ?
  14. setarray .MainMenu$[0], // Set menu options! "Change Jobs", // [1] "Stylist", // [2] "Refiner", // [4] "Remove Cards", // [8] "Exchange Coins", // [16] "Rentals", // [32] "Reset Stats/Skills", // [64] "Platinum Skills", // [128] "Change Sex", // [256] "Identify All"; // [512] Don't comment theses lines - you have commented some in your script - just set .MenuOption. Or try the script by Shakto (well I don't test it lol)
  15. Capuche

    Gamble NPC

    prontera,150,182,5 script vbgnhjkl 56,{ mes "gamble ?"; next; if( select( "Yes", "No" ) -1 ) close; else if( Zeny < .cost ) { mes "you need "+ .cost +" Zeny"; close; } do .@r = rand( .min_hat_id, .max_hat_id ); while( ( getiteminfo( .@r,5 )&.hat_type ) == 0 || compare( .black_list$, .@r +"" ) ); mes "here a "+ getitemname( .@r ) +" (ID: "+ .@r +")"; getitem .@r, 1; Zeny -= .cost; close; OnInit: .cost = 1000000; // Zeny gamble .max_hat_id = 5859; .min_hat_id = 5001; .hat_type = 1|256|512; // low + middle + head type hat set .black_list$, "5005|5006|5007"; // black list ID end; } Try this
  16. - shop costume_shop -1,501:-1 prontera,150,180,5 script bghjkl 58,{ mes "Hi Good Day! Do you have spare costumes !"; mes "that you wanna get rid of?"; next; set .@s, select( "No ! Goood bye.", "Trade", "More informations" ); if( .@s == 1 ) mes "Okay have a nice day."; else if( .@s == 3 ) { mes "blabla more informations."; } getinventorylist; for( set .@i, 0; .@i < @inventorylist_count; set .@i, .@i + 1 ) if( !@inventorylist_expire[.@i] ) { while( getd( ".costume_id"+ .@k +"[0]" ) ) { while( .@j < getd( ".size_costume"+ .@k ) && @inventorylist_id[.@i] != getd( ".costume_id"+ .@k +"["+ .@j +"]" ) ) set .@j, .@j + 1; if( .@j != getd( ".size_costume"+ .@k ) ) { for( set .@h, 0; .@h < @inventorylist_amount[.@i]; set .@h, .@h + 1 ) { set .@list_id[ .@size_shop ], @inventorylist_id[.@i]; set .@size_shop, .@size_shop + 1; } break; } set .@j, 0; set .@k, .@k + 1; } set .@k, 0; } if( !.@size_shop ) mes "Hmm I don't see any costumes on your inventory. Please check your inventory."; else { mes "Okay, here's a list of the costumes in your inventory."; next; npcshopitem "costume_shop",501,-1; for( set .@i, 0; .@i < .@size_shop; set .@i, .@i + 1 ) npcshopadditem "costume_shop",.@list_id[.@i],0; npcshopdelitem "costume_shop",501; callshop "costume_shop", 1; npcshopattach "costume_shop"; } close; OnBuyItem: // if( !checkweight2( .item_exchangeID,.item_count ) ) { // message strcharinfo(0),"You need additional weight capacity to complete this trade."; // close; // } set .@count, getarraysize( @bought_nameid ); for( set .@i, 0; .@i < .size_count; set .@i, .@i + 1 ) { set .@check, .item_count[.@i] * .@count; if( .@check > 30000) { message strcharinfo(0),"You can't purchase that many "+ getitemname( .item_exchangeID[.@i] ) +"."; end; } set .@gain$, .@gain$ + ( getstrlen( .@gain$ ) ? ", " : "" ) + .@check +" "+ getitemname( .item_exchangeID[.@i] ); } mes "Sell the costume for "+ .@gain$ +"?"; next; if( select( "Yes, I sell", "No" ) -1 ) close; for( set .@i, 0; .@i < .@count; set .@i, .@i + 1 ) delitem @bought_nameid[.@i], @bought_quantity[.@i]; for( set .@i, 0; .@i < .size_count; set .@i, .@i + 1 ) getitem .item_exchangeID[.@i], .item_count[.@i] * .@count; mes "good bye."; close; OnInit: // Item gained // ----------- setarray .item_exchangeID, 7539; // item ID gained - you can add more ID <item ID>, <item ID>,... setarray .item_count, 10; // item count gained - ( count of the item /element of array of .item_exchangeID ) set .size_count, getarraysize( .item_count ); // Costume trade ID // size array must be < 128 // use the synthaxe .costume_idX for adding news array // ------------------------------------------------ setarray .costume_id0, 20000, 20001; setarray .costume_id1, 20002, 20003; while( getd( ".costume_id"+ .@i +"[0]" ) ) { setd ".size_costume"+ .@i, getarraysize( getd( ".costume_id"+ .@i ) ); set .@i, .@i +1; } end; } I think it would be fine without checkweight's prevention. I'm sure that command exist
  17. Capuche

    Refiner

    You're right I forgot this command prontera,155,178,4 script +10 Refiner 100,{ for ( .@i = 1; .@i <= 10; .@i++ ) { if ( getequipisequiped(.@i) && getequipisenableref(.@i) ) while( getequiprefinerycnt(.@i) < 10 ) successrefitem .@i; } end; } Try it if you doubt
  18. - shop costume_shop -1,501:-1 prontera,150,180,5 script bghjkl 58,{ mes "Hi Good Day! Do you have spare costumes !"; mes "that you wanna get rid of?"; next; set .@s, select( "No ! Goood bye.", "Trade", "More informations" ); if( .@s == 1 ) mes "Okay have a nice day."; else if( .@s == 3 ) { mes "blabla more informations."; } else if( !callsub( L_CheckInventory,0 ) ) mes "Hmm I don't see any costumes on your inventory. Please check your inventory."; else { mes "Okay, here's a list of the costumes in your inventory."; next; npcshopitem "costume_shop",501,-1; callsub L_CheckInventory; npcshopdelitem "costume_shop",501; callshop "costume_shop", 1; npcshopattach "costume_shop"; } close; L_CheckInventory: getinventorylist; for( set .@i, 0; .@i < @inventorylist_count; set .@i, .@i + 1 ) if( !@inventorylist_expire[.@i] ) { while( getd( ".costume_id"+ .@k +"[0]" ) ) { while( .@j < getd( ".size_costume"+ .@k ) && @inventorylist_id[.@i] != getd( ".costume_id"+ .@k +"["+ .@j +"]" ) ) set .@j, .@j + 1; if( .@j != getd( ".size_costume"+ .@k ) ) { for( set .@h, 0; .@h < @inventorylist_amount[.@i]; set .@h, .@h + 1 ) { if( getarg(0,1) ) npcshopadditem "costume_shop",@inventorylist_id[.@i],0; set .@size_shop, .@size_shop + 1; } break; } set .@j, 0; set .@k, .@k + 1; } set .@k, 0; } return .@size_shop; OnBuyItem: if( !checkweight2( .item_exchangeID,.item_count ) ) { message strcharinfo(0),"You need additional weight capacity to complete this trade."; close; } set .@count, getarraysize( @bought_nameid ); for( set .@i, 0; .@i < .size_count; set .@i, .@i + 1 ) { set .@check, .item_count[.@i] * .@count; if( .@check > 30000) { message strcharinfo(0),"You can't purchase that many "+ getitemname( .item_exchangeID[.@i] ) +"."; end; } set .@gain$, .@gain$ + ( getstrlen( .@gain$ ) ? ", " : "" ) + .@check +" "+ getitemname( .item_exchangeID[.@i] ); } mes "Sell the costume for "+ .@gain$ +"?"; next; if( select( "Yes, I sell", "No" ) -1 ) close; for( set .@i, 0; .@i < .@count; set .@i, .@i + 1 ) delitem @bought_nameid[.@i], @bought_quantity[.@i]; for( set .@i, 0; .@i < .size_count; set .@i, .@i + 1 ) getitem .item_exchangeID[.@i], .item_count[.@i] * .@count; mes "good bye."; close; OnInit: // Item gained // ----------- setarray .item_exchangeID, 7539; // item ID gained - you can add more ID <item ID>, <item ID>,... setarray .item_count, 10; // item count gained - ( count of the item /element of array of .item_exchangeID ) set .size_count, getarraysize( .item_count ); // Costume trade ID // size array must be < 128 // use the synthaxe .costume_idX for adding news array // ------------------------------------------------ setarray .costume_id0, 20000, 20001; setarray .costume_id1, 20002, 20003; while( getd( ".costume_id"+ .@i +"[0]" ) ) { setd ".size_costume"+ .@i, getarraysize( getd( ".costume_id"+ .@i ) ); set .@i, .@i +1; } end; } setarray .item_exchangeID, 7539; // item ID gained - you can add more ID <item ID>, <item ID>,... setarray .item_count, 10; // item count gained - ( count of the item /element of array of .item_exchangeID ) Item gained setarray .costume_id0, 20000, 20001; setarray .costume_id1, 20002, 20003; Costumes ID to exchange
  19. Capuche

    Refiner

    Like this ? new_1-2,95,71,4 script +10 Refiner 100,{ for ( .@i = 1; .@i <= 10; .@i++ ) { if ( getequipisequiped(.@i) ) while( getequiprefinerycnt(.@i) < 10 ) successrefitem .@i; } end; }
  20. // --------------------- Config --------------------- setarray .MainMenu$[0], // Set menu options! "Change Jobs", // [1] "Stylist", // [2] "Refiner", // [4] "Remove Cards", // [8] "Exchange Coins", // [16] "Rentals", // [32] "Reset Stats/Skills", // [64] "Platinum Skills", // [128] "Change Sex", // [256] "Identify All"; // [512] set .MenuOption,1|2|4|8|16|32|64|128|256|512; If you want all the npc, keep set .MenuOption,1|2|4|8|16|32|64|128|256|512; If you want all the npc except "Change Sex", // [256] Remove 256 in set .MenuOption,1|2|4|8|16|32|64|128|512; etc..
  21. This request was about giving a normal/rare costume in exchange for a ticket, it was not about drop. Maybe you mean to give a gold coin (50% chance) or tgc (20% chance) etc.. in exchange to something ?
  22. None. But you can change one item drop rate for all monster in one go in mob_item_ratio.txt. Much faster than modify in mob_db I just read the comment in mob_item_ratio file, no more.
  23. 1002,PORING,Poring,Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,0,6,30,10,12,1,3,21,0x83,400,1872,672,480,0,0,0,0,0,0,0, Where are the poring's drop ?
  24. Try this http://pastebin.com/raw.php?i=yw8s8cMp // 12703,Holy_Egg_2,Holy Egg,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc( "VIP_upgrade", 7, 12703, 0 ); /* 7 days, item ID to delete */ },{},{} // 0 = up to bronze // 12703,Holy_Egg_2,Holy Egg,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc( "VIP_upgrade", 7, 12703, 1 ); /* 7 days, item ID to delete */ },{},{} //1 = up to silver // 12703,Holy_Egg_2,Holy Egg,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc( "VIP_upgrade", 7, 12703, 2 ); /* 7 days, item ID to delete */ },{},{} // 2 = up to gold
×
×
  • Create New...