UID47683
帖子
精華
主題
積分17810
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限30
註冊時間2008-1-1
在線時間 小時
最後登錄1970-1-1
TA的每日心情 | 無聊 2010-10-28 01:01 PM |
---|
簽到天數: 88 天 連續簽到: 0 天 [LV.6]常住居民II
|
這排行榜有問題 殺人次數是給死亡的角色 不是給打死玩家的角色= =|||
哪有出問題?
// NPC:EA-PVP/GVG系統
// 說明:當玩家在PVP/GVG內, 每殺死一個玩家則增加一次的殺人次數(PVP和GVG次數是統一計算),
// 可自行登記入NPC進行排名.
// 好處:讓玩家可以知道自己已在PVP/GVG殺了多少玩家/讓管理員進行活動用.
// 腳本來源:完全由︴流浪者×夜∥大g自創之腳本.
// 日期:下午 08:50 2007/3/1
// ※注意※如要轉載,請勿刪除以上的說明,並且說明出處.
// NPC:PVP/GVG排名員
// 說明:可進行玩家殺人次數的排名, 預設值可顯示1~10名, 可自行設置.
// 注意!顯示名次設置越多NPC運算時間越長, 建議值為 : 1~30, 最大值為127.
// 好處:讓玩家方便查看.
// !!特別注意, 如伺服器已有相同觸發方式的NPC, 請將此腳本內容放入該NPC中, 一起執行.!!
- script OnPCKillEvent -1,{
OnPCKillEvent:
//PVP/GVG排名
set pvp_place,pvp_place+1;
dispbottom "PVP/GVG殺人次數+1 , 目前次數為 : "+pvp_place;
}
//變數使用
//$pvp_na_$[1] //第一名ID
//$pvp_na_$[2] //第二名ID
//$pvp_na_$[3] //第三名ID
//$pvp_na_$[4] //第四名ID
//$pvp_na_$[5] //第五名ID
//$pvp_na_$[6] //第六名ID
//$pvp_na_$[7] //第七名ID
//$pvp_na_$[8] //第八名ID
//$pvp_na_$[9] //第九名ID
//$pvp_na_$[10] //第十名ID
//以此類推
//$pvp_times_[1] //第一名殺人次數
//$pvp_times_[2] //第二名殺人次數
//$pvp_times_[3] //第三名殺人次數
//$pvp_times_[4] //第四名殺人次數
//$pvp_times_[5] //第五名殺人次數
//$pvp_times_[6] //第六名殺人次數
//$pvp_times_[7] //第七名殺人次數
//$pvp_times_[8] //第八名殺人次數
//$pvp_times_[9] //第九名殺人次數
//$pvp_times_[10] //第十名殺人次數
//以此類推
[url=]//$@pvp_na_temp$[/url] //ID代換變數
[url=]//$@pvp_times_temp[/url] //次數代換變數
[url=]//@str_name$[/url] //玩家ID暫存變數
[url=]//@user_place[/url] //玩家殺人次數暫存變數
//此NPC排序法使用,”選擇排序法”方便腳本查看
amatsu.gat,108,154,4 script PVP/GVG排行員 123,{
set @pvp_place_, 10; //名次顯示人數, 建議別設置超過30 ,最大值為127
set @pvp_gm_lv, 99; //設置清除排行表的GM權限
set @q,0;
set @al,0;
set @pvp_none,0;
set @pvp_times_temp,0;
set @pvp_na_temp$,"";
set @str_name$,strcharinfo(0);
set @user_place,pvp_place;
mes "[PVP/GVG排行員]";
mes "請選擇欲使用的服務.";
next;
if(getgmlevel(3)==@pvp_gm_lv)
{
menu "查看排行表..",-,"進行名次排行..",Ing,"清除排行表..",Clean,"離開..",Exit;
}
else
{
menu "查看排行表..",-,"進行名次排行..",Ing,"離開..",Exit;
}
mes "[PVP/GVG排行員]";
do
{
set @q,@q+1;
if($pvp_times_[@q]==0)
{
set @pvp_none,@pvp_none+1;
}
else
{
mes "第^FF0000"[email=+@q+]+@q+"^000000[/email]名:^FF6600"+$pvp_na_$[@q]+"^000000,累積殺人次數為:^FF6600"+$pvp_times_[@q]+"^000000";
}
}
while(@q<@pvp_place_);
if(@pvp_none>=@pvp_place_) mes "尚未有任何記錄";
close;
end;
Ing:
mes "[PVP/GVG排行員]";
mes "排行進行中...";
next;
for(set @pvp_check_val,1; @pvp_check_val<[email==@pvp_place]=@pvp_place[/email]_; set @pvp_check_val,@pvp_check_val+1)
{
if(@str_name$==$pvp_na_$[@pvp_check_val])
{
set $pvp_times_[@pvp_check_val],@user_place;
set @al,@pvp_check_val;
goto Pvp_check;
}
}
if(@user_place>$pvp_times_[@pvp_place_])
{
set $pvp_times_[@pvp_place_],@user_place;
set $pvp_na_$[@pvp_place_],@str_name$;
goto Pvp_check;
}
mes "[PVP/GVG排行員]";
mes "你的殺人次數尚未達到排行標準";
mes "請再努力以進排行榜";
close;
end;
Pvp_check:
mes "[PVP/GVG排行員]";
for(set @i,1; @i<@pvp_place_; set @i,@i+1)
{
for(set @j,@i+1;@j<[email==@pvp_place_;set]=@pvp_place_;set[/email] @j,@j+1)
{
if($pvp_times_[@i] < $pvp_times_[@j])
{
set @pvp_times_temp,$pvp_times_[@i];
set $pvp_times_[@i],$pvp_times_[@j];
set $pvp_times_[@j],@pvp_times_temp;
set @pvp_na_temp$,$pvp_na_$[@i];
set $pvp_na_$[@i],$pvp_na_$[@j];
set $pvp_na_$[@j],@pvp_na_temp$;
}
}
}
if(@al>0)
{
for(set @i,1; @i<@pvp_place_; set @i,@i+1)
{
if($pvp_na_$[@i]==@str_name$)
{
if((@al-@i)>0)
{
mes "本次排名提升至第"[email=+@i]+@i[/email]+"名";
announce "恭喜 '"+strcharinfo(0)+"' 殺人次數晉升為第 '"[email=+@i+"]+@i+"'[/email] 名, 次數為 :"+$pvp_times_[@i],15,0xFF7700;
goto Ok;
}
else if((@al-@i)<0)
{
mes "本次排名降下至第"[email=+@i]+@i[/email]+"名";
goto Ok;
}
else
{
mes "本次排名和上次排名相同";
goto Ok;
}
}
}
}
else
{
for(set @i,1; @i<@pvp_place_; set @i,@i+1)
{
if($pvp_na_$[@i]==@str_name$)
{
mes "恭喜進入排行榜,名次為:第"[email=+@i]+@i[/email]+"名";
announce "恭喜 '"+strcharinfo(0)+"' 殺人次數已達排行第 '"[email=+@i+"]+@i+"'[/email] 名, 次數為 :"+$pvp_times_[@i],15,0xFF7700;
goto Ok;
}
}
}
Ok:
mes " ";
mes "排行結束..";
mes "感謝使用本服務";
close;
end;
Clean:
mes "[PVP/GVG排行員]";
mes "是否清除所有排行表記錄?";
next;
menu "是..",-,"否..",Exit;
mes "[PVP/GVG排行員]";
mes "排行表清除中...";
next;
for(set @pvp_check_val,1; @pvp_check_val<[email==@pvp_place]=@pvp_place[/email]_; set @pvp_check_val,@pvp_check_val+1)
{
set $pvp_na_$[@pvp_check_val],"";
set $pvp_times_[@pvp_check_val],0;
}
mes "[PVP/GVG排行員]";
mes "排行表清除完畢";
close;
end;
Exit:
mes "[PVP/GVG排行員]";
mes "感謝使用本服務, ";
mes "歡迎下次使用本服務";
close;
end;
} |
|