WoWInterface SVN Molinari

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /trunk
    from Rev 8 to Rev 7
    Reverse comparison

Rev 8 → Rev 7

Molinari/Molinari.lua
30,70 → 30,69
 
--]]
 
local milling, prospecting = GetSpellInfo(51005), GetSpellInfo(31252)
local macro = '/cast %s\n/use %s %s'
local tooltip, tooltipHook = GameTooltip
 
local button = CreateFrame('Button', 'Molinari', UIParent, 'SecureActionButtonTemplate AutoCastShineTemplate')
button:RegisterForClicks('LeftButtonUp')
button:RegisterEvent('MODIFIER_STATE_CHANGED')
 
 
for k, v in next, button.sparkles do
v:SetWidth(v:GetWidth() * 3)
v:SetHeight(v:GetHeight() * 3)
end
 
local function tooltipHook(self)
if(self:GetItem() and IsAltKeyDown() and not InCombatLockdown()) then
local text = GameTooltipTextLeft2:GetText()
do
local milling, prospecting = GetSpellInfo(51005), GetSpellInfo(31252)
local macro = '/cast %s\n/use %s %s'
 
if(text and (text == ITEM_MILLABLE or text == ITEM_PROSPECTABLE)) then
local scribe = text == ITEM_MILLABLE
local anchor = GetMouseFocus()
function tooltipHook(self)
if(InCombatLockdown()) then return end
 
button:ClearAllPoints()
button:SetAttribute('macrotext', macro:format(scribe and milling or prospecting, anchor:GetParent():GetID(), anchor:GetID()))
button:SetAllPoints(anchor)
button:Show()
if(self:GetItem() and IsAltKeyDown()) then
local text = GameTooltipTextLeft2:GetText()
 
if(scribe) then
AutoCastShine_AutoCastStart(button, 0.5, 1, 0.5)
else
AutoCastShine_AutoCastStart(button, 1, 0.5, 0.5)
if(text and (text == ITEM_MILLABLE or text == ITEM_PROSPECTABLE)) then
local scribe = text == ITEM_MILLABLE
local anchor = GetMouseFocus()
 
button:ClearAllPoints()
button:SetAttribute('macrotext', macro:format(scribe and milling or prospecting, anchor:GetParent():GetID(), anchor:GetID()))
button:SetAllPoints(anchor)
button:Show()
 
if(scribe) then
AutoCastShine_AutoCastStart(button, 0.5, 1, 0.5)
else
AutoCastShine_AutoCastStart(button, 1, 0.5, 0.5)
end
end
end
end
end
 
function button:MODIFIER_STATE_CHANGED(event, key)
if((key == 'LALT' or key == 'RALT') and self:IsShown()) then
if(InCombatLockdown()) then
self:RegisterEvent('PLAYER_REGEN_DISABLED')
else
self:ClearAllPoints()
self:Hide()
AutoCastShine_AutoCastStop(self)
function button:MODIFIER_STATE_CHANGED(event, key)
if((key == 'LALT' or key == 'RALT') and self:IsShown()) then
if(InCombatLockdown()) then
self:RegisterEvent('PLAYER_REGEN_DISABLED')
else
self:ClearAllPoints()
self:Hide()
AutoCastShine_AutoCastStop(self)
end
end
end
end
 
function button:PLAYER_REGEN_DISABLED(event)
self:UnregisterEvent(event)
function button:PLAYER_REGEN_DISABLED(event)
self:UnregisterEvent(event)
 
self:ClearAllPoints()
self:Hide()
AutoCastShine_AutoCastStop(self)
self:ClearAllPoints()
self:Hide()
AutoCastShine_AutoCastStop(self)
end
end
 
button:SetAttribute('*type*', 'macro')
button:SetFrameStrata('DIALOG')
button:SetScript('OnLeave', function(self) self:Hide() end)
button:SetScript('OnEvent', function(self, event, ...) self[event](self, event, ...) end)
 
GameTooltip:HookScript('OnTooltipSetItem', tooltipHook)
 
-- temporary bugfix for blizzard's bug with secure frames and anchoring
hooksecurefunc('ContainerFrame_GenerateFrame', function(frame, size, id)
if(size ~= 1 and id == 0) then
ContainerFrame1Item1:SetPoint('BOTTOMRIGHT', ContainerFrame1, 'BOTTOMRIGHT', -12, 30)
end
end)
\ No newline at end of file +tooltip:HookScript('OnTooltipSetItem', tooltipHook) \ No newline at end of file