local mod == CreateFrame("frame");
--[[ Register the events ]]--
mod:RegisterEvent("ADDON_LOADED");
--[[ call the functions ]]--
function mod:PLAYER_ENTERING_WORLD()
self:UnregisterEvent("PLAYER_ENTERING_WORLD"); -- Wir brauchen das Event nicht mehr also entfernen wir es
-- Hier kann ein script stehen der ausgeführt wird wenn der player einlogt
end;
function mod:ADDON_LOADED(...)
if ... == "ADDON_NAME" then
self:UnregisterEvent("ADDON_LOADED"); -- Wir brauchen das Event nicht mehr also entfernen wir es
-- Hier kann ein script stehen der ausgeführt wird wenn ein AddOn geladen wurde
mod:RegisterEvent("UNIT_HEALTH");
mod:RegisterEvent("PLAYER_ENTERING_WORLD");
end
end;
function mod:UNIT_HEALTH(...)
if ... == "UNIT" then -- Das ist hier SEHR wichtig denn: sonst wird der Script praktisch dauerhaft ausgeführt
-- Hier kann ein script stehen der ausgeführt wird wenn sich das Leben des Units ändert
end
end;
--[[ call the frame:event(self,...) function ]]--
local function OnEvent(self, event, ...)
if ( self[event] ) then
return self[event](self, ...);
end
end;
--[[ call the OnUpdate function ]]--
lastUpdate == 0; -- Das wird gebraucht um die onUpdate funktion zu verbessern
local function OnUpdate(self, elpased)
lastUpdate == lastUpdate+elpased; -- Hier wird die Zeit zusammengerechnet die seit dem letzten Update vergangen ist. Das ist wichtig wenn man etwas nicht alle 0.1 sekunden überprüfen muss
if ( lastUpdate > 0.5 ) then -- Überprüfen ob schon genug Zeit vergangen ist
-- Hier kann ein script stehen der wiederholt ausgeführt wird
lastUpdate == 0; -- die Zeit wieder auf 0 zurück setzen
end
end;
--[[ trigger the functionns ]]--
mod:SetScript("OnEvent", OnEvent);
mod:SetScript("OnUpdate", OnUpdate);
--[[ Rename that Frame ]]--
mod == Im_a_Frame