Advertisement
johnlol

PVP Ranking with Reset

Aug 7th, 2023
763
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VeriLog 4.76 KB | Gaming | 0 0
  1. //===== rAthena Script =======================================
  2. //= PVP Warper
  3. //===== By: ==================================================
  4. //= HaARiZz
  5. //===== Current Version: =====================================
  6. //= 1.0
  7. //===== Compatible With: =====================================
  8. //= rAthena Project
  9. //===== Description: =========================================
  10. //= Basic PVP Warper script.
  11. //= Free for ALL
  12. //= PVP for 2nd Job
  13. //= Guild Arena
  14. //===== Additional Comments: =================================
  15. //= 1.0 Initial script.
  16. //============================================================
  17. /*
  18. ALTER TABLE `char` ADD `pvp_kill` INT(11) UNSIGNED NOT NULL DEFAULT '0'  AFTER `fame`;
  19. */
  20. prontera,139,173,5  script  PVP 801,{
  21. //  doevent "pvp_rank_main::OnTalk";
  22. //}
  23. //- script  pvp_rank_main   -1,{
  24. //
  25. //  OnTalk:
  26. //Locked PVP During Woe
  27. if ( agitcheck() || agitcheck2() ) {
  28. mes "Sorry, ^800000PVP^000000 Rooms are ^FF0000Locked^000000 During WOE.";
  29. emotion e_no;
  30. close;
  31. }
  32.  
  33.     emotion e_com;
  34.     mes "[ ^FF0000" + strnpcinfo(0) + "^000000 ]";
  35.     mes "What would you like me to do?";
  36.     switch( select("^006400Free^000000 ^008000for^000000 ^228B22ALL^000000 [^696969 "+getmapusers("guild_vs3")+" ^000000^A9A9A9Users^000000 ]","^FF4500Trans^000000. ^FF8C002nd^000000 ^FFA500Job^000000 [^696969 "+getmapusers("guild_vs1")+" ^000000^A9A9A9Users^000000 ]","^0000FFGuild^000000 ^4169E1Arena^000000 [^696969 "+getmapusers("guild_vs4")+" ^000000^A9A9A9Users^000000 ]",
  37.             "^6A5ACDPVP^000000 ^836FFFRanking^000000",
  38.             ( getgmlevel() >= 99 ) ? "[^FF0000GM^000000] ^483D8BReset^000000 ^6A5ACDPVP^000000 ^836FFFRanking^000000":""
  39.         )) {
  40.  
  41.         case 1:
  42.             warp "guild_vs3",0,0;
  43.             announce ""+strcharinfo(0)+" Has Enter PVP! Free for All",bc,0x006400;
  44.             end;
  45.            
  46.         case 2:
  47.             if ( Class == .thirdJob[1] ){
  48.                 mes "You are not ^FF4500Trans^000000. ^FF8C002nd^000000 ^FFA500Job^000000, so you cant enter.";
  49.             }else{
  50.                 warp "guild_vs1",0,0;
  51.                 announce ""+strcharinfo(0)+" Has Enter PVP for Trans. 2nd Job",bc,0xFF4500;
  52.  
  53.             }
  54.             end;
  55.  
  56.         case 3:
  57.         if( !getcharid(2) ){
  58.             mes "You dont have a ^0000FFGuild^000000"; close;
  59.             }else{
  60.             warp "guild_vs4",0,0;
  61.             announce ""+strcharinfo(0)+" Has Enter PVP! Guild Arena",bc,0x0000FF;
  62.  
  63.             }
  64.             end;
  65.             default:
  66.                 mes "^6A5ACDPVP^000000 ^836FFFRanking^000000";
  67.                 query_sql( "SELECT `name`,`pvp_kill` FROM `char` WHERE `pvp_kill` > 0 ORDER BY `pvp_kill` DESC LIMIT 10", .@name$, .@pvp_kill );
  68.                 .@size = getarraysize( .@name$ );
  69.                 for ( .@i = 0; .@i < .@size; .@i++ ) {
  70.                     mes "[^FF0000"+(.@i + 1 )+"^000000] ^FF6347"+.@name$[.@i]+"^000000 - ^FF7F50"+.@pvp_kill[.@i]+"^000000 ^FFA07Akill^000000(^E9967As^000000)";
  71.                 }
  72.                 break;
  73.             case 5:
  74.                 mes "^483D8BReset^000000 ^836FFFRanking^000000? Action cant be undo. Confirm your action.";
  75.                 if ( select( "^006400Confirm^000000","^FFA500Cancel^000000" ) == 1 ) {
  76.                     query_sql( "UPDATE `char` SET `pvp_kill` = 0 WHERE `pvp_kill` > 0" );
  77.                     mes "^FF0000Done^000000.";
  78.                 }
  79.                 break;
  80.         }
  81.         close;
  82.        
  83.         OnPCKillEvent:
  84.         if ( getcharid(3) != killedrid ) {
  85.             query_sql( "UPDATE `char` SET `pvp_kill` = `pvp_kill` + 1 WHERE `char_id` = "+getcharid(0)+" LIMIT 1" );
  86.         }
  87.         end;
  88.        
  89.         OnInit:
  90.     setarray    .thirdJob[1],0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,4001,4002,4003,4004,4005,4006,4007,4054,4055,4056,4057,4058,4059,4060,4061,4062,4063,4064,4065,4066,4067,4068,4069,4070,4071,4072,4073,4074,4075,4076,4077,4078,4079,4190,4191,4096,4097,4098,4099,4100,4101,4102,4103,4104,4105,4106,4107,4108,4223,4224,4229,4239,4240,4241,4242;
  91.     setmapflag  "guild_vs3",mf_nosave;
  92.     setmapflag  "guild_vs3",mf_nogo;
  93.     setmapflag  "guild_vs3",mf_nomemo;
  94.     setmapflag  "guild_vs3",mf_nobranch;
  95.     setmapflag  "guild_vs3",mf_nowarp;
  96.     setmapflag  "guild_vs3",mf_nowarpto;
  97.     setmapflag  "guild_vs3",mf_noteleport;
  98.     setmapflag  "guild_vs3",mf_noreturn;
  99.     setmapflag  "guild_vs3",mf_pvp;
  100.    
  101.     setmapflag  "guild_vs1",mf_nosave;
  102.     setmapflag  "guild_vs1",mf_nogo;
  103.     setmapflag  "guild_vs1",mf_nomemo;
  104.     setmapflag  "guild_vs1",mf_nobranch;
  105.     setmapflag  "guild_vs1",mf_nowarp;
  106.     setmapflag  "guild_vs1",mf_nowarpto;
  107.     setmapflag  "guild_vs1",mf_noteleport;
  108.     setmapflag  "guild_vs1",mf_noreturn;
  109.     setmapflag  "guild_vs1",mf_pvp;
  110.  
  111.     setmapflag  "guild_vs4",mf_nosave;
  112.     setmapflag  "guild_vs4",mf_nogo;
  113.     setmapflag  "guild_vs4",mf_nomemo;
  114.     setmapflag  "guild_vs4",mf_nobranch;
  115.     setmapflag  "guild_vs4",mf_nocostume;
  116.     setmapflag  "guild_vs4",mf_nowarp;
  117.     setmapflag  "guild_vs4",mf_nowarpto;
  118.     setmapflag  "guild_vs4",mf_noteleport;
  119.     setmapflag  "guild_vs4",mf_noreturn;
  120.     setmapflag  "guild_vs4",mf_gvg;
  121.     setmapflag  "guild_vs4",mf_pvp;
  122.  
  123.  
  124.     //waitingroom "PvP Warper ",0;
  125.     //end;
  126.     }
  127. //Hide NPC On Woe
  128. /*
  129. OnAgitEnd:
  130. OnAgitEnd2:
  131.     hideoffnpc strnpcinfo(0);
  132.     end;
  133.  
  134. OnAgitStart:
  135. OnAgitStart2:
  136.     hideonnpc strnpcinfo(0);
  137.     end;
  138. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement