OK論壇

 找回密碼
 註冊
查看: 4095|回復: 22

取得隊友等級語法問題

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

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

    發表於 2010-5-8 16:46:25 | 顯示全部樓層 |閱讀模式
    本帖最後由 az830326 於 2010-5-9 08:24 PM 編輯

    如題>>

    想要取得隊友的等級要使用什麼語法呢= =?

    麻煩各位高手指點
    回復

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2010-5-8 16:52:26 | 顯示全部樓層
    getpartymember + attachrid
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-8 18:06:28 | 顯示全部樓層
    後面那個是可以指定 "被指定人物"動作吧?

    但是我不太懂-  -怎麼用˙ ˙"
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    6 天前
  • 簽到天數: 1323 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2010-5-8 18:22:10 | 顯示全部樓層
    給你一段腳本參考

    1. set .@ptid,getcharid(1,strcharinfo(0));
    2. getpartymember(.@ptid,2);
    3. set .@ptmcount,$@partymembercount;
    4. copyarray .@ptmaid[0],$@partymemberaid[0],.@ptmcount;
    5. for(set .@i,0;.@i<getarraysize(.@ptmaid);set .@i,.@i+1)
    6. {
    7. if(isloggedin(.@ptmaid[.@i]))
    8.    {  attachrid(.@ptmaid[.@i]);
    9.     if(Baselv...){}
    10.     detachrid;
    11.    }

    12. }
    複製代碼
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-8 18:35:36 | 顯示全部樓層
    本帖最後由 az830326 於 2010-5-8 06:39 PM 編輯

    -  -哇....

    前面看的懂 從for那邊就看不太懂了-  -

    測試發現:兩人組隊(lv均小於設定值)

    當隊員按NPC時,隊長則會觸發到if(等級...)後面的事件...

    但是..有點不懂- -
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-12-15 11:58 PM
  • 簽到天數: 379 天

    連續簽到: 1 天

    [LV.9]以壇為家II

    發表於 2010-5-8 18:41:12 | 顯示全部樓層
    attachrid 腳本關聯人物
    for + attachrid 去關聯每個組隊成員
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-8 18:44:55 | 顯示全部樓層
    但是我這樣測試...
    發現隊員一按會卡住,隊長會跑出對話窗
    那對員如何解決?
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2014-12-14 01:52 PM
  • 簽到天數: 164 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2010-5-8 23:09:20 | 顯示全部樓層
    本帖最後由 xk78765 於 2010-5-9 11:48 AM 編輯
    如題>>

    想要取得隊友的等級要使用什麼語法呢= =?

    麻煩各位高手指點
    az830326 發表於 2010-5-8 04:46 PM


    取得在線組隊隊員等級...(應該拔..:15:

    1. alberta.gat,99,54,4        script        test        102,{
    2. set .@aid,getcharid(3);
    3. if(!getcharid(1)){ mes "NO PARTY"; close; }
    4. getpartymember(getcharid(1),2);
    5. for(set .@i,0; .@i<$@partymembercount; set .@i,.@i+1){
    6.         if(attachrid($@partymemberaid[.@i]))
    7.         set .@partylevel[.@i],BaseLevel;
    8. }
    9. getpartymember(getcharid(1));
    10. attachrid(.@aid);
    11. for(set .@i,0; .@i<$@partymembercount; set .@i,.@i+1){
    12. if(.@partylevel[.@i])
    13. mes $@partymembername$[.@i]+"等級為"+.@partylevel[.@i];
    14. }
    15. close;
    16. }
    複製代碼
    小修改一下:44:
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-9 09:01:11 | 顯示全部樓層

    1. if(!getcharid(1)){        mes "[hi]";        mes "尚未組隊";        close;        }

    2. if ( getcharid(1) < 3 ){        mes "[hi]";        mes "隊伍內人數低於3人";        close;        }

    3. set .@aid,getcharid(3);
    4. getpartymember(getcharid(1),2);
    5. for(set .@i,0; .@i<$@partymembercount;        set .@i,.@i+1){
    6.         if(isloggedin($@partymemberaid[.@i])){
    7.         attachrid($@partymemberaid[.@i]);
    8.         set .@partylevel[.@i],BaseLevel;
    9.         }
    10. }

    11. getpartymember(getcharid(1));
    12. for(set .@i,0; .@i<$@partymembercount;        set .@i,.@i+1){
    13. if($@partylevel[.@i] < 45 ){
    14. attachrid(.@aid);
    15. mes $@partymembername$[.@i]+"等級為"+.@partylevel[.@i];
    16. }
    17. }
    18. close;
    19. }
    複製代碼
    我用這樣 但是我按NPC時,隊伍只有2人,就直接跳到計算隊友等級!!不知道為什麼
    至於如果沒組隊按NPC,就會出現"尚未組隊"

    如果隊伍人數不足則不會顯示"人數不足"則直接跳到計算等級那裡...

    麻煩各位高手...
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-12-15 11:58 PM
  • 簽到天數: 379 天

    連續簽到: 1 天

    [LV.9]以壇為家II

    發表於 2010-5-9 09:07:43 | 顯示全部樓層
    1. if ( getcharid(1) < 3 ){        mes "[hi]";        mes "隊伍內人數低於3人";        close;        }
    複製代碼

    是錯的阿= ="
    樓上寫的很清楚了說XD
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-9 09:15:15 | 顯示全部樓層
    =    =?

    請問哪裡有錯誤呢=  =??""
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-9 09:15:19 | 顯示全部樓層
    本帖最後由 az830326 於 2010-5-9 09:16 AM 編輯

    >>這篇LAG  所以跑出兩則  抱歉
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-12-15 11:58 PM
  • 簽到天數: 379 天

    連續簽到: 1 天

    [LV.9]以壇為家II

    發表於 2010-5-9 09:18:11 | 顯示全部樓層
    =    =?

    請問哪裡有錯誤呢=  =??""
    az830326 發表於 2010-5-9 09:15 AM



        判斷有錯
        看他迴圈的判斷是什麼吧
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情

    2016-8-15 04:40 PM
  • 簽到天數: 22 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

     樓主| 發表於 2010-5-9 09:26:40 | 顯示全部樓層
    for(set .@i,0;        .@i<$@partymembercount;        set .@i,.@i+1){
            if(isloggedin($@partymemberaid[.@i])){.....}
    第一行是"$@partymembercount"是隊伍內的人數?
    讓迴圈走到每個隊伍內的成員?
    至於下面那個IF 後面的"$@partymemberaid[.@i]"這個我就看不太懂了
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2014-12-14 01:52 PM
  • 簽到天數: 164 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2010-5-9 14:16:21 | 顯示全部樓層
    for(set .@i,0;        .@i
    az830326 發表於 2010-5-9 09:26 AM

    你要先看一下這個語法的說明

    1. *getpartymember <party id>{,<type>};

    2. Thank you to HappyDenn for all this information.

    3. This command will find all members of a specified party and returns their names
    4. (or character id or account id depending on the value of "type") into an array
    5. of temporary global variables. There's actually quite a few commands like this
    6. which will fill a special variable with data upon execution and not do anything
    7. else.

    8. Upon executing this,

    9. $@partymembername$[] is a global temporary stringarray which contains all the
    10.                      names of these party members
    11.                      (only set when type is 0 or not specified)

    12. $@partymembercid[]   is a global temporary number array which contains the
    13.                      character id of these party members.
    14.                      (only set when type is 1)

    15. $@partymemberaid[]   is a global temporary number array which contains the
    16.                      account id of these party members.
    17.                      (only set when type is 2)

    18. $@partymembercount   is the number of party members that were found.
    複製代碼
    回復 支持 反對

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2024-5-8 10:12 PM , Processed in 0.055733 second(s), 19 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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