Emistry

[RO] PVP Warper for 80 levels.

Jan 9th, 2016
295
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.11 KB | None | 0 0
  1. invek,150,169,4 script  PVP Room::PVP Room  875,{
  2.  
  3.     mes "[PVP Room Receptionist]";
  4.     mes "Are you ready to battle?";
  5.     menu
  6.     "Yes , let's battle !",S_freeforall,"No , I am here for peace. ",S_cancel;
  7.  
  8. S_3rdjobroom:
  9.     if(Class >= 4008 && Class <= 4021) goto S_Notallowed;
  10.     mes "This PvP room is for 3rd job.";
  11.     mes"Please Choose Your Pvp map";
  12.     if( class == 4013 || class == 4059){
  13.     sc_end SC_SPIRIT;}
  14.     set .@mapcount_2,getmapusers("pvp_y_7-2");
  15.     set .@mapcount_1,getmapusers("pvp_y_7-1");
  16.     set .@mapcount_3,getmapusers("pvp_y_7-3");
  17.     set .@mapcount_4,getmapusers("pvp_y_7-4");
  18.     set .@mapcount_5,getmapusers("pvp_y_7-5");
  19.     while(1) {
  20.         switch(select("Izulde[ "+.@mapcount_2+" / 128 ]:Prontera [ "+.@mapcount_1+" / 128 ]:Payon [ "+.@mapcount_3+" / 128 ]:Alberta [ "+.@mapcount_4+" / 128 ]:Morroc [ "+.@mapcount_5+" / 128 ]:Cancel")) {
  21.         case 1:
  22.             callsub S_CheckPVPRoom,@mapcount_2,"pvp_y_7-2";
  23.             if ( class == 4013 || class == 4059 ){
  24.             sc_end SC_SPIRIT;}
  25.             break;
  26.         case 2:
  27.             callsub S_CheckPVPRoom,@mapcount_1,"pvp_y_7-1";
  28.             if ( class == 4013 || class == 4059 ){
  29.             sc_end SC_SPIRIT;}
  30.             break;
  31.         case 3:
  32.             callsub S_CheckPVPRoom,@mapcount_3,"pvp_y_7-3";
  33.             if ( class == 4013 || class == 4059 ){
  34.             sc_end SC_SPIRIT;}
  35.             break;
  36.         case 4:
  37.             callsub S_CheckPVPRoom,@mapcount_4,"pvp_y_7-4";
  38.             if ( class == 4013 || class == 4059 ){
  39.             sc_end SC_SPIRIT;}
  40.             break;
  41.         case 5:
  42.             callsub S_CheckPVPRoom,@mapcount_5,"pvp_y_7-5";
  43.             if ( class == 4013 || class == 4059 ){
  44.             sc_end SC_SPIRIT;}
  45.             break;
  46.         case 6:
  47.             close;
  48.         }
  49.     }
  50.  
  51. S_2ndjobroom:
  52.     if(Class >= 4054 && Class <= 4085) goto S_Notallowed;
  53.     mes "This PvP room is for 2nd job.";
  54.     mes"Please Choose Your Pvp map";
  55.     set .@mapcount_2,getmapusers("pvp_y_8-2");
  56.     set .@mapcount_1,getmapusers("pvp_y_8-1");
  57.     set .@mapcount_3,getmapusers("pvp_y_8-3");
  58.     set .@mapcount_4,getmapusers("pvp_y_8-4");
  59.     set .@mapcount_5,getmapusers("pvp_y_8-5");
  60.     while(1) {
  61.         switch(select("Izulde[ "+.@mapcount_2+" / 128 ]:Prontera [ "+.@mapcount_1+" / 128 ]:Payon [ "+.@mapcount_3+" / 128 ]:Alberta [ "+.@mapcount_4+" / 128 ]:Morroc [ "+.@mapcount_5+" / 128 ]:Cancel")) {
  62.         case 1:
  63.             callsub S_CheckPVPRoom2,@mapcount_2,"pvp_y_8-2";
  64.             if ( class == 4013 || class == 4059 ){
  65.             sc_end SC_SPIRIT;}
  66.             break;
  67.         case 2:
  68.             callsub S_CheckPVPRoom2,@mapcount_1,"pvp_y_8-1";
  69.             if ( class == 4013 || class == 4059 ){
  70.             sc_end SC_SPIRIT;}
  71.             break;
  72.         case 3:
  73.             callsub S_CheckPVPRoom2,@mapcount_3,"pvp_y_8-3";
  74.             if ( class == 4013 || class == 4059 ){
  75.             sc_end SC_SPIRIT;}
  76.             break;
  77.         case 4:
  78.             callsub S_CheckPVPRoom2,@mapcount_4,"pvp_y_8-4";
  79.             if ( class == 4013 || class == 4059 ){
  80.             sc_end SC_SPIRIT;}
  81.             break;
  82.         case 5:
  83.             callsub S_CheckPVPRoom2,@mapcount_5,"pvp_y_8-5";
  84.             if ( class == 4013 || class == 4059 ){
  85.             sc_end SC_SPIRIT;}
  86.             break;
  87.         case 6:
  88.             close;
  89.         }
  90.     }
  91.  
  92. S_freeforall:
  93.     mes "This PVP room is free for all.";
  94.     mes"Please choose your PVP map";
  95.     set .@mapcount_2,getmapusers("pvp_y_6-2");
  96.     set .@mapcount_1,getmapusers("pvp_y_6-1");
  97.     set .@mapcount_3,getmapusers("pvp_y_6-3");
  98.     set .@mapcount_4,getmapusers("pvp_y_6-4");
  99.     set .@mapcount_5,getmapusers("pvp_y_6-5");
  100.     while(1) {
  101.         switch(select("Izulde[ "+.@mapcount_2+" / 128 ]:Prontera [ "+.@mapcount_1+" / 128 ]:Payon [ "+.@mapcount_3+" / 128 ]:Alberta [ "+.@mapcount_4+" / 128 ]:Morroc [ "+.@mapcount_5+" / 128 ]:Cancel")) {
  102.         case 1:
  103.             callsub S_CheckPVPRoom1,@mapcount_1,"pvp_y_6-2";
  104.             if ( class == 4013 || class == 4059 ){
  105.             sc_end SC_SPIRIT;}
  106.             break;
  107.         case 2:
  108.             callsub S_CheckPVPRoom1,@mapcount_2,"pvp_y_6-1";
  109.             if ( class == 4013 || class == 4059 ){
  110.             sc_end SC_SPIRIT;}
  111.             break;
  112.         case 3:
  113.             callsub S_CheckPVPRoom1,@mapcount_3,"pvp_y_6-3";
  114.             if ( class == 4013 || class == 4059 ){
  115.             sc_end SC_SPIRIT;}
  116.             break;
  117.         case 4:
  118.             callsub S_CheckPVPRoom1,@mapcount_4,"pvp_y_6-4";
  119.             if ( class == 4013 || class == 4059 ){
  120.             sc_end SC_SPIRIT;}
  121.             break;
  122.         case 5:
  123.             callsub S_CheckPVPRoom1,@mapcount_5,"pvp_y_6-5";
  124.             if ( class == 4013 || class == 4059 ){
  125.             sc_end SC_SPIRIT;}
  126.             break;
  127.         case 6:
  128.             close;
  129.         }
  130.     }
  131.  
  132. S_Notallowed:
  133.     mes "[PVP Fight Square Reception Staff]";
  134.     mes "You are not allowed to join this room!";
  135.     close;
  136.  
  137. S_CheckPVPRoom:
  138.     if ( BaseLevel < 80 ) {
  139.         mes "Only player with Level 80 and above can enter PVP.";
  140.         close;
  141.     }
  142.     if (getarg(0) >= 128) {
  143.         mes "[PVP Fight Square Reception Staff]";
  144.         mes "This map is currently full.";
  145.         next;
  146.         return;
  147.     }
  148.     else {
  149.         announce strcharinfo(0) + " has entered 3rd Job PvP Room !",0;
  150.         warp getarg(1),0,0;
  151.         end;
  152.     }
  153.  
  154. S_CheckPVPRoom1:
  155.     if ( BaseLevel < 80 ) {
  156.         mes "Only player with Level 80 and above can enter PVP.";
  157.         close;
  158.     }
  159.     if (getarg(0) >= 128) {
  160.         mes "[PVP Fight Square Reception Staff]";
  161.         mes "This map is currently full.";
  162.         next;
  163.         return;
  164.     }
  165.     else {
  166.         announce strcharinfo(0) + " has entered PVP room !",0;
  167.         warp getarg(1),0,0;
  168.         end;
  169.     }
  170.  
  171. S_CheckPVPRoom2:
  172.     if ( BaseLevel < 80 ) {
  173.         mes "Only player with Level 80 and above can enter PVP.";
  174.         close;
  175.     }
  176.     if (getarg(0) >= 128) {
  177.         mes "[PVP Fight Square Reception Staff]";
  178.         mes "This map is currently full.";
  179.         next;
  180.         return;
  181.     }
  182.     else {
  183.         announce strcharinfo(0) + " has entered 2nd Job PvP Room !",0;
  184.         warp getarg(1),0,0;
  185.         end;
  186.     }
  187. S_cancel:
  188.     close;
  189. }
  190.  
  191. payon,189,104,4 duplicate(PVP Room) PVP Room#1  875
  192.  
  193. pvp_y_6-1   mapflag nobranch
  194. pvp_y_6-2   mapflag nobranch
  195. pvp_y_6-3   mapflag nobranch
  196. pvp_y_6-4   mapflag nobranch
  197. pvp_y_6-5   mapflag nobranch
  198. pvp_y_6-1   mapflag nogo
  199. pvp_y_6-2   mapflag nogo
  200. pvp_y_6-3   mapflag nogo
  201. pvp_y_6-4   mapflag nogo
  202. pvp_y_6-5   mapflag nogo
  203. pvp_y_6-2   mapflag nobranch
  204. pvp_y_6-2   mapflag noreturn
  205. pvp_y_6-2   mapflag nomemo
  206. pvp_y_6-2   mapflag nowarpto
  207. pvp_y_6-2   mapflag noteleport
  208. pvp_y_6-2   mapflag nosave  SavePoint
  209.  
  210.  
  211. pvp_y_6-1   mapflag pvp
  212. pvp_y_6-2   mapflag pvp
  213. pvp_y_6-3   mapflag pvp
  214. pvp_y_6-4   mapflag pvp
  215. pvp_y_6-5   mapflag pvp
  216. pvp_y_6-1   mapflag pvp
  217. pvp_y_6-2   mapflag pvp
  218. pvp_y_6-3   mapflag pvp
  219. pvp_y_6-4   mapflag pvp
  220. pvp_y_6-5   mapflag pvp
  221. pvp_y_6-2   mapflag pvp
  222. pvp_y_6-2   mapflag pvp
  223. pvp_y_6-2   mapflag pvp
  224. pvp_y_6-2   mapflag pvp
  225. pvp_y_6-2   mapflag pvp
  226. pvp_y_6-2   mapflag pvp
Add Comment
Please, Sign In to add comment