Esempio n. 1
0
void
CTower::Deinitialise()
{
	CEventTarget::Deregister(EVENTSUBJECT_ENEMYDEATH);
	CEventTarget::Deregister(EVENTSUBJECT_ENEMYLASTWAYPOINT);

	FW_ADELETE(m_kcpTowerType);

	FW_DELETE(m_pWeapon);
	FW_ADELETE(m_ppTargetEnemy);
	FW_DELETE(m_pObjTracker);
	FW_DELETE(m_pObjTower);
	FW_ADELETE(m_cpSndFire);

	FW_DELETEVECTOR(char*, m_vecUpgradeTowerTypes);
}
Esempio n. 2
0
bool CD10VertexBuffer::Initiailise(const TDesc& _ktrBufferDesc)
{
	m_ePrimitiveType = _ktrBufferDesc.ePrimitiveType;
	m_eUsage = _ktrBufferDesc.eUsage;
	m_uiCapacity = _ktrBufferDesc.uiNumVertices;
	m_uiStride = _ktrBufferDesc.uiStride;

	bool bReturn = false;

	D3D10_BUFFER_DESC tVertexBufferDesc;
	FW_MEMZERO(&tVertexBufferDesc, sizeof(D3D10_BUFFER_DESC));
	tVertexBufferDesc.ByteWidth  = _ktrBufferDesc.uiNumVertices;
	tVertexBufferDesc.ByteWidth *= _ktrBufferDesc.uiStride;
	tVertexBufferDesc.BindFlags = D3D10_BIND_VERTEX_BUFFER;

	switch (_ktrBufferDesc.eUsage)
	{
	case USAGE_STATIC:
		tVertexBufferDesc.Usage = D3D10_USAGE_DEFAULT;
		break;

	case USAGE_DYNAMIC:
		tVertexBufferDesc.Usage = D3D10_USAGE_DYNAMIC;
		tVertexBufferDesc.CPUAccessFlags = D3D10_CPU_ACCESS_WRITE;
		break;

	case USAGE_STAGING:
		tVertexBufferDesc.Usage = D3D10_USAGE_STAGING;
		tVertexBufferDesc.CPUAccessFlags = D3D10_CPU_ACCESS_WRITE;
		break;

	default:
		DEBUG_ERROR("Invalid usage flag");
		break;
	}

	D3D10_SUBRESOURCE_DATA tSubresourceDesc;
	FW_MEMZERO(&tSubresourceDesc, sizeof(D3D10_SUBRESOURCE_DATA));

	if (_ktrBufferDesc.kpInitialData == 0)
	{
		tSubresourceDesc.pSysMem = new char[tVertexBufferDesc.ByteWidth];
	}
	else
	{
		tSubresourceDesc.pSysMem = _ktrBufferDesc.kpInitialData;
	}

	m_rD10Renderer.CreateBuffer(tVertexBufferDesc, tSubresourceDesc, m_pVertexBuffer);

	if (_ktrBufferDesc.kpInitialData == 0)
	{
		FW_DELETE(tSubresourceDesc.pSysMem);
	}

	return (true);
}
Esempio n. 3
0
void 
CRakMasterServer::UnregisterServer(uint64& _ui64rServerGuid)
{
	std::map<uint64, TServerDetails*>::iterator Entry = m_mRegisteredServers.find(_ui64rServerGuid);


	FW_DELETE(Entry->second);


	m_mRegisteredServers.erase(Entry);
}
Esempio n. 4
0
CTower::~CTower()
{
	Deinitialise();


	//Remove reff
	-- s_uiTowerReffCount;


	//Check if this was the last instance
	if (s_uiTowerReffCount == 0)
	{
		//Delete tower ini parser
		FW_DELETE(s_pTowerIniParser);
	}
}
Esempio n. 5
0
void CApplication::ExecuteSceneChange()
{
	if (m_pChangeToScene == null)
		return;

	// Delete current scene
	FW_DELETE(m_pCurrentScene);

	// Set new current scene and initialise
	m_pCurrentScene = m_pChangeToScene;
	m_pCurrentScene->Initialise(m_pChangeToSceneData);

	// Cleanup
	m_pChangeToScene		= null;
	m_pChangeToSceneData	= null;
}
Esempio n. 6
0
void
CInputManager::Deinitialise()
{
	FW_DELETE(m_pXInputController);
	FW_DELETE(m_pDirectInput);
}
Esempio n. 7
0
CRakMasterServer::~CRakMasterServer()
{
	FW_DELETE(m_pRnPeer);
}
Esempio n. 8
0
CApplication::~CApplication()
{
	s_pInstance = 0;

	FW_DELETE(m_pCurrentScene);
}