19 #ifndef __EntityManager_H__ 20 #define __EntityManager_H__ 24 #include <csgeom/vector3.h> 96 bool LoadMap(
const char* mapname);
98 iSector* FindSector(
const char* name);
100 bool CreatePlayer(
Client* client);
101 bool DeletePlayer(
Client* client);
103 PID CopyNPCFromDatabase(PID master_id,
float x,
float y,
float z,
float angle,
const csString §or,
InstanceID instance,
const char* firstName = NULL,
const char* lastName = NULL);
104 EID CreateNPC(PID npcID,
bool updateProxList =
true,
bool alwaysWatching =
false);
105 EID CreateNPC(
psCharacter* chardata,
bool updateProxList =
true,
bool alwaysWatching =
false);
106 EID CreateNPC(
psCharacter* chardata,
InstanceID instance, csVector3 pos, iSector* sector,
float yrot,
bool updateProxList =
true,
bool alwaysWatching =
false);
114 gemNPC* CreateHiredNPC(
gemActor* owner, PID masterPID,
const csString& name);
123 gemItem* CreateItem(
psItem* iteminstance,
bool transient,
int tribeID = 0);
147 void RemoveRideRelation(
gemActor* rider);
149 void SetReady(
bool flag);
180 bool SendActorList(
Client* client);
183 void CreateMovementInfoMsg();
184 void LoadFamiliarTypes();
185 void LoadFamiliarAffinityAttributes();
187 int CalculateFamiliarAffinity(
psCharacter* chardata,
size_t type,
size_t lifecycle,
size_t attacktool,
size_t attacktype);
213 psGameEvent(0, 0,
"psEntityEvent"), type(type), object(object)
215 this->entitymanager = entitymanager;
224 entitymanager->RemoveActor(
object);
psWorld is in charge of managing all regions (zone map files) and loading/unloading them as needed...
CacheManager * cacheManager
Manages CEL entities on the server.
virtual void Trigger()
Abstract event processing function.
Used to manage incoming user commands from a client.
The structure of 1 queue entry (pointer to a message)
ClientConnectionSet * clients
psMovementInfoMessage * moveinfomsg
Any semi-autonomous object, either a player or an NPC.
psEntityEvent(EntityManager *entitymanager, EventType type, gemObject *object)
csHash< psFamiliarType *, PID > familiarTypeList
This class collects data of a netclient.
void void Initialize(iObjectRegistry *object_reg)
UserManager * usermanager
csHash< psAffinityAttribute * > affinityAttributeList
This class manages the caching of data that is unchanging during server operation.
A gemObject is any solid, graphical object visible in PS with normal physics and normal collision det...
This class holds the refs to the core factories, etc in CEL.
This class stores all the properties of an action location Entrance, return location, name, response type, trigger.
This class is a list of several CLient objects, it's designed for finding clients very fast based on ...
Contains information about sectors from the server perspective.
All scheduled events must inherit from this class.
ClientConnectionSet * GetClients()
This class embodies item instances in the game.
Provides a manager to facilitate subscriptions.