From d6ac41006465d23f68a5bb94e2b2e4a1d8c4cbd8 Mon Sep 17 00:00:00 2001 From: "James D. Callahan III" Date: Sat, 5 Mar 2011 20:39:16 -0600 Subject: [PATCH] Moved player initialization code from core.lua to Player.lua --- Player.lua | 33 ++++++++++++++++++++++++++++++++- core.lua | 38 +------------------------------------- 2 files changed, 33 insertions(+), 38 deletions(-) diff --git a/Player.lua b/Player.lua index ecfcb57..6906f58 100644 --- a/Player.lua +++ b/Player.lua @@ -60,8 +60,23 @@ local A = private.acquire_types local F = private.filter_flags ------------------------------------------------------------------------------- --- Functions +-- Player methods. ------------------------------------------------------------------------------- +function Player:Initialize() + self.faction = UnitFactionGroup("player") + self.Class = select(2, UnitClass("player")) + self:SetProfessions() + + ------------------------------------------------------------------------------- + -- Set the scanned state for all professions to false. + ------------------------------------------------------------------------------- + self.has_scanned = {} + + for profession in pairs(self.professions) do + self.has_scanned[profession] = false + end +end + function Player:HasProperRepLevel(rep_data) if not rep_data then return true @@ -115,6 +130,22 @@ do -- Sets the player's professions. Used when the AddOn initializes and when a profession has been learned or unlearned. function Player:SetProfessions() + if not self.professions then + self.professions = { + [_G.GetSpellInfo(51304)] = false, -- Alchemy + [_G.GetSpellInfo(51300)] = false, -- Blacksmithing + [_G.GetSpellInfo(51296)] = false, -- Cooking + [_G.GetSpellInfo(51313)] = false, -- Enchanting + [_G.GetSpellInfo(51306)] = false, -- Engineering + [_G.GetSpellInfo(45542)] = false, -- First Aid + [_G.GetSpellInfo(51302)] = false, -- Leatherworking + [_G.GetSpellInfo(2656)] = false, -- Smelting + [_G.GetSpellInfo(51309)] = false, -- Tailoring + [_G.GetSpellInfo(51311)] = false, -- Jewelcrafting + [_G.GetSpellInfo(45363)] = false, -- Inscription + [private.runeforging_name] = false, -- Runeforging + } + end local profession_list = self.professions for i in pairs(profession_list) do diff --git a/core.lua b/core.lua index de30d44..6e3fd45 100644 --- a/core.lua +++ b/core.lua @@ -685,43 +685,7 @@ function addon:OnEnable() order = 550, } end - - ------------------------------------------------------------------------------- - -- Initialize the player's data. - ------------------------------------------------------------------------------- - do - Player.faction = UnitFactionGroup("player") - Player["Class"] = select(2, UnitClass("player")) - - ------------------------------------------------------------------------------- - -- Get the player's professions. - ------------------------------------------------------------------------------- - Player.professions = { - [GetSpellInfo(51304)] = false, -- Alchemy - [GetSpellInfo(51300)] = false, -- Blacksmithing - [GetSpellInfo(51296)] = false, -- Cooking - [GetSpellInfo(51313)] = false, -- Enchanting - [GetSpellInfo(51306)] = false, -- Engineering - [GetSpellInfo(45542)] = false, -- First Aid - [GetSpellInfo(51302)] = false, -- Leatherworking - [GetSpellInfo(2656)] = false, -- Smelting - [GetSpellInfo(51309)] = false, -- Tailoring - [GetSpellInfo(51311)] = false, -- Jewelcrafting - [GetSpellInfo(45363)] = false, -- Inscription - [private.runeforging_name] = false, -- Runeforging - } - Player:SetProfessions() - - ------------------------------------------------------------------------------- - -- Set the scanned state for all professions to false. - ------------------------------------------------------------------------------- - Player.has_scanned = {} - - for profession in pairs(Player.professions) do - Player.has_scanned[profession] = false - end - - end -- do + private.Player:Initialize() ------------------------------------------------------------------------------- -- Initialize the SpecialtyTable and AllSpecialtiesTable. -- 1.7.9.5