=== Player.lua ================================================================== --- Player.lua (revision 23843) +++ Player.lua (local) @@ -31,7 +31,7 @@ -- stuff we need -local _assert, assert, require, setmetatable, tonumber, tostring, pairs, type = _assert, assert, require, setmetatable, tonumber, tostring, pairs, type +local _assert, assert, require, setmetatable, tonumber, tostring, pairs, type, ipairs = _assert, assert, require, setmetatable, tonumber, tostring, pairs, type, ipairs local os = require("os") local math = require("math") @@ -249,9 +249,13 @@ end -- Save old player info - local oldInfo = self.info + local oldInfo = {} + local keys = { 'uuid', 'name', 'model', 'connected', 'power', 'needsUpgrade', 'isUpgrading', 'pin', 'playerName' } + for i, k in ipairs(keys) do + oldInfo[k] = self.info[k] + end + self.info = {} - -- Update player info, cast to fix perl bugs :) self.config = true self.info.uuid = tostring(playerInfo.uuid) @@ -262,6 +266,7 @@ self.info.needsUpgrade = tonumber(playerInfo.player_needs_upgrade) == 1 self.info.isUpgrading = tonumber(playerInfo.player_is_upgrading) == 1 self.info.pin = tostring(playerInfo.pin) + self.info.playerName = tostring(playerInfo.name) self.lastSeen = Framework:getTicks() @@ -303,7 +308,7 @@ end -- Check if the player name has changed - if oldInfo.playerName ~= self.state.playerName then + if oldInfo.playerName ~= self.info.playerName then self.jnt:notify('playerNewName', self, self.info.playerName) end