guys i have my new private server ragnarok im having hard time scripting my pvp arena
i want that my arena would announce if a player enters and also announce if the player kill someone
if you can add dota like announcements i would be very happy
here's the script that i use,
// Made by iTouch
// ----------------------------------------------------------------------------
// Ultimate PvP Warper ver. 1
// Features:
// Baby PvP Room
// PvP Square(Every 2 days Random PvP Room)
// PvP Nightmare
// PvP Lowlvl( Supports 1 - 150 Lvl)
// PvP No Potion (Berrys , Ygg seed , Any potions , etc. are restricted)
// PvP Non Donator (Got Items are restricted here)
// -----------------------------------------------------------------------------
// ver. 2 update idea:
// Adding a PvP Room that removes the buffs of the player when entering the room
// Adding a PvP Room for GM's Only so GM's will have fun
// -----------------------------------------------------------------------------
// Special thanks to:
// icescope of eAthena for helping me configuring the error at PvP Square
// -----------------------------------------------------------------------------
mes "[PvP Warper]";
mes "Which arena do you want to go to?";
switch(select("PVP Square ["+getmapusers(.pvp_square$)+"/100]:PVP Nightmare ["+getmapusers("guild_vs3")+"/100]:PVP LowLevel ["+getmapusers("guild_vs1")+"/100]:PVP NoPotion ["+getmapusers("pvp_y_8-2")+"/100]:Non Donator PVP ["+getmapusers("1@orcs")+"/100]:Baby PvP Room ["+getmapusers("pvp_y_1-2")+"/100]")) {
case 1: // PVP Square
if (getmapusers(.pvp_square$) > 99) callsub S_full;
callsub S_payment;
warp .pvp_square$,0,0;
end;
case 2: // PVP Nightmare
if (getmapusers("guild_vs3") > 99) callsub S_full;
callsub S_payment;
warp "guild_vs3",0,0;
end;
case 3: // PVP LowLevel
if (getmapusers("guild_vs1") > 99) callsub S_full;
if (BaseLevel > 150) { // Edit 150 to any maximum Lvl of a player can enter this room
mes "only Base Level 1 - 150 may enter.";
close;
}
callsub S_payment;
warp "guild_vs1",0,0;
end;
case 4: // PVP NoPotion
if (getmapusers("pvp_y_8-2") > 99) callsub S_full;
for( set .@i,0; .@i<getarraysize(.NoPotion_ids); set .@i,.@i+1 ) {
if (countitem(.NoPotion_ids[.@i])) {
mes "You can not bring potions in this pvp.";
close;
}
}
callsub S_payment;
warp "pvp_y_8-2",0,0;
end;
case 5: // Non Donator PVP
if (getmapusers("1@orcs") > 99) callsub S_full;
for( set .@i,0; .@i<getarraysize(.NoDonator_ids); set .@i,.@i+1 ) {
if (countitem(.NoDonator_ids[.@i])) {
mes "You can not bring God items in this pvp.";
close;
}
}
callsub S_payment;
warp "1@orcs",0,0;
end;
Case 6: // Baby PvP Room
if (getmapusers("pvp_y_1-2") > 99) callsub S_full;
if (class < 4023 || class > 4045) goto L_NotBaby;
callsub S_payment;
warp "pvp_y_1-2",0,0;
end;
L_NotBaby:
mes "Only baby can enter this room";
close;
}
S_full:
mes " ";
mes "I'm sorry, this arena is full. Please try again later...";
close;
S_payment:
if (Zeny < (200*BaseLevel + 800)) {
mes "You don't have enough zeny.";
mes "It costs "+(200*BaseLevel + 800)+" zeny for you to enter.";
close;
}
set Zeny, Zeny - (200*BaseLevel + 800);
return;
OnInit:
waitingroom "PvP Warper",0;
end;
OnClock0000:
// set the "PVP Square" map, based on day of the weeek
switch(gettime(4)) {
case 0: // Sunday
case 1: // Monday
set .pvp_square$, "guild_vs2";
break;
case 2: // Tuesday
case 3: // Wednesday
set .pvp_square$, "guild_vs5";
break;
case 4: // Thursday
case 5: // Friday
set .pvp_square$, "guild_vs4";
break;
case 6: // Saturday
set .pvp_square$, "guild_vs1-2";
break;
}
// items not allowed in PVP NoPotion
setarray .NoPotion_ids[0], 607, 608;
// items not allowed in Non Donator PVP
setarray .NoDonator_ids[0], 2410, 1530;
end;
}
Question
Budots
Edited by gmmontoy
change to code bbcode. Do not use FULL CAPS.
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.