[閒聊] 體會到一個看過的梗...

作者: deathson (小米)   2023-11-24 19:09:17
"My code doesn't work, I don't know why.
My code works, I don't know why."
-=-=
最近在嘗試寫一個WA觸發: 當第一個WA"不"觸發的時候, 觸發第二個WA
(然後當第一個WA觸發的時候, 把第二個WA關掉)
-=-=
找了別人寫的東西
最接近的是(不過他是要第一個WA觸發的時候觸發第二個WA):
他的做法是在第一個WA的Actions頁面
On Show - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", true)
On Hide - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", false)
然後在第二個WA的Trigger頁面
Trigger 1: Custom
Event Type: Event
Event(s): MY_EVENT_NAME
Custom Trigger:
function(event, status)
return status
end
-=-=
我試了這個, 把這改成
在第一個WA的Actions頁面
On Show - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", false)
On Hide - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", true)
然後在第二個WA的Trigger頁面
Trigger 1: Custom
Event Type: Event
Event(s): MY_EVENT_NAME
Custom Trigger:
function(event, status)
return status
end
結果雖然第一個WA會根據本身的觸發正常開關
第二個WA也會正常的在第一個WA關掉的時候開起來
可是第二個WA在第一個WA開起來的時候卻不會關掉
-=-=
我後來改成把第一個WA的Actions頁面
On Show - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", Close)
On Hide - Custom: WeakAuras.ScanEvents("MY_EVENT_NAME", true)
第二個WA的Trigger頁面改成
Trigger 1: Custom
Event Type: Event
Event(s): MY_EVENT_NAME
Custom Trigger:
function(event, status)
return status
end
Custom Untrigger:
function (event, Close)
if event == "Close" then
return true
end
(然後WA還回了說我這段code有錯的訊息:
[string "return function (event, Close)"]:4: 'end' expected (to close
'function' at line 1) near '<eof>')
結果這樣改完後反而可以正常照我想的動了
...WHY!????????????
-=-=
總之 分享給有寫WA的人參考一下orz
作者: BigCat   2023-11-24 19:12:00
推個文證明原po有來問過能不能發,我是覺得以不違反規章為前提的話倒是沒什麼好不能發的,這樣
作者: reaturn (廿年後回頭看台灣)   2023-11-24 19:45:00
不知道丟給GPT能不能幫你完善
作者: gp671112 (阿凱)   2023-11-24 21:38:00
佩服下班還能寫扣的人0.0
作者: wayne2002323 (蔡先生)   2023-11-24 21:51:00
if 那段是不是還要一個end?
作者: deathson (小米)   2023-11-25 00:25:00
下面那個錯誤應該就是這問題 多謝(_ _)...可是為什麼還是能動?
作者: BRIANKUO (OuO)   2023-11-25 07:19:00
我反而覺得你寫在同一個WA會簡單很多
作者: sniper2824 (月夜)   2023-11-25 09:06:00
何必分成兩個?
作者: garlic1234 (蒜頭)   2023-11-25 12:27:00
如果能動就不要動他
作者: hdcc (yeo)   2023-11-25 12:42:00
有沒有知道他在說啥?
作者: SPAEK (小雞)   2023-11-25 13:25:00
大概就不知道怎寫 拿別人的抄 再發揮智慧改成功 很開心吧我理解 我的WA也是從抄起家 然後用破英文理解去改
作者: ioylye (v(゜Д。)v)   2023-11-26 12:51:00
快買一包乖乖保佑那個WA (誤
作者: treecko   2023-11-27 18:21:00
因為trigger回傳true時會觸發 但回傳false時不會取消觸發而是去call untrigger判斷是否要取消觸發https://reurl.cc/Nye3pehttps://reurl.cc/OjWdpR至於寫錯為什麼會動 大概是因為有檢查給預設值吧可能是這段? https://i.imgur.com/Qiu7zFo.png
作者: deathson (小米)   2023-11-28 09:53:00
感謝資訊 我會再研究看看(_ _)

Links booklink

Contact Us: admin [ a t ] ucptt.com