OK論壇

 找回密碼
 註冊
查看: 1131|回復: 5

終極密碼報名問題

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

    2012-6-14 02:19 AM
  • 簽到天數: 46 天

    連續簽到: 0 天

    [LV.5]常住居民I

    發表於 2012-5-24 18:48:27 | 顯示全部樓層 |閱讀模式
    請問大大這個如何設定成

    只能同帳號報名過就不能報名

    因為有些玩家會報名完又開分身報名

    佔位子

    造成人數 50人滿了

    有些玩家就不能報名

    可否設定成為同帳號人物報名過後

    就不可以在報名?








    // 活動在報名狀態(報名名單查核)
    if ($@Code_State == 1 && Get_Code == 1) {
            for (set @TEMP,1;@TEMP<=$@Code_People_Num+1;set @TEMP,@TEMP+1){
                    if ($@Code_People_Temp[@TEMP] == getcharid(0)) goto Code_Waiting;
            }
            mes "[阿古]";
            mes "您有[報名但未參與活動記錄]";
            mes "前回報名費用退回了,請確認";
            set Zeny,Zeny+$@Code_Zeny;
            set Get_Code,0;
            next;
    }

    // 活動在報名狀態(報名)
    if ($@Code_State == 1) {
            mes "[阿古]";
            mes "【終極" + $@Code_Name$ + "】規則如下:";
            switch($@Code_Type) {
                    case 1:
                            mes "^FF6600☆ 優先猜中金庫密碼的為勝利者";
                            break;
                    case 2:
                            mes "^FF6600☆ 不踩到炸彈,存活越久的為勝利者";               
                            break;
            }
            mes "☆ " + $@Code_Name$ + "範圍為:1∼人數×200";
            mes "☆ 超時未輸入【終極" + $@Code_Name$ + "】者淘汰^000000";
            next;
            if ($@Code_People_Num != 0) {
                    mes "[阿古]";
                    mes "目前的報名名單如下:";
                    for (set @TEMP,1;@TEMP<$@Code_People_Num+1;set @TEMP,@TEMP+1){
                            mes @TEMP + ". ^FF6600" + $@Code_People_Temp$[@TEMP] + "^000000[" + $@Code_People_Temp[@TEMP] + "]";
                    }
                    mes "------------------------";
                    next;
            }
            mes "【終極" + $@Code_Name$ + "】開放報名中";
            mes "報名費用:^FF6600" + $@Code_Zeny + " Zeny^000000";
            if ($@Code_Bom_Prize[1] != 0 && $@Code_Type == 2){
                    mes "活動獎品:^FF6600";
                    for (set @TEMP,1;@TEMP<=$@Code_P4*2;set @TEMP,@TEMP+2){
                            if ($@Code_Bom_Prize[@TEMP] != 0){
                                    mes "第" + (@TEMP+1)/2 + "名:" + getitemname($@Code_Bom_Prize[@TEMP]) + "[" + $@Code_Bom_Prize[@TEMP+1] + "個]";
                            }
                    }
            }else{
                    mes "活動獎品^FF6600(隨機取得)^000000:";
                    mes "^FF6600" + @Prize_Name$ + "^000000";
            }
            mes "^FF0000報名前,請詳讀規則,以免權益受損^000000";
            mes "你想要參加嗎??";
            next;
            menu        "我要參加",-,
                    "我不想要參加",EXIT;

            if (Zeny < $@Code_Zeny) goto NO_ZENY;

            if ($@Code_People_Num >= $@Code_P2) {
                    mes "[阿古]";
                    mes "抱歉,現在活動人數已滿";
                    mes "(最多" + $@Code_P2 + "人進行【終極" + $@Code_Name$ + "】)";
                    mes "請參加下一場次的活動吧";
                    close;
            }

            set Get_Code,1;
            set $@Code_People_Num,$@Code_People_Num+1;
            setarray $@Code_People_Temp[$@Code_People_Num],getcharid(0);
            setarray $@Code_People_Temp$[$@Code_People_Num],strcharinfo(0);
            set Zeny,Zeny-$@Code_Zeny;
            goto Code_Waiting;
            close;
    }
    回復

    使用道具 舉報

  • TA的每日心情

    2019-6-16 09:57 PM
  • 簽到天數: 193 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2012-5-24 22:05:08 | 顯示全部樓層
    sql  ip限制
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2012-6-14 02:19 AM
  • 簽到天數: 46 天

    連續簽到: 0 天

    [LV.5]常住居民I

     樓主| 發表於 2012-5-25 22:34:06 | 顯示全部樓層
    回復 2# s1089954zx

    請教大大如何設定呢...
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2012-6-14 02:19 AM
  • 簽到天數: 46 天

    連續簽到: 0 天

    [LV.5]常住居民I

     樓主| 發表於 2012-5-28 20:23:12 | 顯示全部樓層
    回復 2# s1089954zx

    大大可以跟我說如何設定嗎...

    這個問題困擾很久了><"
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2019-6-16 09:57 PM
  • 簽到天數: 193 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2012-5-29 03:52:34 | 顯示全部樓層
    腳本區有個 多開限制
    改成function腳本


    attachrid
    再加入 callfunc 就可以∼∼

    怎麼寫 研究吧!!

    1. OnTimer600000:
    2. for (set .TEMP,1;.TEMP<=$@Code_People_Num;set .TEMP,.TEMP+1){

    3.           if (attachrid(getcharid(3,$@Code_People_Temp$[.TEMP]))) {
    4.                  callfunc "多ip偵測";
    5.          }
    6. }

    7. // 報名名單查核 離線者刪除
    8.         for (set .TEMP,1;.TEMP<=$@Code_People_Num;set .TEMP,.TEMP+1){
    9. Check_Code1:
    10.                 if (attachrid(getcharid(3,$@Code_People_Temp$[.TEMP])) == 0) {
    11.                         set $@Code_People_Num,$@Code_People_Num-1;
    12.                         deletearray $@Code_People_Temp[.TEMP],1;
    13.                         deletearray $@Code_People_Temp$[.TEMP],1;
    14.                         detachrid;
    15.                         goto Check_Code1;
    16.                 }
    17.         }


    18. function  script  多ip偵測  {
    19. 去找那腳本吧
    20. 最後面end 改成 return
    21. }
    複製代碼
    大概就是這樣∼∼其他方法 請先自行研究再說!!
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2012-6-14 02:19 AM
  • 簽到天數: 46 天

    連續簽到: 0 天

    [LV.5]常住居民I

     樓主| 發表於 2012-5-29 20:16:59 | 顯示全部樓層
    回復 5# s1089954zx

    看不太懂~"~是把代碼加進去嗎??
    回復 支持 反對

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2025-6-30 04:49 AM , Processed in 0.050103 second(s), 20 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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