GrowthMindset Posted July 15, 2022 Share Posted July 15, 2022 (edited) How come print(item) from ModOnEquip outputs the item correctly upon item equip but print(item.prevslot) always outputs nil? And why does print(item) from ModUnequip output nil when the item is right-clicked from the equip slot but outputs the item correctly when it is left-clicked instead? local ENV = env GLOBAL.setfenv(1, GLOBAL) local function ModOnEquip(_, data) if type(data) == "table" and data.eslot and data.item then local item = data.item print(item) print(item.prevslot) end end local function ModOnUnequip(inst, data) if type(data) ~= "table" then return end local item = data.item print(item) end ENV.AddComponentPostInit("playercontroller", function(self) if self.inst ~= ThePlayer then return end self.inst:ListenForEvent("equip", ModOnEquip) self.inst:ListenForEvent("unequip", ModOnUnequip) local OnRemoveFromEntity = self.OnRemoveFromEntity self.OnRemoveFromEntity = function(self, ...) self.inst:RemoveEventCallback("equip", ModOnEquip) self.inst:RemoveEventCallback("unequip", ModOnUnequip) return OnRemoveFromEntity(self, ...) end end) I'm fairly new to modding (have made only one server mod so far, so I'm still analyzing stuff when it comes to client side mods). Can anyone please enlighten me about the above or give me related beginner-friendly guides? Edited July 16, 2022 by GrowthMindset some corrections Link to comment https://forums.kleientertainment.com/forums/topic/141754-mysterious-nil-values/ Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now