Mercurial > wow > degaine
comparison Degaine.lua @ 11:62abf847fef9
Cosmetic : remove unneeded ';'
| author | contrebasse |
|---|---|
| date | Fri, 10 Dec 2010 16:55:44 +0100 |
| parents | 37ac0d31cf0e |
| children | 9f8a4f3c8641 |
comparison
equal
deleted
inserted
replaced
| 10:37ac0d31cf0e | 11:62abf847fef9 |
|---|---|
| 4 -- Known bugs : | 4 -- Known bugs : |
| 5 -- If you stand up by jumping or walking it won't draw your weapon | 5 -- If you stand up by jumping or walking it won't draw your weapon |
| 6 -- (it's not possible to know if you were sitting or standing before) | 6 -- (it's not possible to know if you were sitting or standing before) |
| 7 | 7 |
| 8 --@debug@ | 8 --@debug@ |
| 9 local debug = false; | 9 local debug = false |
| 10 --@end-debug@ | 10 --@end-debug@ |
| 11 | 11 |
| 12 --------------------------------------------------------------- | 12 --------------------------------------------------------------- |
| 13 -- Globals to local | 13 -- Globals to local |
| 14 --------------------------------------------------------------- | 14 --------------------------------------------------------------- |
| 44 -- Bindings | 44 -- Bindings |
| 45 BINDING_HEADER_DEGAINE = "Dégainer automatiquement" | 45 BINDING_HEADER_DEGAINE = "Dégainer automatiquement" |
| 46 | 46 |
| 47 -- Print status | 47 -- Print status |
| 48 local printState = function() | 48 local printState = function() |
| 49 DEFAULT_CHAT_FRAME:AddMessage(Degaine_isAuto and "Dégainage automatique |cFF00FF00activé|r" or "Dégainage automatique |cFFFF0000désactivé|r"); | 49 DEFAULT_CHAT_FRAME:AddMessage(Degaine_isAuto and "Dégainage automatique |cFF00FF00activé|r" or "Dégainage automatique |cFFFF0000désactivé|r") |
| 50 end | 50 end |
| 51 | 51 |
| 52 | 52 |
| 53 --------------------------------------------------------------- | 53 --------------------------------------------------------------- |
| 54 -- Events config | 54 -- Events config |
| 55 --------------------------------------------------------------- | 55 --------------------------------------------------------------- |
| 56 -- Events to watch | 56 -- Events to watch |
| 57 local events = { -- no args to watch | 57 local events = { -- no args to watch |
| 58 GOSSIP_SHOW = true, | 58 GOSSIP_SHOW = true, |
| 59 MERCHANT_SHOW = function() return GossipFrame:IsShown(); end, | 59 MERCHANT_SHOW = function() return GossipFrame:IsShown() end, |
| 60 BANKFRAME_OPENED = true, --function() return GossipFrame:IsShown(); end, | 60 BANKFRAME_OPENED = true, --function() return GossipFrame:IsShown() end, |
| 61 AUCTION_HOUSE_SHOW = true, | 61 AUCTION_HOUSE_SHOW = true, |
| 62 } | 62 } |
| 63 local SpellBlacklist = { | 63 local SpellBlacklist = { |
| 64 [1784] = true, -- Stealth (Rogue) | 64 [1784] = true, -- Stealth (Rogue) |
| 65 [58984] = true, -- Shadowmeld (Nightelf stealth) | 65 [58984] = true, -- Shadowmeld (Nightelf stealth) |
| 81 --------------------------------------------------------------- | 81 --------------------------------------------------------------- |
| 82 -- Wait a few seconds before drawing, to be able to see the curren animation (and avoid bugs) | 82 -- Wait a few seconds before drawing, to be able to see the curren animation (and avoid bugs) |
| 83 local Degaine_OnUpdate = function(self,t_elapsed) | 83 local Degaine_OnUpdate = function(self,t_elapsed) |
| 84 t_left = t_left - t_elapsed; | 84 t_left = t_left - t_elapsed; |
| 85 if t_left<=0 then | 85 if t_left<=0 then |
| 86 ToggleSheath(); | 86 ToggleSheath() |
| 87 DegaineFrame:SetScript("OnUpdate", nil); | 87 DegaineFrame:SetScript("OnUpdate", nil) |
| 88 end | 88 end |
| 89 end | 89 end |
| 90 local start = function() | 90 local start = function() |
| 91 if Degaine_isAuto and not InCombatLockdown() then | 91 if Degaine_isAuto and not InCombatLockdown() then |
| 92 t_left = delay | 92 t_left = delay |
| 93 DegaineFrame:SetScript("OnUpdate", Degaine_OnUpdate); | 93 DegaineFrame:SetScript("OnUpdate", Degaine_OnUpdate) |
| 94 end | 94 end |
| 95 end | 95 end |
| 96 | 96 |
| 97 --------------------------------------------------------------- | 97 --------------------------------------------------------------- |
| 98 -- Activation functions | 98 -- Activation functions |
| 101 if (not Degaine_isAuto) or InCombatLockdown() then return end | 101 if (not Degaine_isAuto) or InCombatLockdown() then return end |
| 102 | 102 |
| 103 --DegaineFrame:SetScript("OnUpdate", Degaine_OnUpdate); | 103 --DegaineFrame:SetScript("OnUpdate", Degaine_OnUpdate); |
| 104 --@debug@ | 104 --@debug@ |
| 105 if debug then | 105 if debug then |
| 106 DegaineFrame:RegisterAllEvents(); | 106 DegaineFrame:RegisterAllEvents() |
| 107 else | 107 else |
| 108 --@end-debug@ | 108 --@end-debug@ |
| 109 for k,v in pairs(events) do DegaineFrame:RegisterEvent(k); end | 109 for k,v in pairs(events) do DegaineFrame:RegisterEvent(k) end |
| 110 for k,v in pairs(events1player) do DegaineFrame:RegisterEvent(k); end | 110 for k,v in pairs(events1player) do DegaineFrame:RegisterEvent(k) end |
| 111 for k,v in pairs(events2playername) do DegaineFrame:RegisterEvent(k); end | 111 for k,v in pairs(events2playername) do DegaineFrame:RegisterEvent(k) end |
| 112 --@end-debug@ | 112 --@end-debug@ |
| 113 end | 113 end |
| 114 --@end-debug@ | 114 --@end-debug@ |
| 115 end | 115 end |
| 116 local desactivate = function() | 116 local desactivate = function() |
| 117 for k,v in pairs(events) do DegaineFrame:UnregisterEvent(k); end | 117 for k,v in pairs(events) do DegaineFrame:UnregisterEvent(k) end |
| 118 for k,v in pairs(events1player) do DegaineFrame:UnregisterEvent(k); end | 118 for k,v in pairs(events1player) do DegaineFrame:UnregisterEvent(k) end |
| 119 for k,v in pairs(events2playername) do DegaineFrame:UnregisterEvent(k); end | 119 for k,v in pairs(events2playername) do DegaineFrame:UnregisterEvent(k) end |
| 120 DegaineFrame:SetScript("OnUpdate", nil); | 120 DegaineFrame:SetScript("OnUpdate", nil) |
| 121 end | 121 end |
| 122 Degaine_ToggleAuto = function() | 122 Degaine_ToggleAuto = function() |
| 123 if Degaine_isAuto then | 123 if Degaine_isAuto then |
| 124 Degaine_isAuto = false | 124 Degaine_isAuto = false |
| 125 desactivate() | 125 desactivate() |
| 136 --------------------------------------------------------------- | 136 --------------------------------------------------------------- |
| 137 local Degaine_OnEvent = function(self,event, arg1, arg2, ...) | 137 local Degaine_OnEvent = function(self,event, arg1, arg2, ...) |
| 138 --@debug@ | 138 --@debug@ |
| 139 if debug then | 139 if debug then |
| 140 DEFAULT_CHAT_FRAME:AddMessage(event) | 140 DEFAULT_CHAT_FRAME:AddMessage(event) |
| 141 if arg1 then DEFAULT_CHAT_FRAME:AddMessage("arg1 = "..arg1); end | 141 if arg1 then DEFAULT_CHAT_FRAME:AddMessage("arg1 = "..arg1) end |
| 142 if arg2 then DEFAULT_CHAT_FRAME:AddMessage("arg2 = "..arg2); end | 142 if arg2 then DEFAULT_CHAT_FRAME:AddMessage("arg2 = "..arg2) end |
| 143 end | 143 end |
| 144 --@end-debug@ | 144 --@end-debug@ |
| 145 | 145 |
| 146 if ((events[event] and (type(events[event])~="function" or events[event]())) | 146 if ((events[event] and (type(events[event])~="function" or events[event]())) |
| 147 or (events1player[event] and arg1=="player") | 147 or (events1player[event] and arg1=="player") |
| 155 | 155 |
| 156 elseif event == "ADDON_LOADED" and arg1==AddonName then | 156 elseif event == "ADDON_LOADED" and arg1==AddonName then |
| 157 if Degaine_isAuto==nil then | 157 if Degaine_isAuto==nil then |
| 158 Degaine_isAuto = true | 158 Degaine_isAuto = true |
| 159 end | 159 end |
| 160 if Degaine_isAuto then activate(); else desactivate(); end | 160 if Degaine_isAuto then activate() else desactivate() end |
| 161 printState() | 161 printState() |
| 162 | 162 |
| 163 -- Not needed anymore | 163 -- Not needed anymore |
| 164 DegaineFrame:UnregisterEvent("ADDON_LOADED") | 164 DegaineFrame:UnregisterEvent("ADDON_LOADED") |
| 165 end | 165 end |
