class AlluvionNPC: def __init__ (self, celEntity): print "Initializing npc...", celEntity.Name self.ent = celEntity self.goals = list () self.actions = list () # get or create linmove self.linmove = celLinearMovement (celEntity) # set timer if there is not one self.timer = celGetTimer (celEntity) if not self.timer: self.timer = celAddTimer (celEntity) self.timer.WakeUp (500, True) # check for mesh self.mesh = celGetMesh (celEntity) if self.mesh: self.meshobj = self.mesh.Mesh self.spr3dstate = SCF_QUERY_INTERFACE (self.meshobj.GetMeshObject (), iSprite3DState) if self.spr3dstate: self.spr3dstate.SetAction ("stand") else: self.spr3dstate = None # Add an initial goal self.addGoal (self.DestinationGoal (self, 1, Entities['camera'])) # Mesh select stuff in progress self.pcmeshsel = celAddMeshSelect (celEntity) self.pccamera = celGetCamera (Entities['camera']) self.pcmeshsel.SetCamera (self.pccamera) def real_init (self, celEntity, room): pass def pcmeshsel_down (self, celEntity, args): print "In pcmeshsel_down"