Either the trunk on sourceforge is seriously screwed. Or somehow miraculously they implemented some sort of other entity/zone (aka Sector in CS terms) manager that uses the name CEL.
bool psCelClient::Initialize(iObjectRegistry* object_reg,
MsgHandler* newmsghandler,
ZoneHandler *zonehndlr)
{
this->object_reg = object_reg;
entityLabels = new psEntityLabels();
entityLabels->Initialize(object_reg, this);
shadowManager = new psShadowManager();
vfs = csQueryRegistry<iVFS> (object_reg);
if (!vfs)
{
return false;
}
zonehandler = zonehndlr;
msghandler = newmsghandler;
msghandler->Subscribe( this, MSGTYPE_CELPERSIST);
msghandler->Subscribe( this, MSGTYPE_PERSIST_WORLD );
msghandler->Subscribe( this, MSGTYPE_PERSIST_ACTOR );
msghandler->Subscribe( this, MSGTYPE_PERSIST_ITEM );
msghandler->Subscribe( this, MSGTYPE_PERSIST_ACTIONLOCATION );
msghandler->Subscribe( this, MSGTYPE_REMOVE_OBJECT );
msghandler->Subscribe( this, MSGTYPE_NAMECHANGE );
msghandler->Subscribe( this, MSGTYPE_GUILDCHANGE );
msghandler->Subscribe( this, MSGTYPE_GROUPCHANGE );
msghandler->Subscribe( this, MSGTYPE_STATS );
clientdr = new psClientDR;
if (!clientdr->Initialize(object_reg, this, msghandler ))
{
delete clientdr;
clientdr = NULL;
return false;
}
CEL is what handles 90% of the functionality of PS... CS is just the rendering engine...
That is unless your including the CEL libraries and using its functions for no general purpose what so ever O_O
And btw...
void psClientDR::HandleStatsUpdate( MsgEntry* me )
{
psStatDRMessage statdrmsg(me);
GEMClientActor* gemObject = (GEMClientActor*)psengine->GetCelClient()->FindObject( statdrmsg.entityid );
if (!gemObject)
{
Error2("Stat request failed because CelClient not ready for %d",statdrmsg.entityid);
return;
}Its calling a DR because something got corrupted (most likely a map file since i was getting the same sort of message when i was making maps for PS a while back).