Ejemplo n.º 1
0
CGameServer::~CGameServer()
{
	GameNetwork()->SetCallbacks(NULL, NULL, NULL, NULL);

	if (m_pWorkListener)
		m_pWorkListener->BeginProgress();

	if (m_pWorkListener)
		m_pWorkListener->SetAction("Scrubbing database", CBaseEntity::GetEntityRegistration().size());

	DestroyAllEntities(tvector<tstring>());

	GamePhysics()->RemoveAllEntities();

	for (size_t i = 0; i < m_apLevels.size(); i++)
		m_apLevels[i].reset();

	if (m_pCameraManager)
		delete m_pCameraManager;

	if (m_pWorkListener)
		m_pWorkListener->EndProgress();

	TAssert(s_pGameServer == this);
	s_pGameServer = NULL;
}
Ejemplo n.º 2
0
void CGameServer::Initialize()
{
	if (m_pWorkListener)
		m_pWorkListener->BeginProgress();

	m_bGotClientInfo = false;
	m_bLoading = true;

	TMsg("Initializing game server\n");

	ReadLevels();

	GameNetwork()->ClearRegisteredFunctions();

	RegisterNetworkFunctions();

	DestroyAllEntities(tvector<tstring>(), true);

	CParticleSystemLibrary::ClearInstances();

	if (!m_pCameraManager)
		m_pCameraManager = new CCameraManager();

	if (m_pWorkListener)
		m_pWorkListener->EndProgress();

	if (m_pWorkListener)
		m_pWorkListener->SetAction("Pending network actions", 0);
}
Ejemplo n.º 3
0
void CGameServer::RestartLevel()
{
	SetLoading(false);
	AllowPrecaches();
	DestroyAllEntities(tvector<tstring>(), true);
	m_bRestartLevel = true;
	Game()->SetupGame(CVar::GetCVarValue("game_mode"));
	m_bRestartLevel = false;
	SetLoading(false);
}
// Destructor removes all entities
CEntityManager::~CEntityManager()
{
	DestroyAllEntities();
}
Ejemplo n.º 5
0
		VIRTUAL void EntityPlugin::Exit()
		{
			DestroyAllEntities();
		}