本文整理汇总了C++中CNetworkVehicle::SetSpawnRotation方法的典型用法代码示例。如果您正苦于以下问题:C++ CNetworkVehicle::SetSpawnRotation方法的具体用法?C++ CNetworkVehicle::SetSpawnRotation怎么用?C++ CNetworkVehicle::SetSpawnRotation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CNetworkVehicle
的用法示例。
在下文中一共展示了CNetworkVehicle::SetSpawnRotation方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: RespawnVehicle
void RespawnVehicle( RakNet::BitStream * pBitStream, RakNet::Packet * pPacket )
{
// Read the vehicle id
EntityId vehicleId;
pBitStream->ReadCompressed( vehicleId );
// Read the spawn position
CVector3 vecPosition;
pBitStream->Read( vecPosition );
// Read teh spawn rotation
CVector3 vecRotation;
pBitStream->Read( vecRotation );
// Get a pointer to the network vehicle
CNetworkVehicle * pNetworkVehicle = pCore->GetVehicleManager()->Get( vehicleId );
// Is the vehicle pointer valid?
if( pNetworkVehicle )
{
// Set the spawn position
pNetworkVehicle->SetSpawnPosition( CVector3( vecPosition.fX, vecPosition.fY, (vecPosition.fZ - 1.0f) ) );
// Set the spawn rotation
pNetworkVehicle->SetSpawnRotation( vecRotation );
// Handle the respawn with the vehicle
pNetworkVehicle->HandleRespawn();
}
}
示例2: SpawnVehicle
void SpawnVehicle( RakNet::BitStream * pBitStream, RakNet::Packet * pPacket )
{
// Read the vehicle id
EntityId vehicleId;
pBitStream->ReadCompressed( vehicleId );
// Read the spawn position
CVector3 vecPosition;
pBitStream->Read( vecPosition );
// Read teh spawn rotation
CVector3 vecRotation;
pBitStream->Read( vecRotation );
// Get a pointer to the network vehicle
CNetworkVehicle * pNetworkVehicle = pCore->GetVehicleManager()->Get( vehicleId );
// Is the vehicle pointer valid?
if( pNetworkVehicle )
{
// Is the vehicle not already spawned?
if( !pNetworkVehicle->IsSpawned() )
{
// Set the spawn position
pNetworkVehicle->SetSpawnPosition( vecPosition );
// Set the spawn rotation
pNetworkVehicle->SetSpawnRotation( vecRotation );
// Create the vehicle
pNetworkVehicle->Create();
// Read the occupant count
int iTotalOccupants;
pBitStream->Read( iTotalOccupants );
#ifdef DEBUG
CLogFile::Printf( "(SpawnVehicle) Total occupants: %d", iTotalOccupants );
#endif
// Loop over the total occupants
EntityId occupantId = INVALID_ENTITY_ID;
int iSeat = 0;
CRemotePlayer * pOccupant = NULL;
for( int i = 0; i < iTotalOccupants; i++ )
{
// Read the current occupant id
pBitStream->ReadCompressed( occupantId );
// Read the current occupant seat
pBitStream->Read( iSeat );
#ifdef DEBUG
CLogFile::Printf( "SpawnVehicle - Read occupant %d in seat %d.", occupantId, iSeat );
#endif
// Is the read data valid?
if( occupantId != INVALID_ENTITY_ID )
{
// Get a pointer to the current occupant
pOccupant = pCore->GetPlayerManager()->Get( occupantId );
// Is the pointer valid?
if( pOccupant )
{
// Set the occupant vehicle
pOccupant->SetVehicle( pNetworkVehicle );
// Set the occupant seat
pOccupant->SetSeat( (iSeat + 1) );
// Set the vehicle passenger
pNetworkVehicle->SetOccupant( iSeat, pOccupant );
#ifdef DEBUG
CLogFile::Printf( "Put occupant %d into vehicle %d (%d)", occupantId, pNetworkVehicle->GetId(), (iSeat + 1) );
#endif
}
}
}
#ifdef DEBUG
CLogFile::Print ( "SpawnVehicle RPC done!" );
#endif
}
}
}