OK論壇

 找回密碼
 註冊
查看: 873|回復: 3

如何讓NPC對話中顯示"某地圖"中玩家的名稱

 關閉 [複製鏈接]
  • TA的每日心情
    奮斗
    2022-9-29 08:19 PM
  • 簽到天數: 283 天

    連續簽到: 1 天

    [LV.8]以壇為家I

    發表於 2014-1-16 00:14:58 | 顯示全部樓層 |閱讀模式
    我是參考了道管查詢組隊

                            if ( getmapusers("guild_vs2")==0 ){mes "[場地一]隊伍: [無人報名]";}else{mes "[場地一]隊伍: ["+getpartyname($@Dc_Party_1)+"]";}
                            if ( getmapusers("guild_vs3")==0 ){mes "[場地二]隊伍: [無人報名]";}else{mes "[場地二]隊伍: ["+getpartyname($@Dc_Party_2)+"]";}
                            if ( getmapusers("guild_vs1")==0 ){mes "[場地三]隊伍: [無人報名]";}else{mes "[場地三]隊伍: ["+getpartyname($@Dc_Party_3)+"]";}
                            if ( getmapusers("guild_vs4")==0 ){mes "[場地四]隊伍: [無人報名]";}else{mes "[場地四]隊伍: ["+getpartyname($@Dc_Party_4)+"]";}
                            if ( getmapusers("guild_vs5")==0 ){mes "[場地五]隊伍: [無人報名]";}else{mes "[場地五]隊伍: ["+getpartyname($@Dc_Party_5)+"]";}
                            close;
                    end;
            }

    如法炮製了這一段:

    mes "此區域【目前人數】^0000ff[" +getmapusers("gef_fild05")+ "]^000000";
    mes "下列將顯示10位玩家名稱";
    if ( getmapusers("gef_fild05")==0 ){mes "^008844此區域沒有玩家^000000";}
    if ( getmapusers("gef_fild05")==1 ){mes "^008844["+getcharid($@place_name_1)+"]^000000";}
    if ( getmapusers("gef_fild05")==2 ){mes "^008844["+getcharid($@place_name_2)+"]^000000";}
    if ( getmapusers("gef_fild05")==3 ){mes "^008844["+getcharid($@place_name_3)+"]^000000";}
    if ( getmapusers("gef_fild05")==4 ){mes "^008844["+getcharid($@place_name_4)+"]^000000";}
    if ( getmapusers("gef_fild05")==5 ){mes "^008844["+getcharid($@place_name_5)+"]^000000";}
    if ( getmapusers("gef_fild05")==6 ){mes "^008844["+getcharid($@place_name_6)+"]^000000";}
    if ( getmapusers("gef_fild05")==7 ){mes "^008844["+getcharid($@place_name_7)+"]^000000";}
    if ( getmapusers("gef_fild05")==8 ){mes "^008844["+getcharid($@place_name_8)+"]^000000";}
    if ( getmapusers("gef_fild05")==9 ){mes "^008844["+getcharid($@place_name_9)+"]^000000";}
    if ( getmapusers("gef_fild05")==10 ){mes "^008844["+getcharid($@place_name_10)+"]^000000";}

    這樣改只顯示了此地圖內的腳色帳號CID   而不是此地圖內的 人物遊戲名稱

    要如何去修改呢0.0...



    回復

    使用道具 舉報

  • TA的每日心情
    慵懶
    2020-5-9 12:35 PM
  • 簽到天數: 987 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2014-1-16 00:22:23 | 顯示全部樓層
    這要看你如何 Save 進這里。。$@place_name_2

    要換成
    1. $@place_name_1$
    複製代碼
    在腳本裏面要寫成
    1. set $@place_name_1$,strcharinfo(0);
    複製代碼
    你應該POST你的腳本好讓大家檢查。。。
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    無聊
    2023-11-5 12:14 PM
  • 簽到天數: 2233 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2014-1-16 01:10:56 | 顯示全部樓層
    前後文看不出個所以然

    要檢查某地圖內所有玩家
    你可以用迴圈檢查所有在線且位於指定地圖的玩家並顯示
    如果是道館能在進入地圖時儲存名稱進變數
    回復 支持 反對

    使用道具 舉報

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

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2014-1-16 01:59:17 | 顯示全部樓層
    本帖最後由 sinya 於 2014-1-16 02:04 AM 編輯

    當玩家進入地圖時,用sql 更新地圖名稱

    OnPCLoadMapEvent:
              query_sql "UPDATE `char` SET last_map='"+strcharinfo(3)+"'";
    end;


    要看地圖有誰在
    用sql 查詢地圖 select name form `char`  where  last_map = ????


    就可以得到那地圖的玩家名稱
    回復 支持 反對

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2024-5-8 09:35 PM , Processed in 0.069281 second(s), 24 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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