SweepyBoop / Sweepy-Boop

My addon to support your arena gameplay!
5 stars 3 forks source link

Error on loading into the game #233

Open werner-jakobsmeier opened 1 week ago

werner-jakobsmeier commented 1 week ago

As soon as one loads into the game greeted with an error and addon doesn't work. /sb will not work. Error from BugSack:

3x ...pyBoop/CooldownTracking/ArenaEnemyBurstTemplates.lua:20: attempt to call upvalue 'GetSpellInfo' (a nil value)
[string "@SweepyBoop/CooldownTracking/ArenaEnemyBurstTemplates.lua"]:20: in function `CreateSweepyIcon'
[string "@SweepyBoop/CooldownTracking/ArenaEnemyBurst.lua"]:233: in function `PremakeOffensiveIcons'
[string "@SweepyBoop/Core.lua"]:288: in function <SweepyBoop/Core.lua:275>
[string "=[C]"]: ?
[string "@BlizzMove/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:66: in function <BlizzMove/Libs/AceAddon-3.0/AceAddon-3.0.lua:61>
[string "@BlizzMove/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:494: in function `InitializeAddon'
[string "@BlizzMove/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:619: in function <BlizzMove/Libs/AceAddon-3.0/AceAddon-3.0.lua:611>

Locals:
unit = "arena1"
spellID = 211319
size = 32
group = true
frame = Frame {
 spellInfo = <table> {
 }
 tex = Texture {
 }
 group = true
 priority = 1
 spellID = 211319
 unit = "arena1"
}
(*temporary) = Texture {
}
(*temporary) = 3
(*temporary) = nil
(*temporary) = 211319
(*temporary) = "attempt to call upvalue 'GetSpellInfo' (a nil value)"
UIParent = UIParent {
 firstTimeLoaded = 1
 Tabs = <table> {
 }
}
NS = <table> {
 HUNTER = "HUNTER"
 WARRIOR = "WARRIOR"
 ROGUE = "ROGUE"
 SPELL_INTERRUPT = "SPELL_INTERRUPT"
 cooldownSpells = <table> {
 }
 CLASSICONSTYLE = <table> {
 }
 UNIT_MAXHEALTH = "UNIT_MAXHEALTH"
 MAX_ARENA_SIZE = 3
 NAME_PLATE_UNIT_ADDED = "NAME_PLATE_UNIT_ADDED"
 addonTitle = "SweepyBoop's Arena Helper"
 exclamation = "|TInterface\OptionsFrame\UI-OptionsFrame-NewFeatureIcon:0:0:0:-1|t"
 SPELL_EMPOWER_END = "SPELL_EMPOWER_END"
 PARTY_KILL = "PARTY_KILL"
 SPELL_DAMAGE = "SPELL_DAMAGE"
 DEMONHUNTER = "DEMONHUNTER"
 SPELL_AURA_APPLIED = "SPELL_AURA_APPLIED"
 SPELL_DISPEL = "SPELL_DISPEL"
 SHAMAN = "SHAMAN"
 MAX_PARTY_SIZE = 6
 UNIT_AURA = "UNIT_AURA"
 DEATHKNIGHT = "DEATHKNIGHT"
 COMBAT_LOG_EVENT_UNFILTERED = "COMBAT_LOG_EVENT_UNFILTERED"
 PRIEST = "PRIEST"
 spellData = <table> {
 }
 SPELL_CAST_SUCCESS = "SPELL_CAST_SUCCESS"
 cooldownResets = <table> {
 }
 SPECID = <table> {
 }
 spellResets = <table> {
 }
 PALADIN = "PALADIN"
 MAGE = "MAGE"
 PLAYER_ENTERING_WORLD = "PLAYER_ENTERING_WORLD"
 DEFAULT_ICON_SIZE = 32
 UNIT_PET = "UNIT_PET"
 isTestMode = false
 DRUID = "DRUID"
 MONK = "MONK"
 UNIT_DIED = "UNIT_DIED"
 UNIT_SPELLCAST_SUCCEEDED = "UNIT_SPELLCAST_SUCCEEDED"
 PLAYER_SPECIALIZATION_CHANGED = "PLAYER_SPECIALIZATION_CHANGED"
 UNIT_HEALTH = "UNIT_HEALTH"
 WARLOCK = "WARLOCK"
 EVOKER = "EVOKER"
 SPELL_CAST_START = "SPELL_CAST_START"
 RESET_FULL = 0
 BAG_UPDATE = "BAG_UPDATE"
 GROUP_ROSTER_UPDATE = "GROUP_ROSTER_UPDATE"
 PLAYER_REGEN_ENABLED = "PLAYER_REGEN_ENABLED"
 PLAYER_TARGET_CHANGED = "PLAYER_TARGET_CHANGED"
 NAME_PLATE_UNIT_REMOVED = "NAME_PLATE_UNIT_REMOVED"
 SPELL_SUMMON = "SPELL_SUMMON"
 UNIT_MAXPOWER = "UNIT_MAXPOWER"
 DURATION_DYNAMIC = "dynamic"
 ARENA_PREP_OPPONENT_SPECIALIZATIONS = "ARENA_PREP_OPPONENT_SPECIALIZATIONS"
 UNIT_POWER_FREQUENT = "UNIT_POWER_FREQUENT"
 UNIT_TARGET = "UNIT_TARGET"
 SPELLCATEGORY = <table> {
 }
 UPDATE_SHAPESHIFT_FORM = "UPDATE_SHAPESHIFT_FORM"
 SPELL_AURA_REMOVED = "SPELL_AURA_REMOVED"
 LOSS_OF_CONTROL_UPDATE = "LOSS_OF_CONTROL_UPDATE"
 HIDETIMEROMNICC = "BoopHideTimer"
 LOSS_OF_CONTROL_ADDED = "LOSS_OF_CONTROL_ADDED"
}
GetSpellInfo = nil
werner-jakobsmeier commented 1 week ago

I think if you could trim down this addon just to show the teammate icons that would be sufficient. Maybe just a standalone for that or fork.

SweepyBoop commented 1 week ago

I think the lua errors are due to wow API update: https://warcraft.wiki.gg/wiki/API_C_Spell.GetSpellInfo C_Spell.GetSpellInfo replaces previous GetSpellInfo

SweepyBoop commented 1 week ago

Just pushed an update, could you check if the LUA errors are gone?

werner-jakobsmeier commented 1 week ago

Hi, I am able to load into the game and dont have an error on load but I can not access the addon settings via /sb but I can access it via the options -> addons screen. This is the error I get when trying to /sb.

1x SweepyBoop/Core.lua:328: attempt to call global 'InterfaceOptionsFrame_OpenToCategory' (a nil value)
[string "@SweepyBoop/Core.lua"]:328: in function `?'
[string "@BlizzMove/Libs/AceConsole-3.0-7/AceConsole-3.0.lua"]:90: in function `?'
[string "@Blizzard_ChatFrameBase/Mainline/ChatFrame.lua"]:5479: in function `ChatEdit_ParseText'
[string "@Blizzard_ChatFrameBase/Mainline/ChatFrame.lua"]:5131: in function `ChatEdit_SendText'
[string "@Blizzard_ChatFrameBase/Mainline/ChatFrame.lua"]:5167: in function `ChatEdit_OnEnterPressed'
[string "*ChatFrame.xml:140_OnEnterPressed"]:1: in function <[string "*ChatFrame.xml:140_OnEnterPressed"]:1>

Locals:
self = <table> {
 modules = <table> {
 }
 baseName = "SweepyBoop"
 defaultModuleState = true
 db = <table> {
 }
 enabledState = true
 name = "SweepyBoop"
 optionsFrame = Frame {
 }
 defaultModuleLibraries = <table> {
 }
 orderedModules = <table> {
 }
}
msg = ""
(*temporary) = nil
(*temporary) = Frame {
 obj = <table> {
 }
 name = "SweepyBoop's Arena Helper"
}
(*temporary) = "attempt to call global 'InterfaceOptionsFrame_OpenToCategory' (a nil value)"
werner-jakobsmeier commented 1 week ago

That being said...it works...oh my...looks so nice. image

SweepyBoop commented 1 week ago

Glad you like the addon! Really appreciate the support and feedback ❤️

For the /sb command error, could you quickly try the following and see if it's resolved? In Core.lua file, change line 328 from InterfaceOptionsFrame_OpenToCategory(self.optionsFrame); to

if Settings and Settings.OpenToCategory then
    Settings.OpenToCategory(self.optionsFrame)
else
    InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end

Apologies that it's hard for me to test in game these days. I'm not actively playing since I'm pre-occupied by my newborn baby.

werner-jakobsmeier commented 1 week ago

ok I made the change but while no more error and it does open the options menu it doesnt open the addon menu but the general game menu: image

change made in the lua file: image

SweepyBoop commented 1 week ago

I see. How about changing that line to this:

if Settings and Settings.OpenToCategory then
    Settings.OpenToCategory(addonName)
else
    InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end
werner-jakobsmeier commented 1 week ago

Updated:

function SweepyBoop:SlashCommand(msg)
    if not msg or msg:trim() == "" then
        if Settings and Settings.OpenToCategory then
        Settings.OpenToCategory(addonName)
    else
            InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
    end
    end
end

result: image

(not a huge deal since we can access the addon settings via the game options addon menu)