OK論壇

 找回密碼
 註冊
查看: 2596|回復: 9

[疑問] 關於使用itemskill來獲得所點選的玩家AID問題

[複製鏈接]
  • TA的每日心情
    開心
    2024-10-3 07:35 AM
  • 簽到天數: 2556 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2012-8-14 23:57:13 | 顯示全部樓層 |閱讀模式
    我對於源碼部分都不熟,因此都是隨便亂改亂加,我試著在clif.c底下的clif_parse_UseSkillToId加上下列語法(紅色部分)
        skilllv = RFIFOW(fd,packet_db[sd->packet_ver][RFIFOW(fd,0)].pos[0]);
        skillnum = RFIFOW(fd,packet_db[sd->packet_ver][RFIFOW(fd,0)].pos[1]);
        target_id = RFIFOL(fd,packet_db[sd->packet_ver][RFIFOW(fd,0)].pos[2]);

        if( sd->skillitem == skillnum )
        {
            pc_setreg(sd, add_str("@getuseitemskillid"), skillnum); //當玩家使用物品技能時
            pc_setreg(sd, add_str("@getuseitemskilllv"), skilllv); //當玩家使用物品技能時
            pc_setreg(sd, add_str("@getuseitemskilltid"), target_id); //當玩家使用物品技能時
            pc_setreg(sd, add_str("@getuseitemskillaid"), sd->bl.id); //當玩家使用物品技能時
            npc_script_event(sd,NPCE_USEITEMSKILL); //當玩家使用物品技能時
        }


        if( skilllv < 1 ) skilllv = 1; //No clue, I have seen the client do this with guild skills :/ [Skotlex]

        tmp = skill_get_inf(skillnum);
        if (tmp&INF_GROUND_SKILL || !tmp)
            return; //Using a ground/passive skill on a target? WRONG.
    遊戲中測試OK,可以拿到我要的資料,但是有個問題來了

    當我自創一個技能ID,舉例這邊用9001編號
    然後給他的設定跟治癒術一樣

    9001,9,6,16,6,0x21,0,10,1,yes,0,0,0,magic,0,    ACCOUND_ID,帳號
    28,9,6,16,6,0x21,0,10,1,yes,0,0,0,magic,0,    AL_HEAL,治癒術

    然後我試著用原本的治癒術點玩家,可以正常補血並拿到我要的資料

    再來我用我自己創的技能對玩家使用,直接使用後沒有拿到資料,必須要按著SHIFT再點才有辦法得到我要的資料...

    這個新創的技能9001,我想要改成不用按SHIFT點玩家就可以拿到帳號等資料。

    請問這邊我又是哪邊沒有設定好呢?



    回復

    使用道具 舉報

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

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2012-8-15 00:46:44 | 顯示全部樓層
    應該是技能id問題 你用 1021試試

    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-10-4 02:22 AM
  • 簽到天數: 177 天

    連續簽到: 5 天

    [LV.7]常住居民III

    發表於 2012-8-15 00:49:10 | 顯示全部樓層
    你在一般地圖點擊玩家使用火箭術看看能不能取得id
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-10-3 07:35 AM
  • 簽到天數: 2556 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

     樓主| 發表於 2012-8-18 09:22:38 | 顯示全部樓層
    有沒有人知道要改的話,要怎麼改呢?
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2015-7-19 01:44 PM
  • 簽到天數: 228 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2012-8-18 10:25:05 | 顯示全部樓層
    該技能在PVP模式下的使用結果呢?
    一樣要加shift才有用嗎

    看原始碼是跟shift無直接關聯的……
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-10-4 02:22 AM
  • 簽到天數: 177 天

    連續簽到: 5 天

    [LV.7]常住居民III

    發表於 2012-8-18 17:41:04 | 顯示全部樓層
    he01204046 發表於 2012-8-18 09:22 AM
    有沒有人知道要改的話,要怎麼改呢?

    改客戶端, 我記得有部分是負責這個
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2013-7-11 12:09 AM
  • 簽到天數: 118 天

    連續簽到: 1 天

    [LV.6]常住居民II

    發表於 2012-8-18 20:47:39 | 顯示全部樓層
    kiedveian 發表於 2012-8-18 10:25 AM
    該技能在PVP模式下的使用結果呢?
    一樣要加shift才有用嗎

    ...

    在一般地圖跟PVP地圖裡

    客戶端對技能類型判斷是不同的

    而不是SHIFT的使用與否...

    (在一般地圖使用SHIFT,客戶端才會送出資料)
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2024-10-3 07:35 AM
  • 簽到天數: 2556 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

     樓主| 發表於 2012-8-19 00:49:29 | 顯示全部樓層
    我這邊的疑問可能沒有表達得很清楚,這點我先說一下抱歉

    我的意思是說,同樣跟治癒一樣的DB設定

    治癒可以直接點,有效果有資料

    可是我自己設定的技能(跟治癒的設定一樣),卻必須要加上SHIFT才能點取玩家得到資料

    所以現在可能是客戶端的部分,有哪個部分需要對於技能的ID去做特別的設定

    像是物品說明或是物品名稱這類的設定這樣

    但是目前就不知道這個部分是放在哪裡,我有去找過跟SKILL有關的客戶端部分,好像只有查到

    skilltreeview.txt  看起來應該是不同職業可以學的技能
    skillnametable.txt  技能的名稱顯示對照
    skilldesctable2.txt & skilldesctable.txt 技能的詳細說明

    lua files/skillinfo/
    lua files/skillinfoz/
    底下的檔案,看起來跟技能的使用上好像沒有關聯
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-10-4 02:22 AM
  • 簽到天數: 177 天

    連續簽到: 5 天

    [LV.7]常住居民III

    發表於 2012-8-19 10:35:01 | 顯示全部樓層
    我可以很確定的告訴你, 這不是源碼的問題
    回復 支持 反對

    使用道具 舉報

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

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2013-12-28 12:06:41 | 顯示全部樓層
    嘗試過  /noshift 然後再向玩家使用技能 ??
    回復 支持 反對

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2025-4-30 12:58 PM , Processed in 0.068876 second(s), 23 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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