Jump to content

Dynasty

Members
  • Posts

    151
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Dynasty

  1. I will do it, just give me a secound
  2. delete this part if($Rank$ != "") { mes "No one reached the maximum level yet"; close; } and plz tell me what happen
  3. I going to help as much as i can!!!!!!!

  4. can you plz post the complete script? if ($@members > 9){set .@greward,2;} else if ($@members > 14) { set .@greward,3; set .@areward,1; } else if ($@members > 19) { set .@greward,4; set .@areward,2; } else if ($@members == 25) { set .@greward,5; set .@areward,3; } else {set .@greward,1;} mes .@n$; mes "Processing...."; next; mes .@n$; mes "All items are stored to your storage please check."; for( set .@i, 0; .@i < getarraysize(.@Gitem); set .@i, .@i + 1 ){ query_sql("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Gitem[.@i]', '.@GAmount[.@i]*.@greward', '1')"); } if ($@members > 14){ for( set .@i, 0; .@i < getarraysize(.@Aitem); set .@i, .@i + 1 ){ query_sql("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Aitem[.@i]', '.@AAmount[.@i]*.@areward', '1')"); } } set #Claimed, 1; set $@members,0; set .@greward,0; set .@areward,0; close; change that for this if ($@members > 9){set .@greward,2;} else if ($@members > 14) { set .@greward,3; set .@areward,1; } else if ($@members > 19) { set .@greward,4; set .@areward,2; } else if ($@members == 25) { set .@greward,5; set .@areward,3; } else {set .@greward,1;} mes .@n$; mes "Processing...."; next; mes .@n$; mes "All items are stored to your storage please check."; for( set .@i, 0; .@i < getarraysize(.@Gitem); set .@i, .@i + 1 ){ set .@acc_idl, getcharid(3) ; query_sql ("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Gitem[.@i]', '.@GAmount[.@i]*.@greward', '1') WHERE `account_id` = '"+ .@acc_id +"'"); } if ($@members > 14){ for( set .@i, 0; .@i < getarraysize(.@Aitem); set .@i, .@i + 1 ){ set .@acc_idl, getcharid(3) ; query_sql ("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Gitem[.@i]', '.@GAmount[.@i]*.@greward', '1') WHERE `account_id` = '"+ .@acc_id +"'"); } } set #Claimed, 1; set $@members,0; set .@greward,0; set .@areward,0; close;
  5. I think that is a typical woe info (for the title of the url "http://sushiduy.plesk3.freepgs.com/ROScripts/(((WoeInfo)))/woeinfo_122.php") the only think that you have to do is search here "Woe info" probably there is so many script ...
  6. Dynasty

    Points SHOP

    it looks pretty good O:O What is that?
  7. Dynasty

    Points SHOP

    Hi this is one but it is in spanish... so if u want i can traslate it. http://upaste.me/00409032ba720232 I didn't make that script
  8. well... you know that all maps are square, just give me the coordinates of each corner where the event is running Forget it xD /*(¯`º¤ø,¸¸,ø¤°¯`º¤ø,¸¸,ø¤°¯`º¤ø,¸¸,ø¤°¯º¤ø,¸¸,ø¤º´¯) | | | rAthena Script | | | | Skill Matching Game | | By: | | Viole | | | | Current Version | | 1.4 | | | | Description: | | Just like a normal matching/memory game. | | Here, you need to match skill effects with | | the same skill effect by clicking the eggs. | | If 1 pair is matched, the pair disappears | | and gives a prize. If all are matched, | | npc gives another prize for completing | | the game. Depends on what prizes are set | | by the GM. ( In-game set ) | | If prizes are not set, default prize are | | distributed instead. 3 Minutes Game Duration. | | | | Changelogs: | | 1.0 Skill Matching Game ( Special Effects ) | | 1.1 Removed Timer (I'll add another timer soon) | | 1.2 Fixed Attempts Bug | | 1.2 Added Setwall in Event Room | | 1.3 Added time interval before you can | | join the event again. | | (Finish/Failed/AFK/Timer's up) | | 1.3 Set if Char/Account Based Time Interval | | 1.3 Added AFK Check ( Read note line 601 ) | | 1.4 Fixed minor mistake (Thanks to Emistry) | | 1.4 Changed few lines in time interval (cadz) | | | | Credits: | | Noobita for explaining *atoi | | Quinn for giving the eggs idea lol | | | | Edit things under : ( Added set timer ) | | C O N F I G U R A T I O N (line 448) | | | ´¯`º¤ø,¸¸,ø¤°¯`º¤ø,¸¸,ø¤°¯`º¤ø,¸¸,ø¤°¯º¤ø,¸¸,ø¤º´¯´*/ prontera,152,163,5 script Mavis Vermillion 437,{ if( .gameon != 0 ) { mes .n$; mes "Looks like someone is playing the game, wait until it ends."; close; } if( $skillmatchgame_based == 0 ) { if( #Already_Played > gettimetick(2) ) { mes .n$; mes "Sorry, you have to wait "+ .intervalmavis / 60 +"minutes before joining the event again!"; close; } } if( $skillmatchgame_based == 1 ) { if( Already_Played > gettimetick(2) ) { mes .n$; mes "Sorry, you have to wait "+ .intervalmavis / 60 +"minutes before joining the event again!"; close; } } Player_Menu: specialeffect 75; specialeffect 312; specialeffect 42; specialeffect 40; mes .n$; mes "Welcome, ^008000"+strcharinfo(0)+"^000000, want to play?"; mes "Cost is ^0000FF"+.zeny+"^000000 zeny."; mes "If you don't have zeny."; mes "You can pay ^FF0000"+.payamount+" "+getitemname(.payitem)+"s^000000 instead."; next; switch( select("^FFA500Please warp me now!^000000:^0000FFI've changed my mind!^000000", ( getgmlevel() < .gmlvl )?"":"Admin Configuration")) { case 1: if((countitem(.payitem) < .payamount ) && ( Zeny < .zeny )) { mes .n$; mes "It seems you don't have enough zeny. Or even "+.payamount+" "+getitemname(.payitem)+"s."; mes "Poor little guy.."; close; } else { mes .n$; mes "Goodluck in your game!~"; if((countitem(.payitem) >= .payamount)) delitem .payitem, .payamount; else set Zeny, Zeny - .zeny; close2; goto Game_On; } Game_On: set .gameon, 1; set .attempt, .attempts; set .Char_Name$, strcharinfo(0); set .Char_ID, getcharid(3); attachnpctimer; warp .mapname$,.warpx,.warpy; sleep 5000; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : The game will start in 10 seconds.",8; sleep 2000; stopnpctimer; donpcevent "::OnShowTogepi"; set .gameon, 1; deletearray .@special_effects[0],127; //•••••Special Effects•••••// // You can change special effects #s here, remember to always have a pair # (Note: The same count with array .@npc_size) setarray .@special_effects[0],312,312,470,470,8,8,9,9,15,15,468,468,17,17,226,226,409,409,252,252,471,471,336,336,635,635,27,27,28,28,467,467,30,30,637,637; set .@seffect_size, getarraysize(.@special_effects); deletearray .skill_effects[0],127; set .@seffects, .@seffect_size; for( set .@i, 0; .@i < .@seffect_size; set .@i, .@i + 1 ) { set .@rand_seffects, rand(.@seffects); set .skill_effects[.@i], .@special_effects[.@rand_seffects]; deletearray .@special_effects[.@rand_seffects], 1; set .@seffects, .@seffects - 1; } set .event_showeffect, -1; set .attempt, .attempt + 1; set .gamepair, 0; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : See the Togepi's astonishing skill effects!",8; sleep 2000; deletearray .@npc_size[0],127; // NPC Count setarray .@npc_size[0],0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36; set .@seffect_size, getarraysize(.@npc_size); deletearray .@show_seffects[0],127; set .@seffects, .@seffect_size; for( set .@i, 0; .@i < .@seffect_size; set .@i, .@i + 1 ) { set .@rand_seffects, rand(.@seffects); set .@show_seffects[.@i], .@npc_size[.@rand_seffects]; deletearray .@npc_size[.@rand_seffects], 1; set .@seffects, .@seffects - 1; } for( set .@i, 0; .@i < 36; set .@i, .@i + 2 ) { donpcevent "SkillEffect" + .@show_seffects[.@i] + "::OnShowSkillEffects"; donpcevent "SkillEffect" + .@show_seffects[.@i + 1] + "::OnShowSkillEffects"; sleep 200; } sleep 1600; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : You only have " + .attempt + " attempts.",8; sleep 2000; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Starting in 3..",8; sleep 1000; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 2..",8; sleep 1000; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 1..",8; sleep 1000; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Go! Find pairs of skill effects now. You only got 3 minutes!",8; set .gameon, 2; initnpctimer; end; OnDoingGood: switch( rand(4) ) { case 0: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Well, lucky guy...",8; break; case 1: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Great...",8; break; case 2: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : You're doing good!",8; break; case 3: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Nice! Just keep looking..!",8; break; } end; OnDoingBad: switch( rand(4) ) { case 0: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Wrong egg! (" + .attempt + " lives)",8; break; case 1: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Sucks being you, I guess? (" + .attempt + " lives)",8; break; case 2: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Too bad! (" + .attempt + " lives)",8; break; case 3: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Drink Memory Plus! (" + .attempt + " lives)",8; break; } end; OnWinner: stopnpctimer; donpcevent "::OnHideTogepi"; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : YOU DID IT!!",8; set .gameon, 0; sleep 2000; areawarp .mapname$,.areax1,.areay1,.areax2,.areay2,.mapname$,.maintown$,.mainx,.mainy; end; OnLose: stopnpctimer; donpcevent "::OnHideTogepi"; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : No more attempts. Sucks being you, I guess.",8; set .gameon, 0; sleep 2000; areawarp .mapname$,.areax1,.areay1,.areax2,.areay2,.mapname$,.maintown$,.mainx,.mainy; end; OnTimer60000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 2 minutes remaining.",8; end; OnAfk: stopnpctimer; detachnpctimer; donpcevent "::OnHideTogepi"; end; OnTimer120000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 1 minute remaining.",8; end; OnTimer150000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Last 30 seconds.",8; end; OnTimer170000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : HURRY! Last 10 seconds.",8; end; OnTimer175000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 5..",8; end; OnTimer176000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 4..",8; end; OnTimer177000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 3..",8; end; OnTimer178000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 2..",8; end; OnTimer179000: areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : 1..",8; end; OnTimer180000: stopnpctimer; donpcevent "::OnHideTogepi"; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : Time's up. You did not make it.",8; if ( getareausers(.mapname$,.areax1,.areay1,.areax2,.areay2) > 0 ) { if ( $skillmatchgame_based == 0 ) { set #Already_Played, strcharinfo(0); set #Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } if ( $skillmatchgame_based == 1 ) { set Already_Played, strcharinfo(0); set Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } } set .gameon, 0; sleep 2000; areawarp .mapname$,.areax1,.areay1,.areax2,.areay2,.mapname$,.maintown$,.mainx,.mainy; end; case 2: close; case 3: Admin_Menu: next; mes .n$; mes "Welcome back GM ^FF0000"+strcharinfo(0)+"^000000."; mes "What do you want to do today?"; next; switch(select("Player Menu:Set Payment:Set Prize:Just dropping by!")) { case 1: next; goto Player_Menu; case 2: current_payment: next; mes .n$; mes "Current Item Payment:"; mes "^008000"+.payamount+" "+getitemname(.payitem)+"s^000000"; mes " "; mes "Current Zeny Payment:"; mes "^008000"+.zeny+"^000000 zeny"; next; switch(select("Set Item Payment:Set Zeny Payment:Go back to menu")) { case 1: next; mes .n$; mes "Ok, please input the item # to be the payment for joining the game."; next; input .@itemid; if (getitemname(.@itemid) == "null" || getitemname(.@itemid) == "") {next; mes .n$; mes "This item doesn't exists in the database.."; next; goto current_payment; } set .payitem, .@itemid; next; mes .n$; mes "How many "+getitemname(.payitem)+"s should players pay?"; next; input .@itemamount; if(.@itemamount <= 0){next; mes .n$; mes "Please input a # greater than 0!"; next; goto current_payment; } set .payamount, .@itemamount; next; mes "So, the item payment for the entering the game:"; mes "^008000"+.payamount+" "+getitemname(.payitem)+"s"; next; goto current_payment; case 2: next; mes .n$; mes "Ok, please input how much zeny players should pay for entering the game."; next; input .@payzeny; if(.@payzeny <= 0){next; mes .n$; mes "Please input a # greater than 0!"; next; goto current_payment; } set .zeny, .@payzeny; next; mes "So, the zeny payment for the entering the game:"; mes "^008000"+.zeny+" zeny."; next; goto current_payment; case 3: next; goto Admin_Menu; } case 3: current_prize: next; mes .n$; mes "Current Normal Prize:"; mes "^008000"+.rewardamount+" "+getitemname(.rewarditem)+"s^000000"; mes " "; mes "Current Winner Prize:"; mes "^008000"+.w_rewardamount+" "+getitemname(.w_rewarditem)+"s^000000"; next; switch(select("Set Normal Prize:Set Winner Prize:Enable/Disable Prize:Go back to menu")) { case 1: next; mes .n$; mes "Ok, please input the item to be given if the player finds a pair!"; next; input .@rewardid; if (getitemname(.@rewardid) == "null" || getitemname(.@rewardid) == "") {next; mes .n$; mes "This item doesn't exists in the database.."; next; goto current_prize; } set .rewarditem, .@rewardid; next; mes .n$; mes "How many "+getitemname(.rewarditem)+"s should players get?"; next; input .@rewardamount; if(.@rewardamount <= 0){next; mes .n$; mes "Please input a # greater than 0!"; next; goto current_prize; } set .rewardamount, .@rewardamount; next; mes "So, the current normal prize:"; mes "^008000"+.rewardamount+" "+getitemname(.rewarditem)+"s"; next; goto current_prize; case 2: next; mes .n$; mes "Ok, please input the item to be given if the player wins the game!"; next; input .@w_rewardid; if (getitemname(.@w_rewardid) == "null" || getitemname(.@w_rewardid) == "") {next; mes .n$; mes "This item doesn't exists in the database.."; next; goto current_prize; } set .w_rewarditem, .@w_rewardid; next; mes .n$; mes "How many "+getitemname(.w_rewarditem)+"s should the winner get?"; next; input .@w_rewardamount; if(.@w_rewardamount <= 0){next; mes .n$; mes "Please input a # greater than 0!"; next; goto current_prize; } set .w_rewardamount, .@w_rewardamount; next; mes "So, the current winner prize:"; mes "^008000"+.w_rewardamount+" "+getitemname(.w_rewarditem)+"s"; next; goto current_prize; case 3: enable_disable: next; mes .n$; mes "What would you like to do?"; next; switch(select("^FF0000Disable Normal Prize Distribution^000000:^0000FFEnable Normal Prize Distribution^000000:^FF0000Disable Winner Prize Distribution^000000:^0000FFEnable Winner Prize Distribution^000000")) { case 1: next; if(.give_prize == 0){ mes .n$; mes "Normal Prize Distribution is already disabled!"; next; goto enable_disable; } mes .n$; mes "Normal Prize Distribution has been disabled!"; set .give_prize,0; goto enable_disable; case 2: next; if(.give_prize == 1){ mes .n$; mes "Normal Prize Distribution is already enabled!"; next; goto enable_disable; } mes .n$; mes "Normal Prize Distribution has been enabled!"; set .give_prize,1; goto enable_disable; case 3: next; if(.w_give_prize == 0){ mes .n$; mes "Winner Prize Distribution is already disabled!"; next; goto enable_disable; } mes .n$; mes "Winner Prize Distribution has been disabled!"; set .w_give_prize,0; goto enable_disable; case 4: next; if(.w_give_prize == 1){ mes .n$; mes "Winner Prize Distribution is already enabled!"; next; goto enable_disable; } mes .n$; mes "Winner Prize Distribution has been enabled!"; set .w_give_prize,1; goto enable_disable; case 5: close; } case 4: next; goto Admin_Menu; } case 4: close; } } OnInit: //•••••••••••••••••••••••• C O N F I G U R A T I O N ••••••••••••••••••••••••// set .n$, "[ ^FFA500Mavis Vermillion^000000 ]"; // NPC Header set .attempts, 14; // Change this one to how many attempts you like, n+1 , if you input 5, attempts will be 5+1 = 6 set .intervalmavis, 1800; // [ Seconds ] Time interval before a player can join the game again! set .kicktimeifafk,120; // [ Seconds ] If afk for 120 seconds, kicked to Savepoint set $skillmatchgame_based, 0; // Timer Interval [ Account Based - 0 / Character Based - 1 ] set .payamount, 100; // Default item amount payment set .payitem, 9524; // Default item payment set .zeny, 500000000; // Default zeny payment set .w_rewardamount, 500; // Default Winner Prize amount set .w_rewarditem, 9524; // Default Winner Prize set .rewarditem, 9524; // Default Normal Prize set .rewardamount, 10; // Default Normal Prize amount // These things here were due to my laziness. lol when writing the script. XD set .mapname$, "quiz_02"; // Event Map Location set .warpx, 305; // warp to Event Map x coordinate set .warpy, 253; // warp to Event Map y coordinate set .areax1, 295; // Event map areannounce x1 set .areay1, 261; // Event map areannounce y1 set .areax2, 314; // Event map areannounce x2 set .areay2, 242; // Event map areannounce y2 set .maintown$, "prontera"; // Spawn location when game ends set .mainx, 155; // spawn location x coordinate set .mainy, 179; // spawn location y coordinate set .w_give_prize, 1; // Default setting enable/disable winner prize ( Disable = 0, Enable = 1) set .give_prize, 1; // Default setting enable/disable normal prize ( Disable = 0, Enable = 1) set .gmlvl, 70; // Gm level to access admin menu set .gameon, 0; setwall .mapname$,296,260,18,6,0,"1wallqz"; setwall .mapname$,296,243,18,6,0,"2wallqz"; setwall .mapname$,296,259,16,4,0,"3wallqz"; setwall .mapname$,313,259,16,4,0,"4wallqz"; } quiz_02,297,259,4 script Togepi#0::SkillEffect0 463,{ if( getvariableofnpc(.gameon,"Mavis Vermillion") < 2 || getvariableofnpc(.Char_ID,"Mavis Vermillion") != getcharid(3) ) end; set Already_Played, getcharid(3); set #Already_Played, getcharid(3); set @matchnpc, atoi(strnpcinfo(2)); set .mapname$,getvariableofnpc(.mapname$,"Mavis Vermillion"); set .areax1,getvariableofnpc(.areax1,"Mavis Vermillion"); set .areay1,getvariableofnpc(.areay1,"Mavis Vermillion"); set .areax2,getvariableofnpc(.areax2,"Mavis Vermillion"); set .areay2,getvariableofnpc(.areay2,"Mavis Vermillion"); set .intervalmavis,getvariableofnpc(.intervalmavis,"Mavis Vermillion"); specialeffect getvariableofnpc(.skill_effects[@matchnpc],"Mavis Vermillion"); if( getvariableofnpc(.gameon,"Mavis Vermillion") == 2 ) { set getvariableofnpc(.event_showeffect,"Mavis Vermillion"), @matchnpc; set getvariableofnpc(.gameon,"Mavis Vermillion"), 3; } else if( @matchnpc != getvariableofnpc(.event_showeffect,"Mavis Vermillion") ) { set @npc_showeffects, getvariableofnpc(.event_showeffect,"Mavis Vermillion"); if( getvariableofnpc(.skill_effects[@npc_showeffects],"Mavis Vermillion") == getvariableofnpc(.skill_effects[@matchnpc],"Mavis Vermillion") ) { set .rewarditem, getvariableofnpc(.rewarditem,"Mavis Vermillion"); set .rewardamount, getvariableofnpc(.rewardamount,"Mavis Vermillion"); set .w_rewarditem, getvariableofnpc(.w_rewarditem,"Mavis Vermillion"); set .w_rewardamount, getvariableofnpc(.w_rewardamount,"Mavis Vermillion"); set .w_give_prize, getvariableofnpc(.w_give_prize,"Mavis Vermillion"); set .give_prize, getvariableofnpc(.give_prize,"Mavis Vermillion"); set getvariableofnpc(.gamepair,"Mavis Vermillion"), getvariableofnpc(.gamepair,"Mavis Vermillion") + 1; if( getvariableofnpc(.gamepair,"Mavis Vermillion") > 0 ) { if(.give_prize == 1){getitem .rewarditem, .rewardamount;}} set getvariableofnpc(.gameon,"Mavis Vermillion"), 2; donpcevent "SkillEffect" + @npc_showeffects + "::OnHideTogepi"; donpcevent "SkillEffect" + @matchnpc + "::OnHideTogepi"; set getvariableofnpc(.event_showeffect,"Mavis Vermillion"), -1; if( getvariableofnpc(.gamepair,"Mavis Vermillion") > 17 ){ // This 17 here, is the number of Pairs - 1 if(.w_give_prize == 1){ getitem .w_rewarditem, .w_rewardamount; } if(getareausers(.mapname$,.areax1,.areay1,.areax2,.areay2) > 0 ) { if ( $skillmatchgame_based == 0 ) { set #Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } if ( $skillmatchgame_based == 1 ) { set Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } } donpcevent "Mavis Vermillion::OnWinner"; } else donpcevent "Mavis Vermillion::OnDoingGood"; } else { set getvariableofnpc(.gameon,"Mavis Vermillion"), 2; set getvariableofnpc(.event_showeffect,"Mavis Vermillion"), -1; set getvariableofnpc(.attempt,"Mavis Vermillion"), getvariableofnpc(.attempt,"Mavis Vermillion") - 1; if( getvariableofnpc(.attempt,"Mavis Vermillion") < 1 ){ if(getareausers(.mapname$,.areax1,.areay1,.areax2,.areay2) > 0 ) { if ( $skillmatchgame_based == 0 ) { set #Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } if ( $skillmatchgame_based == 1 ) { set Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } } donpcevent "Mavis Vermillion::OnLose"; } else donpcevent "Mavis Vermillion::OnDoingBad"; } } end; OnShowSkillEffects: specialeffect getvariableofnpc(.skill_effects[atoi(strnpcinfo(2))],"Mavis Vermillion"); end; OnHideTogepi: disablenpc "SkillEffect" + atoi(strnpcinfo(2)) + ""; end; OnShowTogepi: enablenpc "SkillEffect" + atoi(strnpcinfo(2)) + ""; end; } /* Note : Checks if character is afk or not, set time at the above CONFIGURATIONS. This script triggers with OnPCLoadMapEvent. OnPCLoadMapEvent triggers when the map has a mapflag *loadevent*. If you want to disable this script, because it triggers with other scripts on the same map, just remove the mapflag loadevent, and/or remove the entire *IfAfkFor2Minutes* script.*/ - script IfAfkFor2Minutes -1,{ OnPCLoadMapEvent: set .@kicktimeifafk,getvariableofnpc(.kicktimeifafk,"Mavis Vermillion"); set .intervalmavis,getvariableofnpc(.intervalmavis,"Mavis Vermillion"); set Already_Played, getcharid(3); set #Already_Played, getcharid(3); while ( !getmapxy ( .@afkmap$, .@afkx, .@afky, 0) && .@afkmap$ == "quiz_02" ) { if ( .@afkx == .@afkmapx && .@afky == .@afkmapy ) { if( .@afkcountifidle < .@kicktimeifafk ){ set .@afkcountifidle,.@afkcountifidle+1; if(.@afkcountifidle==(.@kicktimeifafk-20)){ dispbottom "You have 20 seconds to move or you will be tagged as AFK"; } } else { dispbottom "You've been kicked for being afk."; if ( $skillmatchgame_based == 0 ) { set #Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } if ( $skillmatchgame_based == 1 ) { set Already_Played, gettimetick(2)+.intervalmavis; detachnpctimer; } set getvariableofnpc(.gameon,"Mavis Vermillion"), 0; donpcevent "Mavis Vermillion::OnAfk"; warp "SavePoint",0,0; break; } } else { set .@afkmapx,.@afkx; set .@afkmapy,.@afky; set .@afkcountifidle,0; } sleep2 1000; } } quiz_02,300,259,4 duplicate(SkillEffect0) Togepi#1::SkillEffect1 463 quiz_02,303,259,4 duplicate(SkillEffect0) Togepi#2::SkillEffect2 463 quiz_02,306,259,4 duplicate(SkillEffect0) Togepi#3::SkillEffect3 463 quiz_02,309,259,4 duplicate(SkillEffect0) Togepi#4::SkillEffect4 463 quiz_02,312,259,4 duplicate(SkillEffect0) Togepi#5::SkillEffect5 463 quiz_02,297,256,4 duplicate(SkillEffect0) Togepi#6::SkillEffect6 463 quiz_02,300,256,4 duplicate(SkillEffect0) Togepi#7::SkillEffect7 463 quiz_02,303,256,4 duplicate(SkillEffect0) Togepi#8::SkillEffect8 463 quiz_02,306,256,4 duplicate(SkillEffect0) Togepi#9::SkillEffect9 463 quiz_02,309,256,4 duplicate(SkillEffect0) Togepi#10::SkillEffect10 463 quiz_02,312,256,4 duplicate(SkillEffect0) Togepi#11::SkillEffect11 463 quiz_02,297,253,4 duplicate(SkillEffect0) Togepi#12::SkillEffect12 463 quiz_02,300,253,4 duplicate(SkillEffect0) Togepi#13::SkillEffect13 463 quiz_02,303,253,4 duplicate(SkillEffect0) Togepi#14::SkillEffect14 463 quiz_02,306,253,4 duplicate(SkillEffect0) Togepi#15::SkillEffect15 463 quiz_02,309,253,4 duplicate(SkillEffect0) Togepi#16::SkillEffect16 463 quiz_02,312,253,4 duplicate(SkillEffect0) Togepi#17::SkillEffect17 463 quiz_02,297,250,4 duplicate(SkillEffect0) Togepi#18::SkillEffect18 463 quiz_02,300,250,4 duplicate(SkillEffect0) Togepi#19::SkillEffect19 463 quiz_02,303,250,4 duplicate(SkillEffect0) Togepi#20::SkillEffect20 463 quiz_02,306,250,4 duplicate(SkillEffect0) Togepi#21::SkillEffect21 463 quiz_02,309,250,4 duplicate(SkillEffect0) Togepi#22::SkillEffect22 463 quiz_02,312,250,4 duplicate(SkillEffect0) Togepi#23::SkillEffect23 463 quiz_02,297,247,4 duplicate(SkillEffect0) Togepi#24::SkillEffect24 463 quiz_02,300,247,4 duplicate(SkillEffect0) Togepi#25::SkillEffect25 463 quiz_02,303,247,4 duplicate(SkillEffect0) Togepi#26::SkillEffect26 463 quiz_02,306,247,4 duplicate(SkillEffect0) Togepi#27::SkillEffect27 463 quiz_02,309,247,4 duplicate(SkillEffect0) Togepi#28::SkillEffect28 463 quiz_02,312,247,4 duplicate(SkillEffect0) Togepi#29::SkillEffect29 463 quiz_02,297,244,4 duplicate(SkillEffect0) Togepi#30::SkillEffect30 463 quiz_02,300,244,4 duplicate(SkillEffect0) Togepi#31::SkillEffect31 463 quiz_02,303,244,4 duplicate(SkillEffect0) Togepi#32::SkillEffect32 463 quiz_02,306,244,4 duplicate(SkillEffect0) Togepi#33::SkillEffect33 463 quiz_02,309,244,4 duplicate(SkillEffect0) Togepi#34::SkillEffect34 463 quiz_02,312,244,4 duplicate(SkillEffect0) Togepi#35::SkillEffect35 463 I change this mapwarp .mapname$,.maintown$,.mainx,.mainy; for this areawarp .mapname$,.areax1,.areay1,.areax2,.areay2,.mapname$,.maintown$,.mainx,.mainy; i mix the Area areannounce setting set .areax1, 295; // Event map areannounce x1 set .areay1, 261; // Event map areannounce y1 set .areax2, 314; // Event map areannounce x2 set .areay2, 242; // Event map areannounce y2 if you change this you also change the area warp
  9. you can use warparea http://rathena.org/wiki/Areawarp use Areawarp here OnWinner: stopnpctimer; donpcevent "::OnHideTogepi"; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : YOU DID IT!!",8; set .gameon, 0; sleep 2000; //here! mapwarp .mapname$,.maintown$,.mainx,.mainy; end; OnLose: stopnpctimer; donpcevent "::OnHideTogepi"; areaannounce .mapname$,.areax1,.areay1,.areax2,.areay2,"Mavis Vermillion : No more attempts. Sucks being you, I guess.",8; set .gameon, 0; sleep 2000; //here mapwarp .mapname$,.maintown$,.mainx,.mainy; end; and here set .gameon, 0; sleep 2000; //here mapwarp .mapname$,.maintown$,.mainx,.mainy; end;
  10. I don't have enough experience to say that you script is wrong but the script that i modify probably work
  11. if ($@members >= 5) { set .@greward,1;// 5-9 Members }else if ($@members >= 10){ set .@greward,2; // 10-14 Members } else if($@members >= 15){ set .@greward,3; set .@areward,1; // 15-19 Members } else if($@members >= 20){ set .@greward,4; set .@areward,2; // 20-24 Members }else if($@members == 25){ set .@greward,5; set .@areward,3; // 25 Members } else if ($@members >= 26) end; like this.. but i think if that is a rewards system you must do all the thinks inside the condicional { } (getitem, delitem) all of this... instead used another script for get the rewards.. is my point of view only..
  12. let see if this work rachel,163,122,4 script Title Manager 1002,{ //======== Configuration ======= set @npc_name$,"Title Manager"; // NPC's name set @gm_level,99; // GM level required //============================== if(getgmlevel()>=@gm_level) if(select("Normal","Admin") == 2) goto L_admin; mes "["+@npc_name$+"]"; mes "H.@i, I can give you titles."; next; mes "["+ @npc_name$ +"]"; mes "Here is the list."; query_sql("SELECT `a1`.`id`,`a1`.`title` FROM `title` `a1` WHERE EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ getcharid(0) +") ORDER BY `a1`.`title` ASC",@title_id,@title$); query_sql("SELECT `a1`.`title` FROM `title` `a1` WHERE NOT EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ getcharid(0) +") ORDER BY `a1`.`title`",@title_no$); query_sql("SELECT COUNT(*) FROM `title` `a1` WHERE EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ getcharid(0) +")",@title_count); query_sql("SELECT COUNT(*) FROM `title` `a1` WHERE NOT EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ getcharid(0) +")",@title_nocount); if(!@title_count && !@title_nocount) goto L_notitle; L_normal: menu "Avaible titles ("+ @title_count +")",L_avaible,"Unaivable titles ("+ @title_nocount +")",L_unaivable,"Remove my title",L_remove,"Cancel",-; close; L_avaible: if(!@title_count) goto L_normal; set @menu$,""; for(set .@i,0;.@i<@title_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title$[.@i] : @menu$ +":"+ @title$[.@i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_choice,@menu-1; if(@title_choice==@title_count) goto L_normal; next; mes "["+ @npc_name$ +"]"; mes "The title : \"" + @title$[@title_choice] + "\" is avaible to you."; if(select("Change my title","Cancel")==2) close; atcommand "@fakename "+strcharinfo(0) + @title$[@title_choice]; set title$,@title$[@title_choice]; next; mes "["+ @npc_name$ +"]"; mes "That's it."; mes "Bye."; close; L_unaivable: if(!@title_nocount) goto L_normal; set @menu$,""; for(set .@i,0;.@i<@title_nocount; set .@i,.@i+1) set @menu$,(@menu$=="") ? "^FF0000"+ @title_no$[.@i] +"^000000" : @menu$ +":^FF0000"+ @title_no$[.@i] +"^000000"; set @menu$,@menu$ +":Back"; menu @menu$,-; goto L_normal; L_remove: if(title$=="") { mes "You don't have any title."; close; } mes "That's it."; atcommand "@fakename"; set title$,""; close; L_admin: query_sql("SELECT COUNT(*) FROM `title`",@title_count); mes "Hi."; mes "What do you want to do?"; menu "Delete a title",-,"Add a title",addT,"Modify a title",modifyT,"Modify a player",modifyP; next; mes "["+ @npc_name$ +"]"; mes "What title do you want to delete?"; if(!@title_count) goto L_noTitle; query_sql("SELECT * FROM `title`",@title_id,@title$); set @menu$,""; for(set .@i,0;.@i<@title_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title$[.@i] : @menu$ +":"+ @title$[.@i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_choice,@menu-1; if(@title_choice==@title_count) { next; mes "["+ @npc_name$ +"]"; goto L_admin; } next; mes "["+@npc_name$+"]"; mes "Are you sure you want to delete : \""+ @title$[@title_choice] +"\"?"; if(select("No","Yes")==2) { next; mes "["+ @npc_name$ +"]"; mes "The title has been deleted!"; query_sql("DELETE FROM `title` WHERE `id`="+ @title_id[@title_choice]); query_sql("DELETE FROM `title_player` WHERE `id`="+ @title_id[@title_choice]); goto L_admin; } next; mes "["+ @npc_name$ +"]"; goto L_admin; addT: next; mes "["+ @npc_name$ +"]"; mes "What title do you want to add?"; next; input @addT$; if(@addT$==" ") { next; mes "["+ @npc_name$ +"]"; goto L_admin; } mes "["+ @npc_name$ +"]"; if(!callfunc("Add a title",@addT$)) { mes "This title is already in use!"; goto L_admin; } mes "That's it!"; goto L_admin; modifyT: next; mes "["+@npc_name$+"]"; if(!@title_count) goto L_noTitle; mes "What title do you want to modify?"; query_sql("SELECT * FROM `title`",@title_id,@title$); set @menu$,""; for(set .@i,0;.@i<@title_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title$[.@i] : @menu$ +":"+ @title$[.@i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_choice,@menu-1; if(@title_choice==@title_count) { next; mes "["+ @npc_name$ +"]"; goto L_admin; } mes "Currently modifying : "+ @title$[@title_choice] +"."; mes "Those players have this title avaible."; fastMod: query_sql("SELECT COUNT(*) FROM `title_player` WHERE `id`="+ @title_id[@title_choice],@title_player_count); query_sql("SELECT `char_id`,`name` FROM `title_player` WHERE `id`="+ @title_id[@title_choice],@title_player_charid,@title_player_name$); if(!@title_player_count) mes "No player."; for(set .@i,0;.@i<@title_player_count;set .@i,.@i+1) mes "- "+ @title_player_name$[.@i]; menu "Add a player",L_addP,"Remove a player",remP,"Modify the title's name",modT,"Modify another title",modifyT,"Return to main menu",-; next; mes "["+ @npc_name$ +"]"; goto L_admin; L_addP: next; mes "["+ @npc_name$ +"]"; mes "Please, enter the player's name."; input @addP$; if(@addP$==" ") goto fastMod; next; mes "["+ @npc_name$ +"]"; switch(callfunc("Add a player",@title$[@title_choice],@addP$)) { case 1: mes "The player doesn't exist."; break; case 2: mes "The title doesn't exist."; break; case 3: mes "Player has already this title avaible."; break; default: mes "That's it!"; break; } next; mes "["+ @npc_name$ +"]"; goto fastMod; remP: if(!@title_player_count) goto fastMod; mes "What player do you want to remove?"; set @menu$,""; for(set .@i,0;.@i<@title_player_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title_player_name$[.@i] : @menu$ +":"+ @title_player_name$[i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_player_choice,@menu-1; if(@title_player_choice==@title_player_count) { next; mes "["+ @npc_name$ +"]"; goto fastMod; } query_sql("DELETE FROM `title_player` WHERE `id`="+ @title_id[@title_choice] +" AND `char_id`="+ @title_player_charid[@title_player_choice] +" AND `name`='"+ @title_player_name$[@title_player_choice] +"'"); next; mes "["+ @npc_name$ +"]"; mes "That's it!"; goto fastMod; modT: next; mes "["+ @npc_name$ +"]"; mes "Title : \""+ @title$[@title_choice] +"\"."; if(select("Modify","Back")==2) { next; mes "["+ @npc_name$ +"]"; goto fastMod; } next; mes "["+ @npc_name$ +"]"; mes "Enter the new title."; input @newT$; next; for(set .@i,0;.@i<@title_count;set .@i,.@i+1) { if(@title$[.@i]!=@newT$) continue; mes "["+ @npc_name$ +"]"; mes "This title is already in use!"; goto modT; } if(select("Save names","Don't save names") == 2 ) query_sql("DELETE FROM `title_player` WHERE `id`="+ @title_id[@title_choice]); mes "["+ @npc_name$ +"]"; mes "That's it!"; query_sql("UPDATE `title` SET `title`='"+ @newT$ +"' WHERE `id`="+ @title_id[@title_choice]); query_sql("SELECT * FROM `title`",@title_id,@title$); goto fastMod; modifyP: next; mes "["+ @npc_name$ +"]"; query_sql("SELECT COUNT(DISTINCT `char_id`) FROM `title_player`",@player_count); mes ((@modGP) ? "What player do you want to add?" : "What player do you want to modify?"); query_sql("SELECT `char_id`,`name`,COUNT(*) FROM `title_player` GROUP BY `char_id` ORDER BY `name` ASC",@title_player_charid,@title_player_name$,@title_player_count); fastModP: set @menu$,""; for(set .@i,0;.@i<@player_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title_player_name$[.@i] +"("+ @title_player_count[.@i] +")" : @menu$ +":"+ @title_player_name$[.@i] +"("+ @title_player_count[.@i] +")"; set @menu$,(@menu$=="") ? "Type a name" : @menu$ +":Type a name"; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_player_choice,@menu-1; if(@title_player_choice==@player_count) { input @title_player_name$[@title_player_choice]; query_sql("SELECT `char_id` FROM `char` WHERE `name`='"+ @title_player_name$[@title_player_choice] +"'",@charid); if(!@charid[0]) { mes "Player doesn't exist."; goto fastModP; } set @title_player_charid[@title_player_choice],@charid[0]; } else if(@title_player_choice==@player_count+1 && !@modGP) { next; mes "["+ @npc_name$ +"]"; goto L_admin; } fastModPP: next; mes "["+ @npc_name$ +"]"; mes "Currently modifying : "+ @title_player_name$[@title_player_choice] +"."; menu "Add a title",-,"Remove a title",L_removeTP,"Modify another player",modifyP,"Return to main menu",L_admin; query_sql("SELECT COUNT(*) FROM `title` `a1` WHERE NOT EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ @title_player_charid[@title_player_choice] +")",@title_nocount); if(!@title_nocount) { mes "This player has all titles avaible."; goto fastModPP; } query_sql("SELECT `a1`.`id`,`a1`.`title` FROM `title` `a1` WHERE NOT EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ @title_player_charid[@title_player_choice] +") ORDER BY `a1`.`title` ASC",@title_noid,@title_no$); mes "Add title ..."; set @menu$,""; for(set .@i,0;.@i<@title_nocount;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title_no$[.@i] : @menu$ +":"+ @title_no$[.@i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_choice,@menu-1; if(@title_choice==@title_nocount) goto fastModPP; callfunc("Add a player",@title_no$[@title_choice],@title_player_name$[@title_player_choice]); mes "Title \""+ @title_no$[@title_choice] +"\" added for player \""+ @title_player_name$[@title_player_choice] +"\"."; goto fastModPP; L_removeTP: query_sql("SELECT COUNT(*) FROM `title` `a1` WHERE EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ @title_player_charid[@title_player_choice] +")",@title_count); if(!@title_count) { mes "This player doesn't have any title."; goto fastModPP; } query_sql("SELECT `a1`.`id`,`a1`.`title` FROM `title` `a1` WHERE EXISTS(SELECT `id`,`char_id` FROM `title_player` WHERE `id`=`a1`.`id` AND `char_id`="+ @title_player_charid[@title_player_choice] +") ORDER BY `a1`.`title` ASC",@title_id,@title$); mes "Remove the title ..."; set @menu$,""; for(set .@i,0;.@i<@title_count;set .@i,.@i+1) set @menu$,(@menu$=="") ? @title$[.@i] : @menu$ +":"+ @title$[.@i]; set @menu$,@menu$ +":Back"; menu @menu$,-; set @title_choice,@menu-1; if(@title_choice==@title_count) goto fastModPP; query_sql("DELETE FROM `title_player` WHERE `id`="+ @title_id[@title_choice] +" AND `char_id`="+ @title_player_charid[@title_player_choice]); mes "Title \""+ @title$[@title_choice] +"\" removed for player \""+ @title_player_name$[@title_player_choice] +"\"."; goto fastModPP; L_noTitle: mes "I don't have any title."; close; OnPCLoginEvent: if(title$!="") atcommand "@fakename "+ strcharinfo(0)+title$; end; } function script Add a title { // callfunc "Add a title","Title name" query_sql("SELECT COUNT(*) FROM `title`",@title_count); query_sql("SELECT * FROM `title`",@title_id,@title$); for(set .@i,0;.@i<@title_count;set .@i,.@i+1) { if(getarg(0)!=@title$[.@i]) continue; return 0; } query_sql("INSERT INTO `title` VALUES(NULL,'"+ getarg(0) +"')"); return 1; } function script Add a player { // callfunc "Add a player","Title name","Player name" query_sql("SELECT COUNT(*) FROM `char` WHERE `name`='"+ getarg(1) +"'",@title_charid_check); query_sql("SELECT `char_id` FROM `char` WHERE `name`='"+ getarg(1) +"'",@title_charid); if(!@title_charid_check) return 1; query_sql("SELECT COUNT(*) FROM `title` WHERE `title`='"+ getarg(0) +"'",@title_check); if(!@title_check) return 2; query_sql("SELECT `char_id`,`name` FROM `title_player` WHERE `id`="+ @title_id[0],@title_player_charid,@title_player_name$); query_sql("SELECT `id` FROM `title` WHERE `title`='"+ getarg(0) +"'",@title_id); query_sql("SELECT COUNT(*) FROM `title_player` WHERE `id`="+ @title_id[0],@title_player_count); for(set .@i,0;.@i<@title_player_count;set .@i,.@i+1) { if(@title_charid[0]!=@title_player_charid[.@i]) continue; return 3; } query_sql("INSERT INTO `title_player` VALUES("+ @title_id[0] +","+ @title_charid[0] +",'"+ getarg(1) +"')"); return 0; } function script Has Title { // callfunc "Has title","Title name",char_id query_sql("SELECT `id` FROM `title` WHERE `title`='"+ getarg(0) +"'",@title_id); query_sql("SELECT COUNT(*) FROM `title_player` WHERE `id`="+ @title_id[0] +" AND `char_id`="+ getarg(1),@title_check); if(@title_check) return 1; else return 0; } //==================================================================================================================================== - script pvptitle -1,{ OnPCKillEvent: if(callfunc("Has title","Killer",getcharid(0)) || callfunc("Has title","God Like",getcharid(0))) end; set player_count,player_count+1; if(player_count==10) { if(!callfunc("Add a player","Killer",strcharinfo(0))) announce "something",bc_self; else debugmes "Incorrect title (Killer)."; } else if(player_count==100) { if(!callfunc("Add a player","God Like",strcharinfo(0))) announce "something",bc_self; else debugmes "Incorrect title (God Like)."; } end; } i change all for(set i,0;i<@title_count;set i,i+1) for for(set .@i,0;.@i<@title_count;set .@i,.@i+1) let see if this work
  13. did you run the sql part? //==================================================================================================================================== // SQL //==================================================================================================================================== CREATE TABLE IF NOT EXISTS `title` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9; CREATE TABLE IF NOT EXISTS `title_player` ( `id` int(3) NOT NULL, `char_id` int(6) NOT NULL, `name` varchar(255) NOT NULL and change this function script Has Title { // callfunc "Has title","Title name",char_id for this function script Has title { // callfunc "Has title","Title name",char_id maybe is because the function "Has Title" have the "T" in capital letter and the callfunc have "Has title"
  14. Dynasty

    VIP NPC

    have to be like this if(#prmm <1) goto L_NoMake; because "#prmm" is not a item, is a variable
  15. Dynasty

    VIP

    - script login -1,{ OnPCLoginEvent: if (#prm >= 1) { sc_start } if (#prm < 1) end; } I'm sorry i make a mistake .. This should work
  16. Dynasty

    VIP

    - script login -1,{ OnPCLoginEvent: if (#prm >= 1) { sc_start }else if (!#prm == 0){ sc_end }
  17. Dynasty

    VIP

    i think it can be like this - script login -1,{ OnPCLoginEvent: if (vip_status(1)) { skilleffect 384,0; sc_start SC_MELTDOWN,360000,5; skilleffect 383,0; sc_start SC_WINDWALK,360000,5; skilleffect 378,0; sc_start SC_EDP,360000,5; skilleffect 465,0; sc_start SC_KAITE,360000,7; skilleffect 464,0; sc_start SC_KAUPE,360000,3; skilleffect 463,0; sc_start SC_KAAHI,360000,7; skilleffect 462,0; sc_start SC_KAIZEL,360000,7; skilleffect 8,0; sc_start SC_ENDURE,360000,10; skilleffect 33,0; sc_start SC_ANGELUS,360000,10; skilleffect 45,0; sc_start SC_CONCENTRATE,360000,10; skilleffect 74,0; sc_start SC_MAGNIFICAT,360000,5; skilleffect 75,0; sc_start SC_GLORIA,360000,5; skilleffect 459,0; sc_start SC_ADRENALINE2,360000,1; skilleffect 66,0; sc_start SC_IMPOSITIO,360000,5; skilleffect 67,0; sc_start SC_SUFFRAGIUM,360000,3; skilleffect 34,0; sc_start SC_BLESSING,360000,10; skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10; skilleffect 112,0; sc_start SC_WEAPONPERFECTION,360000,10; skilleffect 113,0; sc_start SC_OVERTHRUST,360000,5; skilleffect 114,0; sc_start SC_MAXIMIZEPOWER,360000,5; skilleffect 357,0; sc_start SC_CONCENTRATION,360000,5; skilleffect 355,0; sc_start SC_AURABLADE,360000,5; skilleffect 155,0; sc_start SC_LOUD,360000,1; skilleffect 157,0; sc_start SC_ENERGYCOAT,360000,1; sc_start SC_ASPDPOTION2,360000,0; sc_start SC_STRFood,360000,10; sc_start SC_AGIFood,360000,10; sc_start SC_VITFood,360000,10; sc_start SC_INTFood,360000,10; sc_start SC_DEXFood,360000,10; sc_start SC_LUKFood,360000,10; sc_start SC_HitFood,1200000,30; sc_start SC_FleeFood,1200000,30; sc_start SC_BATKFood,1200000,10; sc_start SC_MATKFood,120000,10; skilleffect 380,0; sc_start SC_TRUESIGHT,360000,5; skilleffect 361,0; sc_start SC_ASSUMPTIO,360000,5; }else if (!vip_status(1)) { skilleffect 384,0; sc_end SC_MELTDOWN,360000,5; skilleffect 383,0; sc_end SC_WINDWALK,360000,5; skilleffect 378,0; sc_end SC_EDP,360000,5; skilleffect 465,0; sc_end SC_KAITE,360000,7; skilleffect 464,0; sc_end SC_KAUPE,360000,3; skilleffect 463,0; sc_end SC_KAAHI,360000,7; skilleffect 462,0; sc_end SC_KAIZEL,360000,7; skilleffect 8,0; sc_end SC_ENDURE,360000,10; skilleffect 33,0; sc_end SC_ANGELUS,360000,10; skilleffect 45,0; sc_end SC_CONCENTRATE,360000,10; skilleffect 74,0; sc_end SC_MAGNIFICAT,360000,5; skilleffect 75,0; sc_end SC_GLORIA,360000,5; skilleffect 459,0; sc_end SC_ADRENALINE2,360000,1; skilleffect 66,0; sc_end SC_IMPOSITIO,360000,5; skilleffect 67,0; sc_end SC_SUFFRAGIUM,360000,3; skilleffect 34,0; sc_end SC_BLESSING,360000,10; skilleffect 29,0; sc_end SC_INCREASEAGI,360000,10; skilleffect 112,0; sc_end SC_WEAPONPERFECTION,360000,10; skilleffect 113,0; sc_end SC_OVERTHRUST,360000,5; skilleffect 114,0; sc_end SC_MAXIMIZEPOWER,360000,5; skilleffect 357,0; sc_end SC_CONCENTRATION,360000,5; skilleffect 355,0; sc_end SC_AURABLADE,360000,5; skilleffect 155,0; sc_end SC_LOUD,360000,1; skilleffect 157,0; sc_end SC_ENERGYCOAT,360000,1; sc_end SC_ASPDPOTION2,360000,0; sc_end SC_STRFood,360000,10; sc_end SC_AGIFood,360000,10; sc_end SC_VITFood,360000,10; sc_end SC_INTFood,360000,10; sc_end SC_DEXFood,360000,10; sc_end SC_LUKFood,360000,10; sc_end SC_HitFood,1200000,30; sc_end SC_FleeFood,1200000,30; sc_end SC_BATKFood,1200000,10; sc_end SC_MATKFood,120000,10; skilleffect 380,0; sc_end SC_TRUESIGHT,360000,5; skilleffect 361,0; sc_end SC_ASSUMPTIO,360000,5; end; } i didn't try it..
  18. //===== Akito Script ========================================= //= Arrow Maker //===== By: ================================================== //= Akito && Dynasty //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena SVN 3422+(Requires jA Script System) //===== Description: ========================================= // Quest de flechas //===== Additional Comments: ================================= //============================================================ //======Changeslog============================================ //= 1.0 Complete Work //= 1.1 Upgrade and Remake //= 1.2 Fixed some bugs //= 1.3 Rework Script //============================================================ prontera,146,172,5 script Arrowmaker 494,{ setarray .@id[0],1751,1752,1753,1754,1755,1756,1767; setarray .@menu2$,"10 Arrow:100 Arrow:1000 Arrow:10000 Arrow"; mes "ArrowCraft"; mes "Selecciona el tipo de flecha que necesitas"; next; for(set .@a, 0; .@a < getarraysize(.@id); set .@a,.@a++) { set .@menu$,.@menu$+getitemname(.@id[.@a])+":"; } set .@simple$,.@menu$; switch ( select( .@simple$ ) ) { case 1: mes "Silver Arrow"; set .@idd,.id[0]; set .@delitem[0],1011,912,2557,2333; mes "Zargon 10 silver arrow"; mes "Emveretarcon 100 silver arrow"; mes "Unicorn Horn 1000 silver arrow"; mes "Silver Robe 10000 silver arrow"; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 2: mes "Fire Arrow"; mes "Red Bjiou 10 Fire arrow"; mes "Fire Dragon Scale 100 Fire arrow"; mes "Live Coal 1000 Fire Arrow"; mes "Matcgsutck 10000 Fire Arrow"; set .@idd,.id[1]; set .@delitem[0],7447,7451,7098,7035; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 3: mes "Steal Arrow"; mes "Scell 10 Steal Arrow"; mes "Rough Elunium 100 Steal Arrow"; mes "Steel 1000 Steal Arrow"; mes "Elunium 10000 Steal Arrow"; set .@idd,.id[2]; set .@delitem[0],911,757,999,985; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 4: mes "Crystal Arrow"; mes "Blue Gemstone 10 Crystal Arrow"; mes "Crystal Blue 100 Crystal Arrow"; mes "Ancient Tooth 1000 Crystal Arrow"; mes "Mystic Frozen 10000 Crystal Arrow"; set .@idd,.id[3]; set .@delitem[0],717,991,995,1053; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 5: mes "Arrow Of Wind"; mes "Blue Bijou 10 Arrow Of Wind"; mes "Cat's Eyes 100 Arrow Of Wind"; mes "Wind Of Werdure 1000 Arrow Of Wind"; mes "Rough Wind 10000 Arrow Of Wind"; set .@idd,.id[4]; set .@delitem[0],7446,7263,992,996; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end;; case 6: mes "Stone Arrow"; mes "Yellow Gemstone 10 Stone Arrow"; mes "Green Bijou 100 Stone Arrow"; mes "Green Live 1000 Stone Arrow"; mes "Great Nature 10000 Stone Arrow"; set .@idd,.id[5]; set .@delitem[0],715,7445,993,997; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 7: mes "Immaterial Arrow"; mes "Yellow Bijou 10 Immaterial Arrow"; mes "Piece Of Shield 100 Immaterial Arrow"; mes "Skeletal Armor Piece 1000 Immaterial Arrow"; mes "Emperium 10000 Immaterial Arrow"; set .@idd,.id[6]; set .@delitem[0],7448,7108,7450,714; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; case 8: mes "Shadow Arrow"; mes "Horrendous Mouth 10 Shadow Arrow"; mes "Key of the underground 100 Shadow Arrow"; mes "Darkness Rune 1000 Shadow Arrow"; mes "Loki's Whispers 10000 Shadow Arrow"; set .@idd,.id[7]; set .@delitem[0],958,7027,7511,7019; select(.@menu2$); set .@opt,@menu-1; set .@delitemm,.@delitem[.@opt] callfunc "arrowmaker1"; end; } } function script arrowmaker1 { if(.@opt == 1){ if (!checkweight(.@idd,10)) { mes "Perdon pero no puedes obtener esta cantidad de flechas, estas en sobrepeso!"; } } if(.@opt == 2){ if (!checkweight(.@idd,100)) { mes "Perdon pero no puedes obtener esta cantidad de flechas, estas en sobrepeso!"; } } if(.@opt == 3){ if (!checkweight(.@idd,1000)) { mes "Perdon pero no puedes obtener esta cantidad de flechas, estas en sobrepeso!"; } } if(.@opt == 4){ if (!checkweight(.@idd,10000)) { mes "Perdon pero no puedes obtener esta cantidad de flechas, estas en sobrepeso!"; } } if ((countitem(.@delitemm) < 1)){ mes ""; mes "No tienes "+getitemname(.@delitemm)+" Suficiente"; close; } delitem .@delitemm,1; getitem .@idd,.@delitemm; mes "Aqui tienes"; close; OnInit: waitingroom "Creador de Flechasl",0; end; } soo... I DID this, the part that i used "case:" with loop how can i do this? cuz this is the think that i dont get it...
  19. Hi I have a question.. How can i do a menu using array and for??? I saw many script using it but i dont understand cuz i dont know the different between for + arrar and switch.. Plz.. Anwser me and srry for my bad inglesh And thanks..
  20. ok... but something that i dont understand is why when i click for get the git clone i only seen "git sync" ????
  21. nooo xD is my english that is so bad... i didnt upgrade my sql and i putted a wrong ip on char and map_conf xDDD .... in a other hand... how can i update my old version rathena from my desktop with github?
  22. sooo what i've to download github??? what do i have to doooo D;!?
  23. Hi i try to update my server manually cuz i dont know how to do it by winscp... so... download the rathena server of git repository ... and then i copy the src, db, sql, conf (msg_conf) files.... all is good until i compile... and then I get this error from charserver when I try to start up my server. All the passwords and usernames are correct in char_athena.conf, map_athena.conf, and the SQL database.
  24. hi this is what i were doing for 2 days... i want to make a achievement system using sql and this is a command that the user might use for see the progress that they do - script atcmd_example -1,{ OnInit: bindatcmd "logro","Verlogro::OnCommand"; end; } prontera,111,222,3 script Verlogro 123,{ OnCommand: setarray .@logros$[0],"","","","","","","",""; for( set .@i, 0; .@i < getarraysize(.@logros$); set .@i, .@i + 1 ){ set .@logrot$,"(query_sql "SELECT `"+ .@logros$[.@i]"` FROM logros WHERE `account_id` = "+ getcharid(3), .@logrot$[.@i];)"; while (.@i <= getarraysize(.@logros$)) { dispbottom "----------------------------------------------------------------------"; dispbottom " ============================================================="; dispbottom " = Logros ="; dispbottom " = ("+.@logros$[.@i])+" : "+.@logrot$[.@i]+") ="; dispbottom " ============================================================="; dispbottom "----------------------------------------------------------------------"; set .@i,.@i+1; } } } } i want to make a multiple query to the sql and at the same time add to a array... it is right??? here is the sql that i make... for that... CREATE TABLE IF NOT EXISTS `logros` ( `Cuenta_ID` int(11) unsigned NOT NULL default '0', `Nombre_cuenta` varchar(255) NOT NULL default 'NULL', `Logros` varchar(255) NOT NULL default 'NULL', `Poring1` varchar(255) NOT NULL default 'NULL', `Poring2` varchar(255) NOT NULL default 'NULL', `Poring3` varchar(255) NOT NULL default 'NULL', `Poring4` varchar(255) NOT NULL default 'NULL', `Poring5` varchar(255) NOT NULL default 'NULL', `Poring6` varchar(255) NOT NULL default 'NULL', `Poring7` varchar(255) NOT NULL default 'NULL', `Poring8` varchar(255) NOT NULL default 'NULL', `Poring9` varchar(255) NOT NULL default 'NULL', `Poring10` varchar(255) NOT NULL default 'NULL', `Poring11` varchar(255) NOT NULL default 'NULL', `Poring12` varchar(255) NOT NULL default 'NULL', `Poring13` varchar(255) NOT NULL default 'NULL', `Poring14` varchar(255) NOT NULL default 'NULL', `Poring15` varchar(255) NOT NULL default 'NULL', `Poring16` varchar(255) NOT NULL default 'NULL', `Poring17` varchar(255) NOT NULL default 'NULL', `Poring18` varchar(255) NOT NULL default 'NULL', `Poring19` varchar(255) NOT NULL default 'NULL', `Poring20` varchar(255) NOT NULL default 'NULL', `Poring21` varchar(255) NOT NULL default 'NULL', `Poring22` varchar(255) NOT NULL default 'NULL', `Poring23` varchar(255) NOT NULL default 'NULL', `Poring24` varchar(255) NOT NULL default 'NULL', `Poring25` varchar(255) NOT NULL default 'NULL', PRIMARY KEY (`Cuenta_ID`) ) ENGINE=MyISAM; BUMB?
×
×
  • Create New...