精華區beta WOW 關於我們 聯絡資訊
(恕刪) 給原po,你完全誤會 SpellID 和 booktype 要填的東西了,SpellID 是技能在法術書裡 的編號,編號的數法從上到下從左到右,先數完基礎那一頁再數 XX 那一頁。抱歉,我 沒玩盜賊,不知道盜賊的基礎下面那一頁是刺殺、戰鬥還是敏銳,如果是刺殺就先數刺 殺,如果是戰鬥就先數戰鬥,如果是敏銳就先數敏銳。至於 booktype ,如果是玩家的 法術書,以 BOOKTYPE_SPELL 表示;如果是寵物的法術書,以 BOOKTYPE_PET 表示。 所以,原po要判斷技能冷血是不是在 cd 中,應該寫 /script if GetSpellCooldown(#1,BOOKTYPE_SPELL)==0 then .... #1 就填冷血的技能編號。請注意,每次學新技能或洗天賦可能會更動冷血在法術書的位 置,最好檢查一下。 備註:這個遊戲的巨集在寫「等於」的判斷式時,要寫兩個等號(==)。 關於這個函數回傳的方式,下面這兩種系統都看得懂 start, duration = GetSpellCooldown(spellID, "bookType") start = GetSpellCooldown(spellID, "bookType") 只寫 GetSpellCooldown(spellID, "bookType") ,它會傳回 start 的值。 其實我到現在還不是很清楚 start 表示的東西,只知道在冷卻時間結束時 start=0 。 以下我家小戰把嗜血、英勇打擊、斬殺以 GetSpellCooldown 函數串連的巨集,希望這 個例子對原po有幫助。 ------程式碼---------------------------------------------------------------- /script c=CastSpellByName if GetSpellCooldown(#2,BOOKTYPE_SPELL)==0 and UnitMana("player")>=30 then c("嗜血") elseif UnitHealth("target")<=20 then c("斬殺") else c("英勇打擊") end #2表示嗜血在法術書的編號。 -- ※ 編輯: gingeryou 來自: 163.29.253.237 (05/23 09:14)
A1pha:喔喔!! 謝謝提醒XD 我常常會漏掉 == XD 05/23 10:30
A1pha:還學到 c=CastSpellByName 這樣的用法XD 05/23 10:38
A1pha:獲益良多 謝謝啦XD 05/23 10:39