示例#1
0
文件: vehicle.cpp 项目: jovazxc/samp
void CVehicle::Respawn()
{
	RakServerInterface *pRak = pNetGame->GetRakServer();

	memset(&m_CarModInfo,  0, sizeof (CAR_MOD_INFO));
	m_CarModInfo.iColor0 = m_SpawnInfo.iColor1;
	m_CarModInfo.iColor1 = m_SpawnInfo.iColor2;
	m_matWorld.pos.X = m_SpawnInfo.vecPos.X;
	m_matWorld.pos.Y = m_SpawnInfo.vecPos.Y;
	m_matWorld.pos.Z = m_SpawnInfo.vecPos.Z;
				
	RakNet::BitStream bsVehicle;
	bsVehicle.Write(m_VehicleID);
	pRak->RPC(&RPC_ScrRespawnVehicle , &bsVehicle, HIGH_PRIORITY, 
		RELIABLE, 0, UNASSIGNED_PLAYER_ID, true, false, UNASSIGNED_NETWORK_ID, NULL);
	
	m_bDead = false;
	m_bDeathHasBeenNotified = false;
	m_bHasBeenOccupied = false;
	m_dwLastRespawnedTick = GetTickCount();

	if(pNetGame->GetFilterScripts() && pNetGame->GetGameMode()) {
		pNetGame->GetFilterScripts()->OnVehicleSpawn(m_VehicleID);
		pNetGame->GetGameMode()->OnVehicleSpawn(m_VehicleID);
	}
}
示例#2
0
void CGangZonePool::HideForPlayer(BYTE bytePlayer, WORD wZone)
{
	RakServerInterface* pRak = pNetGame->GetRakServer();
	RakNet::BitStream bsParams;
	bsParams.Write(wZone);
	pRak->RPC(RPC_ScrRemoveGangZone, &bsParams, HIGH_PRIORITY, RELIABLE, 0, pRak->GetPlayerIDFromIndex(bytePlayer), false, false);
}
示例#3
0
void CGangZonePool::FlashForPlayer(BYTE bytePlayer, WORD wZone, DWORD dwColor)
{
	RakServerInterface* pRak = pNetGame->GetRakServer();
	RakNet::BitStream bsParams;
	bsParams.Write(wZone);
	dwColor = RGBA_ABGR(dwColor);
	bsParams.Write(dwColor);
	pRak->RPC(RPC_ScrFlashGangZone, &bsParams, HIGH_PRIORITY, RELIABLE, 0, pRak->GetPlayerIDFromIndex(bytePlayer), false, false);
}