OK論壇

 找回密碼
 註冊
查看: 3294|回復: 16

EA13912[SQL] 如何得知在線上角色身上有無狀態

 關閉 [複製鏈接]
  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

    發表於 2010-6-22 19:57:20 | 顯示全部樓層 |閱讀模式
    本帖最後由 alice0416 於 2010-6-24 11:13 AM 編輯

    請問一下,有什麼語法可以得知角色身上是否有狀態??
    我查看了一下 腳本語法 裡面有一段,
    不知道是不是??
    *sc_check <type>{,<gid>}
    如果是的話,那是要如何寫呢??
    if( sc_check ? ?){}
    回復

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-6 01:09 AM
  • 簽到天數: 1324 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2010-6-22 20:34:15 | 顯示全部樓層
    ea 沒 sc_check 指令吧

    除非自已加進源碼  你說的那個是 sea吧
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

     樓主| 發表於 2010-6-22 20:42:46 | 顯示全部樓層
    噗...原來是自己找文件檔,找到眼花了...
    那EA的有可以得知狀態的語法嗎??..:97:
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-6 01:09 AM
  • 簽到天數: 1324 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2010-6-23 00:08:17 | 顯示全部樓層
    沒有的樣子  我沒看過那種指令  script_command.txt  找不到應該就沒了
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 07:14 PM
  • 簽到天數: 238 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2010-6-23 11:39:45 | 顯示全部樓層
    EA無
    回復 支持 反對

    使用道具 舉報

    該用戶從未簽到

    發表於 2010-6-23 14:54:09 | 顯示全部樓層
    本帖最後由 lendlice0001 於 2010-6-24 12:17 AM 編輯

    用SQL去達成吧!
    以下沒測過:

    1. function        script        func_chk_sc        {
    2.         mes "注意:欲查詢人物不可在線上!";
    3.         mes "請輸入人物cid:";
    4.         input .@ipt_cid;
    5.         if (.@ipt_cid < 150000 || .@ipt_cid > 999999) { mes "輸入錯誤"; close;}
    6.         set .@result1,query_sql("SELECT `sc_data`.`char_id`,`sc_data`.`type`,`sc_data`.`tick` FROM `sc_data` WHERE `sc_data`.`char_id`  =  '"+.@ipt_cid+"' GROUP BY `sc_data`.`type` ASC",.@cid,.@type,.@tick);
    7.         for (set .@i,0; .@i<getarraysize(.@cid); set .@i,.@i+1 ) {
    8.                 mes "腳色編號:"+.@cid[.@i]+";狀態編號:"+.@type[.@i]+";持續時間:"+.@tick[.@i]+"";
    9.         }
    10.         deletearray .@cid,10;
    11.         deletearray .@type,10;
    12.         deletearray .@tick,10;
    13. return;
    14. }
    複製代碼
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

     樓主| 發表於 2010-6-23 17:37:24 | 顯示全部樓層
    #4.5
    謝謝您們...:101:

    #6
    謝謝你,我去試試看...:92:
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

     樓主| 發表於 2010-6-23 21:05:47 | 顯示全部樓層
    好像不行.....:104:
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

     樓主| 發表於 2010-6-23 22:08:29 | 顯示全部樓層
    我有做小修改一下,讀取OK了.
    但是執行就......出現以下問題...
    回復 支持 反對

    使用道具 舉報

    該用戶從未簽到

    發表於 2010-6-24 00:21:22 | 顯示全部樓層
    修改...如#6
    缺少【"】記號,還有人物不能在線上才能夠查詢
    因為人物在線上時,資料庫裡的資料會被清掉,並存到暫存器裡去做倒數
    人物登出才會寫入資料庫
    所以人物必須不在線上!
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-6 01:09 AM
  • 簽到天數: 1324 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2010-6-24 01:52:56 | 顯示全部樓層
    如果你有興趣 可 以自已加看看 剛好有看到


    在/src/map/script.c 文件
    加上

    1. BUILDIN_FUNC(sc_check) {

    2. TBL_PC* sd;

    3. if(script_hasdata(st,3)) sd = map_id2sd(script_getnum(st,3));
    4. else sd = script_rid2sd(st);
    5. if(sd && sd->sc.data[script_getnum(st,2)])
    6. script_pushint(st,1);
    7. else script_pushint(st,0);
    8. return 0;
    9. }

    複製代碼
    ./src/map/script.c
    找到這行 struct script_function buildin_func[] = {
    在下面加  BUILDIN_DEF(sc_check,"i?"),

    1. struct script_function buildin_func[] = {


    2. BUILDIN_DEF(sc_check,"i?"), //加這行
    3. BUILDIN_DEF(getguildinfo,"ii")
    4. .
    5. .
    6. .
    複製代碼
    用法是
    sc_check <effect id>{,<unit_id>}
    存在傳回值1,不存在傳回值0


    13912原碼下載
    http://i.imagehost.org/download/0712/EA13912
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-7-19 08:02 AM
  • 簽到天數: 130 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2010-6-24 07:10:32 | 顯示全部樓層
    ea有checkoption.checkoption1.checkoption2能用嗎 ?
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-6 01:09 AM
  • 簽到天數: 1324 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2010-6-24 08:21:34 | 顯示全部樓層
    有 doc/ script_command.txt

    評分

    參與人數 1積分 +1 收起 理由
    x0823x + 1 不過EA好像只能判斷固定那幾樣而已 ..

    查看全部評分

    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-9-22 08:25 PM
  • 簽到天數: 250 天

    連續簽到: 1 天

    [LV.8]以壇為家I

     樓主| 發表於 2010-6-24 10:41:48 | 顯示全部樓層
    #10
    可以運行了,不過要加個 close; 不然會卡對話...(噗..你故意的).
    但是不可以在線查看..不過還是辛苦你了....:92:

    #11
    源碼的方法,我去試試看..謝謝你
    不行的話,可能麻煩大家....:101:
    回復 支持 反對

    使用道具 舉報

    該用戶從未簽到

    發表於 2010-6-24 15:25:12 | 顯示全部樓層
    以function方式呼叫,本來就該自己加close阿
    1. -        script        名字        xxx,{
    2.         xxxxxx
    3. close;
    4. }
    複製代碼
    這不是基本自己該知道的嗎?
    回復 支持 反對

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2025-7-6 12:46 AM , Processed in 0.159940 second(s), 23 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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