diff --git a/lua/entities/gmod_wire_expression2/core/core.lua b/lua/entities/gmod_wire_expression2/core/core.lua index ddeebbf27d..ec44aa8014 100644 --- a/lua/entities/gmod_wire_expression2/core/core.lua +++ b/lua/entities/gmod_wire_expression2/core/core.lua @@ -217,7 +217,11 @@ e2function number totalCpuUsage() local owner = self.player if not IsValid(owner) then return self.timebench end - return E2Lib.PlayerChips[owner]:getTotalTime() + -- To avoid creating new table + local chips = rawget(E2Lib.PlayerChips, owner) + if not chips then return self.timebench end + + return chips:getTotalTime() end [nodiscard] diff --git a/lua/entities/gmod_wire_expression2/init.lua b/lua/entities/gmod_wire_expression2/init.lua index bd0885b9f8..13d657cebe 100644 --- a/lua/entities/gmod_wire_expression2/init.lua +++ b/lua/entities/gmod_wire_expression2/init.lua @@ -392,9 +392,9 @@ function ENT:OnRemove() end local owner = self.player + local chips = rawget(E2Lib.PlayerChips, owner) - if IsValid(owner) then - local chips = E2Lib.PlayerChips[owner] + if chips then chips:remove(self) if #chips == 0 then