jupiterfate 發表於 2016-4-14 22:37:37

隊伍冷卻時間

在副本進入中,我使用

      getpartymember(getcharid(1),2);
      set .@partymembercount,$@partymembercount;
      copyarray .@partymemberaid,$@partymemberaid,.@partymembercount;
      for(set .@i,0;.@i<.@partymembercount;set .@i,.@i+1){
                attachrid(.@partymemberaid[.@i]);
                set 時間判斷變數;
      }

然後進入副本使用 warpparty

這一段 語法,讓每個隊伍都加入 時間判斷變數,

所以在這隊伍裡面的玩家都已經有冷卻時間了

所以只要是現在隊伍內的玩家再進入副本都無法

但是,如果新的人員進來當隊長,就可以進去這副本

請問該怎解決?

1.我有想到是說,讀取現在當前的所有隊員的時間變數然後判斷是否冷卻時間已過 但是不知道用甚麼方法抓取變數

1588 發表於 2016-4-14 23:48:12

http://okayro.com/thread-283090-1-3.html

hahaha125 發表於 2016-4-15 04:05:21

本帖最後由 hahaha125 於 2016-4-15 04:41 AM 編輯

本人ra這樣寫可不用warpparty,這版本前前後後修改有三次,
一開始是在副本內踩點偵測,後來有點問題就修改成這樣。
進入後就不能出來,要出來的話可以另加一個quest,
只有雙開測試,未公開測試。getpartymember getcharid(1),2;
set .@partymembercount,$@partymembercount;
copyarray .@partymemberaid,$@partymemberaid,.@partymembercount;
for(set .@i,0; .@i<.@partymembercount; set .@i,.@i+1) {
      if (attachrid(.@partymemberaid[.@i])) {
                if (checkquest(atoi(getarg(0)),PLAYTIME) == 2) {
                        erasequest 12002;
                }
                if (checkquest(atoi(getarg(0)),PLAYTIME) != -1) {
                        dispbottom "副本冷卻時間尚未結束。";
                }
                if (checkquest(atoi(getarg(0)),PLAYTIME) == -1) {
                        setquest 12002;
                        instance_enter ("魔物終結之塔");
                }
                detachrid;
                }
      }
      end;

jupiterfate 發表於 2016-4-16 15:14:10

本帖最後由 jupiterfate 於 2016-4-16 11:17 PM 編輯

如果是使用warpparty然後進去後完成副本,接下來換沒有CD任務的玩家當隊長時,該怎辦?(因為這樣他們一樣可進副本)
頁: [1]
查看完整版本: 隊伍冷卻時間