OnInit: // |
//| Configurações: |
//| |
//|=> Nome do npc na janela. |
set $@pvpm_name$,"[ ^FF0000 Arena ^000000 ]"; // |
//| |
//|=> Deseja usar o Ranking Ratio como principal? [ 1 = Sim ] |
//|---> Nota: Ranking Ratio: Pontuação = Kills - Mortes |
set $@mainRanking,1; // |
//| |
//|=> Até onde o Ranking irá mostrar. [ Máximo 127 ] |
set $@showsRankUntil,25; // |
//| |
//|=> Modo PK. Está configurado para alterar automaticamente, mude se necessário. |
set $@PK_Mode,getbattleflag("pk_mode"); // |
//| |
//|=> Deseja que ao player entrar no pvp perca os buff? [ 1 = Sim] |
set $@breakBuffs,0; // |
//| |
//|=> Quando o player matar o outro, deve ganhar experiência? |
//|---> Nota 1: Servidores de rates alta, configure o "quest_exp_rate". (exp.conf) |
//|---> Nota 2: $@lostEXP: Quantidade de EXP perdida ao morrer. ( 0 = Desativado ) |
//|---> Nota 3: Configuração do comando: |
//|--> 0 : Desativado. |
//|--> 1 : Ativado usando fórmula de EXP. ($@getEXP*KilledLVL/KillerLVL) |
//|--> 2 : Ativado, o player sempre irá ganhar a quantia definida no $@getEXP. |
set $@getEXPoption,1; // |
set $@getEXP,115; // 0,1% no level 50. |
set $@lostEXP,0; // |
//| |
//|=> Deseja ativar a contagem de pontos nos mapas da WoE? |
//|---> Nota 1: Não são enviandos sons/broadcast nos mapas da WoE. |
//|---> Nota 2: Opções de contagem. |
//|--> 0: Desativado. |
//|--> 1: Ativar contagem somente do PvP. |
//|--> 2: Ativar contagem somente do GvG. |
//|--> 3: Ativar ambos. |
set $@CountPointsInWoE,3; // |
//| |
//|=> Configuração do Som e Announce! |
//|---> Nota 1: Os sons devem ser colocados na pasta data/wav em formato .wav |
//|---> Nota 2: Se desativar o som do UT, desativará o broadcast dele também.(2) |
//|--> 0 : Desativar Todas Opções. |
//|--> 1 : Ativar somente broadcast Global. |
//|--> 2 : Ativar somente sons/broadcast do Unreal Tournament. |
//|--> 3 : Ativar Ambos. |
set $@sound,3; // |
//| |
//|=> Lista com o nomes dos Sons Unreal Tournament. |
//|---> Nota 1: $@SoundList$[Pontos em que irá tocar o som(Max. 127)],"Nome do Som"; |
//|---> Nota 2: A partir do ultimo, será somado 10 e repetirá o som, o set |
//|---> com "end" indica que o ultimo som será repetido dali em diante. |
//|---> Nota 3: O nome do arquivo é o mesmo que será exibido no announce. |
set $@SoundList$[1],"First Blood"; // |
set $@SoundList$[2],"Double Kill"; // |
set $@SoundList$[3],"Triple Kill"; // |
set $@SoundList$[5],"Mega Kill"; // |
set $@SoundList$[10],"Ultra Kill"; // |
set $@SoundList$[15],"Killing Spree"; // |
set $@SoundList$[20],"Ownage"; // |
set $@SoundList$[25],"Holy Shit"; // |
set $@SoundList$[30],"God Like"; // |
set $@SoundList$[35],"Dominating"; // |
set $@SoundList$[40],"Unstoppable"; // |
set $@SoundList$[50],"Monster Kill"; // |
set $@SoundList$[51],"end"; // |
//|==================================================================================|
query_sql("select name from pvpm_data where leader=1 and type=0 limit 1",$@Player_Lider$);
query_sql("select name from pvpm_data where leader=1 and type=2 limit 1",$@Guild_Lider$);
query_sql("select lang from pvpm_lang where lang=0 and lang=1",.@checkDefaultLang);
if(!.@checkDefaultLang && .@checkDefaultLang[1])
{
debugmes "[PvP Master Ultimate] NO DEFAULT LANGUAGE(LANG0)! LANG1 WAS SET AS DEFAULT!";
query_sql("update pvpm_lang set lang=lang-1");
}
query_sql("select count(lang) from pvpm_lang where id=0",.@c);
if(!.@c) debugmes "[PvP Master Ultimate] NO LANGUAGE DATA!";
for(set .@i,0;.@i<.@c;set .@i,.@i+1)
{
deletearray .@str$,82;
query_sql("select str from pvpm_lang where lang="+.@i,.@str$);
for(set .@y,0;.@y<82;set .@y,.@y+1) setd "$@PM_Lang"+.@i+"$["+.@y+"]",.@str$[.@y];
}
OnReloadListMap:
deletearray $@IDPM,10;
deletearray $@mapPM$,10;
deletearray $@MapTypePM,10;
deletearray $@menu$,10;
query_sql("select * from pvpm_map order by id asc limit 10",$@IDPM,$@mapPM$,$@MapTypePM,$@mfPM);
setarray $@TypeArena$[0],"^CD5C5C<PvP>","^FF4500<PvP Baby>","^8B5742<GvG>","^0047AB<Evento>";
for(set .@j,0;.@j<=(getarraysize($@mapPM$)-1);set .@j,.@j+1)
{
set $@menu$[.@j],"^000000- Arena "+(.@j+1)+" "+$@TypeArena$[$@MapTypePM[.@j]];
setmapflag $@mapPM$[.@j],mf_noreturn;
setmapflag $@mapPM$[.@j],mf_nosave;
setmapflag $@mapPM$[.@j],mf_noteleport;
setmapflag $@mapPM$[.@j],mf_nowarpto;
setmapflag $@mapPM$[.@j],mf_nowarp;
setmapflag $@mapPM$[.@j],mf_nomemo;
setmapflag $@mapPM$[.@j],mf_nopenalty;
setmapflag $@mapPM$[.@j],mf_nobranch;
if(!$@MapTypePM[.@j] && !$@mfPM[.@j]) setmapflag $@mapPM$[.@j],mf_pvp; else
if(!$@MapTypePM[.@j]) setmapflag $@mapPM$[.@j],mf_pvp_noguild;
if($@MapTypePM[.@j]==2) setmapflag $@mapPM$[.@j],mf_gvg;
}
}
- script PM_source -1,{
while(1)
{
mes $@pvpm_name$;
mes callfunc("getMesPM",1);
mes callfunc("getMesPM",2);
mes callfunc("getMesPM",3);
mes "^008B8B< PvP "+callfunc("getMesPM",4)+" - ^FFA500"+$@Player_Lider$+"^008B8B >";
mes "^008B8B< GvG "+callfunc("getMesPM",4)+" - ^FFA500"+$@Guild_Lider$+"^008B8B >";
switch(select("^FFA500- "+callfunc("getMesPM",5)+"^000000:- Ranking:- "+callfunc("getMesPM",6)+":- "+callfunc("getMesPM",7)+":- "+callfunc("getMesPM",79)))
{
case 1:
for(set @i,0;@i<=(getarraysize($@IDPM)-1);set @i,@i+1) set @m$[@i]," ^0000FF["+getmapusers($@mapPM$[@i])+"]";
switch(getarraysize($@IDPM))
{
case 1: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0]));
case 2: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1]));
case 3: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2]));
case 4: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3]));
case 5: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4]));
case 6: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4],$@menu$[5]+@m$[5]));
case 7: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4],$@menu$[5]+@m$[5],$@menu$[6]+@m$[6]));
case 8: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4],$@menu$[5]+@m$[5],$@menu$[6]+@m$[6],$@menu$[7]+@m$[7]));
case 9: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4],$@menu$[5]+@m$[5],$@menu$[6]+@m$[6],$@menu$[7]+@m$[7],$@menu$[8]+@m$[8]));
case 10: callfunc("pvpm_func","Warp",1,select($@menu$[0]+@m$[0],$@menu$[1]+@m$[1],$@menu$[2]+@m$[2],$@menu$[3]+@m$[3],$@menu$[4]+@m$[4],$@menu$[5]+@m$[5],$@menu$[6]+@m$[6],$@menu$[7]+@m$[7],$@menu$[8]+@m$[8],$@menu$[9]+@m$[9]));
} mes "** ERROR ** CHECK THE pm_map TABLE"; close;
case 2:
switch(select("- PvP:- PvP "+callfunc("getMesPM",8)+":- PvP (Ratio):- GvG:- GvG "+callfunc("getMesPM",8)+":- GvG (Ratio):- "+callfunc("getMesPM",9)))
{
case 1: callfunc "pvpm_func","Ranking1","kills",0,"PvP"; next; continue;
case 2: callfunc "pvpm_func","Ranking1","dies",0,"PvP (Mortes)"; next; continue;
case 3: callfunc "pvpm_func","Ranking1","ratio",0,"PvP (Ratio)"; next; continue;
case 4: callfunc "pvpm_func","Ranking1","kills",2,"GvG"; next; continue;
case 5: callfunc "pvpm_func","Ranking1","dies",2,"GvG (Mortes)"; next; continue;
case 6: callfunc "pvpm_func","Ranking1","ratio",2,"GvG (Ratio)"; next; continue;
case 7:
switch(select("- "+callfunc("getMesPM",9)+" PvP:- "+callfunc("getMesPM",9)+" PvP "+callfunc("getMesPM",8)+":- "+callfunc("getMesPM",9)+" PvP (Ratio):- "+callfunc("getMesPM",9)+" GvG:- "+callfunc("getMesPM",9)+" GvG "+callfunc("getMesPM",8)+":- "+callfunc("getMesPM",9)+" GvG (Ratio)"))
{
case 1: callfunc "pvpm_func","Ranking2","kills",0; next; continue;
case 2: callfunc "pvpm_func","Ranking2","dies",0; next; continue;
case 3: callfunc "pvpm_func","Ranking2","ratio",0; next; continue;
case 4: callfunc "pvpm_func","Ranking2","kills",2; next; continue;
case 5: callfunc "pvpm_func","Ranking2","dies",2; next; continue;
case 6: callfunc "pvpm_func","Ranking2","ratio",2; next; continue;
}
}
case 3:
next;
mes $@pvpm_name$;
mes callfunc("getMesPM",10);
mes callfunc("getMesPM",11);
mes callfunc("getMesPM",12);
next; continue;
case 4:
close;
case 5:
next;
mes $@pvpm_name$;
mes callfunc("getMesPM",80);
query_sql("select str from pvpm_lang where id=0",@lang$);
for(set @a,0;@a<getarraysize(@lang$);set @a,@a+1) mes @a+" = "+@lang$[@a];
input @inp;
if(@inp < 0 || @inp > (getarraysize(@lang$)-1))
{
mes callfunc("getMesPM",81);
next; continue;
} set PM_Lang,@inp;
next; continue;
}
}
OnInit:
waitingroom "",0;
OnTimer5000:
setarray .@RoomDisplay$,"[PvP] Arena","PvP "+$@PM_Lang0$[4]+" ["+$@Player_Lider$+"]","GvG "+$@PM_Lang0$[4]+" ["+$@Guild_Lider$+"]";
delwaitingroom;
waitingroom .@RoomDisplay$[rand(0,2)],0;
initnpctimer;
}
- script cmd -1,{
OnWhisperGlobal: