def addCharacter(self, char): player = self.player char.charInfo = CharacterInfo(char) m = Mob(char.spawn, player.zone, player, char) m.simObject = player.simObject m.charIndex = len(self.members) char.mob = m self.members.append(char) self.charInfos[m.charIndex] = char.charInfo for item in char.items: if item.slot == RPG_SLOT_CURSOR: player.cursorItem = item # catch any items in character cursor_slot # Assign cursor item to current character to avoid # confusion and any item handling problems. player.cursorItem.setCharacter(player.curChar) player.updateCursorItem(None) break player.zone.simAvatar.mind.callRemote("addPlayerMobInfo", player.simObject.id, m.mobInfo, char.spawn.getSpawnInfo()) player.zone.activeMobs.append(m) if char.dead: player.zone.detachMob(m) player.restoreTradeItems() player.rootInfo = RootInfo(player, self.charInfos) player.mind.callRemote("setRootInfo", player.rootInfo) player.updateKOS()
def addCharacter(self,char): player = self.player char.charInfo = CharacterInfo(char) m = Mob(char.spawn,player.zone,player,char) m.simObject = player.simObject m.charIndex = len(self.members) char.mob = m self.members.append(char) self.charInfos[m.charIndex] = char.charInfo for item in char.items: if item.slot == RPG_SLOT_CURSOR: player.cursorItem = item # catch any items in character cursor_slot # Assign cursor item to current character to avoid # confusion and any item handling problems. player.cursorItem.setCharacter(player.curChar) player.updateCursorItem(None) break player.zone.simAvatar.mind.callRemote("addPlayerMobInfo",player.simObject.id,m.mobInfo,char.spawn.getSpawnInfo()) player.zone.activeMobs.append(m) if char.dead: player.zone.detachMob(m) player.restoreTradeItems() player.rootInfo = RootInfo(player,self.charInfos) player.mind.callRemote("setRootInfo",player.rootInfo) player.updateKOS()