PTT推薦

[閒聊] 巨集函式有更新

看板WOW標題[閒聊] 巨集函式有更新作者
OAzenO
(すご-い!)
時間推噓11 推:11 噓:0 →:9

因為突然發現以前正常使用的巨集失效

/cast 太陽光束
/run s,d,e=GetSpellCooldown("太陽光束");
if (s>2 and d>2)
then SendChatMessage("太陽光束CD中:"..SecondsToTime(s+d-GetTime()),ic);
else SendChatMessage("對[%t]施放 <太陽光束>",ic);
end


錯誤訊息寫 GetSpellCooldown 不動作了


查了一下發現11版又更新了函式

https://warcraft.wiki.gg/wiki/Patch_11.0.0/API_changes

雖然看不懂

但搜到了 reddit 這篇 https://reurl.cc/zDl75N

剛好解決了我的需求

簡而言之就是 GetSpellCooldown 更新為 C_Spell.GetSpellCooldown(spell)

回傳值用 C_Spell.GetSpellCooldown(spell).startTime
C_Spell.GetSpellCooldown(spell).duration


所以把原本的巨集改成 (借助ChatGPT幫忙)

/cast 太陽光束
/run cd = C_Spell.GetSpellCooldown("太陽光束");
SCM=SendChatMessage;
if (cd.startTime > 0 and cd.duration > 2)
then local rt = cd.startTime + cd.duration- GetTime();
SCM("光束CD:"..SecondsToTime(rt), "SAY");
else SCM("對[%t] <太陽光束>", "SAY") end;

實測可用

共勉之

(ChatGPT還真方便XD 對寫程式語法來說)

==
編輯.精簡 229字元 記得接成一行

/cast 太陽光束
/run cd=C_Spell.GetSpellCooldown("太陽光束");
SCM=SendChatMessage;
st=cd.startTime;
dt=cd.duration;
if (st > 0 and dt > 2)
then SCM("太陽光束CD還有:"..SecondsToTime(st + dt - GetTime()), "SAY");
else SCM("對[%t] <太陽光束>", "SAY")
end;

--
_ | ◢=▂▃▂
◤▂ ▂◥ ▂≡▂
ー○-○- 竜が我が敵を喰らう! | 龍神の剣を喰え! /"Δ
/\
~胡適 | ~愛因斯坦
ψ \ \◥

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.224.172.28 (臺灣)
PTT 網址

cn09110309/02 23:40快推,不然別人以為我們看不懂XD

PrimeChaoz09/03 00:05所以這個巨集是幹嘛的?斷法巨集嗎

nepholi09/03 00:08施法成功用白頻:對XXX 太陽光束

nepholi09/03 00:10施法失敗用白頻:光束CD:x (還有幾秒)

nepholi09/03 00:17我可能誤會了,如果只是要判斷剩餘冷卻時間應該只要抓dur

nepholi09/03 00:17ation就可以了?請問rt那段的目的是什麼

Hylun09/03 01:19duration是技能完整的cd時間

macheal09/03 02:52超過255個字...

summer1729909/03 03:09太多字最後一段可以不用把end移上去,也比較不洗畫面

cat05joy09/03 12:02應該有UI WA可以取代(?)

scvb09/03 12:31難怪我萬年沒更新的MSBT一直說GetSpellCooldown 這個錯誤

sarevork09/03 12:47msbt不是更新了嗎

hh123yaya09/03 14:24大聲巨集

oldriver09/03 15:13他這個會白字喊話 比較偏向RSA這種ui

ray1212131309/03 15:36starttime是開始時間,duration CD, gettime是你電腦

ray1212131309/03 15:36時間,所以你回推一下就知道為什麼需要rt那段了

ray1212131309/03 15:40reurl.cc/yvYdjO 參考這篇你可以壓點字數

nepholi09/03 16:22看來是我誤會文件寫的duration意思 原來是指完整CD

nepholi09/03 16:23我看完文件以為是剩餘秒數XD 想說為啥要這麼複雜算rt

OAzenO09/03 19:10原來巴哈已經有討論文了 沒想到查巴哈XD

※ 編輯: OAzenO (61.224.172.28 臺灣), 09/03/2024 21:46:16