--[[ ############################################################################## _____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# ___\///////////___________\///___________\/////////_____\///////////_# ############################################################################## S U P E R - V I L L A I N - U I By: Munglunch # ############################################################################## ########################################################## LOCALIZED LUA FUNCTIONS ########################################################## ]]-- --[[ GLOBALS ]]-- local _G = _G; local unpack = _G.unpack; local select = _G.select; local math = _G.math; --[[ MATH METHODS ]]-- local random = math.random; --[[ ########################################################## GET ADDON DATA ########################################################## ]]-- local SVUI_ADDON_NAME, SV = ... local SVLib = LibStub("LibSuperVillain-1.0") local L = SVLib:Lang() local EgoFrame = CreateFrame("Frame", "EgoFrame", UIParent); --[[ ########################################################## LOCAL VARS ########################################################## ]]-- local animReady = true; local playerGUID; --[[ ########################################################## CORE FUNCTIONS ########################################################## ]]-- function EgoFrame:LaunchPopup() self.Model:Show() self.anim[2]:SetOffset(500, -500) self.anim[2]:SetOffset(0, 0) self.anim:Play() self.Model:SetAnimation(74) end local Ego_OnEvent = function(self, event) if event == "ACHIEVEMENT_EARNED" then self:LaunchPopup() else self:LaunchPopup() end end function SV:ToggleEgo() if not SV.db.general.ego then EgoFrame:UnregisterEvent("ACHIEVEMENT_EARNED") EgoFrame:UnregisterEvent("SCREENSHOT_SUCCEEDED") EgoFrame:SetScript("OnEvent", nil) else EgoFrame:RegisterEvent("ACHIEVEMENT_EARNED") EgoFrame:RegisterEvent("SCREENSHOT_SUCCEEDED") EgoFrame:SetScript("OnEvent", Ego_OnEvent) end end local EgoPop_OnUpdate = function(self) self.parent:SetAlpha(0) end local function LoadSVEgo() EgoFrame:SetParent(SV.UIParent) EgoFrame:SetPoint("BOTTOMRIGHT", UIParent, "BOTTOMRIGHT", 0, 0) EgoFrame:SetWidth(500) EgoFrame:SetHeight(500) local model = CreateFrame("PlayerModel", "EgoFrameModel", EgoFrame) model:SetPoint("TOPLEFT",EgoFrame,25,-25) model:SetPoint("BOTTOMRIGHT",EgoFrame,-25,25) model:SetFrameStrata("DIALOG") model:SetPosition(0,0,0) model:SetUnit("player") model:Hide() EgoFrame.Model = model SV.Animate:Slide(EgoFrame, 500, -500, true) EgoFrame:SetAlpha(0) EgoFrame.anim[4]:SetScript("OnFinished", EgoPop_OnUpdate) end SVLib:NewScript(LoadSVEgo)