View Single Post
08/28/21, 04:56 PM   #1
Leonardo1123
AddOn Author - Click to view addons
Join Date: Aug 2021
Posts: 19
Unnamed outfits have empty string as name

Hey there!

I'm working on my wardrobe manager mod, and any outfit that has been recently unlocked has an empty string for its name even though its label is "Outfit N." This breaks my code and prevents my LAM dropdowns from populating correctly.

I tried implementing a fix that renamed any unnamed outfits to the label (Outfit N) which got the job done, but the first time that code runs it throws the error listed below. Also below is the relevant code and a link to the project on Github.

Full code

Lua Code:
  1. function LWM:Initialize()
  2.     LWM.vars = ZO_SavedVars:NewCharacterIdSettings("LWMVars", LWM.variableVersion, nil, LWM.default, GetWorldName())
  3.  
  4.     self.inCombat = IsUnitInCombat("player")
  5.     self.inStealth = GetUnitStealthState("player")
  6.  
  7.     for i=1,GetNumUnlockedOutfits() do
  8.         name = GetOutfitName(0, i)
  9.         -- TODO: This throws an error the first time it runs, fix it
  10.         if name == '' then
  11.             RenameOutfit(0, i, "Outfit " .. tostring(i))
  12.         end
  13.         self.allOutfits[i + OUTFIT_OFFSET] = name
  14.     end
  15.     ...
  16. end

Error:
Code:
user:/AddOns/LeonardosWardrobeManager/LeonardosWardrobeManager.lua:112: attempt to index a nil value
stack traceback:
user:/AddOns/LeonardosWardrobeManager/LeonardosWardrobeManager.lua:112: in function 'LeonardosWardrobeManager.OnOutfitRenamed'
|caaaaaa<Locals> event = 131661, response = 0, index = 0 </Locals>|r
  Reply With Quote