Files
FC1/CryGame/XSystemServer.h
romkazvo 34d6c5d489 123
2023-08-07 19:29:24 +08:00

60 lines
1.6 KiB
C++

//////////////////////////////////////////////////////////////////////
//
// Game Source Code
//
// File: XSystemServer.h
// Description: IXSystem interface for the server.
//
// History:
// - August 8, 2001: Created by Alberto Demichelis
//
//////////////////////////////////////////////////////////////////////
#ifndef GAME_XSYSTEMSERVER_H
#define GAME_XSYSTEMSERVER_H
#if _MSC_VER > 1000
# pragma once
#endif
#include "XSystemBase.h"
#include "IXMLDOM.h"
class CXGame;
class CXServer;
struct ILog;
///////////////////////////////////////////////
/*!Implements a the XSystem for a server.
can be coupled witha CXSystemDummy is a local client exists
*/
class CXSystemServer : public CXSystemBase
{
public:
CXSystemServer(CXServer *pXServer,CXGame *pGame,ILog *pLog);
virtual ~CXSystemServer();
//// IXSystem ///////////////////////////////
void Release();
bool LoadLevel(const char *szLevelDir,const char *szMissionName, bool bEditor);
//bool LoadRespawnPoints();
IEntity* SpawnEntity(class CEntityDesc &ed);
void RemoveEntity(EntityId wID, bool bRemoveNow=false);
void DeleteAllEntities();
void Disconnected(const char *szCause);
bool LoadCharacter(IEntity* pEntity, const char *szModel);
void BindEntity(EntityId idParent,EntityId idChild);
void UnbindEntity(EntityId idParent,EntityId idChild);
bool WriteTeams(CStream &stm);
bool ReadTeams(CStream &stm){return true;}
void AddRespawnPoint(ITagPoint *pt);
virtual void OnSetVar(ICVar *pVar);
/////////////////////////////////////////////
CXServer *m_pXServer;
protected:
virtual void OnReadyToLoadLevel( SMissionInfo &missionInfo );
};
#endif // GAME_XSYSTEMSERVER_H