19 #ifndef HIRE_MANAGER_HEADER    20 #define HIRE_MANAGER_HEADER    25 #include <csutil/list.h>   144     bool AllowedToHire(
gemActor* owner);
   164     HireSession* GetSessionByPIDs(PID ownerPID, PID hiredPID);
   168     void RemovePendingHire(
gemActor* owner);
   176     bool ValidateScript(PID ownerPID, PID hiredPID, 
const csString &script, csString &errorMessage);
   180     bool HandleScriptMessageCommit(uint32_t clientnum, PID ownerPID, PID hiredPID);
   184     bool CancelScript(PID ownerPID, PID hiredPID);
   192     Location* CreateUpdateLocation(
const char* type, 
const char* name,
   193                                    iSector* sector, 
const csVector3 &position, 
float angle);
   197     csList<HireSession*> hires; 
   199     csHash<HireSession*,PID> pendingHires; 
 The Hire Sessin will manage all aspects related to a specefic hiring of a NPC. 
 
bool SetHireType(gemActor *owner, const csString &name, const csString &npcType)
Set the type of NPC to hire for a pending hire. 
 
bool CheckWorkLocationResult(gemNPC *hiredNPC, bool valid, const char *errorMessage)
Result from work location check. 
 
bool Initialize()
Initialize the Hire Manager. 
 
bool ReleaseHire(gemActor *owner, gemNPC *hiredNPC)
Release the hire. 
 
bool AddOwner(gemActor *owner)
Register an owner with the hire manager. 
 
virtual ~HireManager()
Destructor. 
 
bool AddHiredNPC(gemNPC *hiredNPC)
Register a hired NPC with the hire manager. 
 
The structure of 1 queue entry (pointer to a message) 
 
HireManager()
Constructor. 
 
Any semi-autonomous object, either a player or an NPC. 
 
bool HandleScriptMessageRequest(uint32_t clientnum, gemActor *owner, gemNPC *hiredNPC)
Start Scripting the hire. 
 
This class collects data of a netclient. 
 
The Hire Manager will manage all aspects related to hiring of NPCs. 
 
bool SetHireMasterPID(gemActor *owner, PID masterPID)
Set the PID of the master NPC to use when hiring for a pending hire. 
 
A Location is a named place on the map, located dynamically by NPCs as scripted. 
 
gemActor * ConfirmHire(gemActor *owner)
Confirm the hire. 
 
bool StartHire(gemActor *owner)
Start a new Hire Session. 
 
Provides a manager to facilitate subscriptions.