OK論壇

 找回密碼
 註冊
查看: 853|回復: 1

PVP排行榜

 關閉 [複製鏈接]
  • TA的每日心情

    2014-7-16 01:07 PM
  • 簽到天數: 5 天

    連續簽到: 2 天

    [LV.2]偶爾看看I

    發表於 2008-6-14 17:20:24 | 顯示全部樓層 |閱讀模式
    我是JA的~我的腳本有錯嗎? 不然怎不能排名...



    - 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,217,107,6 script PVP排行 772,{
    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排行]";
    mes "請選擇欲使用的服務.";
    next;
    if(getgmlevel(3)==@pvp_gm_lv)
    {
    menu "查看排行表..",-,"進行名次排行..",Ing,"清除排行表..",Clean,"離開..",Exit;
    }
    else
    {
    menu "查看排行表..",-,"進行名次排行..",Ing,"離開..",Exit;
    }

    mes "[PVP排行]";
    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排行]";
    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排行]";
    mes "你的殺人次數尚未達到排行標準";
    mes "請再努力以進排行榜";
    close;
    end;

    Pvp_check:
    mes "[PVP排行]";
    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+&quot;]+@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+&quot;]+@i+"'[/email] 名, 次數為 :"+$pvp_times_[@i],15,0xFF7700;
       goto Ok;
      }
    }
    }
    Ok:
    mes " ";
    mes "排行結束..";
    mes "感謝使用本服務";
    close;
    end;


    Clean:
    mes "[PVP排行]";
    mes "是否清除所有排行表記錄?";
    next;
    menu "是..",-,"否..",Exit;
    mes "[PVP排行]";
    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排行]";
    mes "排行表清除完畢";
    close;
    end;
    Exit:
    mes "[PVP排行]";
    mes "感謝使用本服務, ";
    mes "歡迎下次使用本服務";
    close;
    end;
    }
  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2008-6-14 17:52:16 | 顯示全部樓層
    這 是 EA 腳 本
    回復 支持 反對

    使用道具 舉報

    您需要登錄後才可以回帖 登錄 | 註冊

    本版積分規則

    Archiver|手機版|小黑屋|OK討論區

    GMT+8, 2025-7-4 08:06 AM , Processed in 0.411043 second(s), 20 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回復 返回頂部 返回列表