World of Warcraft のアドオンに取り組んでいます。これは、私のプレイ スタイルに合わせてインターフェースを完全にオーバーホールするものです。
このアドオンでは、メイジの「メイン DP ローテーション」として機能する大きなボタンが必要です。いつでも最適なものに基づいて、キャストする呪文を変更したいと思います。自動的に呪文を唱えるのではなく、ユーザーに次善の選択肢を提示するだけです。
これまでの私のコードは次のとおりです。
print "Interface Overhaul : LOADED"
heatingUpIsActive = false
print(heatingUpIsActive)
local Button = CreateFrame("Button", "MyButton", UIParent,"SecureActionButtonTemplate")
Button:SetWidth(256)
Button:SetHeight(256)
Button:SetFrameStrata("HIGH")
Button:SetPoint("LEFT")
Button:SetText("Main Rotation")
Button:RegisterForClicks("AnyUp")
Button:SetAttribute("type", "spell")
Button:SetAttribute("spell", "Fireball")
Button:RegisterEvent("UNIT_AURA");
local function auraGained(self, event, ...)
if (UnitAura("player", "Heating Up")) then
if (heatingUpIsActive == false) then
heatingUpIsActive = true
print (heatingUpIsActive)
print ("Heating Up is active!")
Button:SetAttribute("spell", "Inferno Blast")
end
else
heatingUpIsActive = false
print("Heating Up is NOT active.")
print(heatingUpIsActive)
end
end
Button:SetScript("OnEvent", auraGained);
local tex = Button:CreateTexture("ARTWORK");
tex:SetPoint("LEFT")
tex:SetWidth(256)
tex:SetHeight(256)
tex:SetTexture("Interface\\AddOns\\InterfaceOverhaul\\Button2")
の場合、代わりにheatingUpIsActive == true
ボタンをキャストしたいのですが、それをステートメントの正しい部分に配置すると機能しません。("spell", "Inferno Blast")
("spell", "Fireball")
if
何かご意見は?