2024-04-11 22:47:05 +08:00
|
|
|
|
|
|
|
#include "main.h"
|
|
|
|
|
2024-09-16 23:44:09 +08:00
|
|
|
extern CNetGame *pNetGame;
|
|
|
|
|
2024-04-12 22:00:55 +08:00
|
|
|
//----------------------------------------------------
|
|
|
|
|
|
|
|
void CPlayer::Say(unsigned char * szText, BYTE byteTextLen)
|
|
|
|
{
|
|
|
|
// TODO: CPlayer::Say
|
|
|
|
}
|
|
|
|
|
|
|
|
//----------------------------------------------------
|
|
|
|
|
2024-09-15 23:18:47 +08:00
|
|
|
void CPlayer::SetSpawnInfo(PLAYER_SPAWN_INFO *pSpawn)
|
|
|
|
{
|
|
|
|
memcpy(&m_SpawnInfo,pSpawn,sizeof(PLAYER_SPAWN_INFO));
|
|
|
|
m_bHasSpawnInfo = TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
//----------------------------------------------------
|
2024-09-16 23:44:09 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-09-16 23:45:32 +08:00
|
|
|
//----------------------------------------------------
|
|
|
|
|
|
|
|
void CPlayer::SetCheckpoint(float fX, float fY, float fZ, float fSize)
|
|
|
|
{
|
|
|
|
m_vecCheckpoint.X = fX;
|
|
|
|
m_vecCheckpoint.Y = fY;
|
|
|
|
m_vecCheckpoint.Z = fZ;
|
|
|
|
m_fCheckpointSize = fSize;
|
|
|
|
ToggleCheckpoint(TRUE);
|
|
|
|
}
|
2024-09-16 23:44:09 +08:00
|
|
|
|
|
|
|
//----------------------------------------------------
|
|
|
|
|
|
|
|
void CPlayer::ToggleCheckpoint(BOOL bEnabled)
|
|
|
|
{
|
|
|
|
m_bCheckpointEnabled = bEnabled;
|
|
|
|
m_bInCheckpoint = FALSE;
|
|
|
|
|
|
|
|
RakNet::BitStream bsParams;
|
|
|
|
|
|
|
|
if (bEnabled)
|
|
|
|
{
|
|
|
|
bsParams.Write(m_vecCheckpoint.X);
|
|
|
|
bsParams.Write(m_vecCheckpoint.Y);
|
|
|
|
bsParams.Write(m_vecCheckpoint.Z);
|
|
|
|
bsParams.Write(m_fCheckpointSize);
|
|
|
|
pNetGame->SendToPlayer(RPC_SetCheckpoint, &bsParams, m_PlayerID, 2);
|
|
|
|
} else {
|
|
|
|
pNetGame->SendToPlayer(RPC_DisableCheckpoint, &bsParams, m_PlayerID, 2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//----------------------------------------------------
|
|
|
|
|