/// <summary> /// Sets the work room. /// </summary> /// <param name="workRoom">Work room. : NULL means clear the work room, /// note thant it will remeber by brain.</param> private void SetWorkRoom(CSCommon workRoom) { if (m_WorkRoom != workRoom) { if (m_WorkRoom != null) { m_WorkRoom.RemoveWorker(this); if (workRoom == null) { WorkMachine = null; } else { PersonnelSpace ps = workRoom.FindEmptySpace(this); if (ps != null) { ps.m_Person = this; WorkMachine = ps.WorkMachine; HospitalMachine = ps.HospitalMachine; TrainerMachine = ps.TrainerMachine; } workRoom.AddWorker(this); } } else { PersonnelSpace ps = workRoom.FindEmptySpace(this); if (ps != null) { ps.m_Person = this; WorkMachine = ps.WorkMachine; HospitalMachine = ps.HospitalMachine; TrainerMachine = ps.TrainerMachine; } workRoom.AddWorker(this); } m_WorkRoom = workRoom; if (workRoom != null) { Data.m_WorkRoomID = workRoom.ID; } else { Data.m_WorkRoomID = -1; } if (m_NpcCmpt != null) { m_NpcCmpt.WorkEntity = m_WorkRoom; m_NpcCmpt.Work = WorkMachine; m_NpcCmpt.Cure = HospitalMachine; m_NpcCmpt.Trainner = TrainerMachine; } } }