コード例 #1
0
ファイル: CNetGame.cpp プロジェクト: trisz404/OpenSAMP-WIP
void CNetGame::Packet_StatsUpdate(Packet* p)
{
	RakNet::BitStream bsStats((char*)p->data, p->length, false);

	_PlayerID playerId = (_PlayerID)p->playerIndex;

	int iMoney;
	int iDrunkLevel;
	uint8_t bytePacketID;
	uint8_t moneySource = 0;

	bsStats.Read(bytePacketID);
	bsStats.Read(iMoney);
	bsStats.Read(iDrunkLevel);

	if(this->playerPool)
	{
		if(this->playerPool->GetSlotState(playerId))
		{
			if( playerPool->GetPlayer( playerId )->isAnOpenUser( ) )
			{
				bsStats.Read( moneySource ); // CASINO, STUNT, Blahblah ....
			}

			this->playerPool->setPlayerMoney(playerId,iMoney/*, moneySource*/);
			this->playerPool->setPlayerDrunkLevel(playerId, iDrunkLevel);
		}
	}	
}
コード例 #2
0
ファイル: netgame.cpp プロジェクト: jovazxc/samp
void CNetGame::Packet_StatsUpdate(Packet *p)
{
	RakNet::BitStream bsStats(p->data, p->length, false);
	CPlayerPool *pPlayerPool = GetPlayerPool();
	BYTE bytePlayerID = (BYTE)p->playerIndex;
	int iMoney;
	WORD wAmmo;
	BYTE bytePacketID;

	bsStats.Read(bytePacketID);
	bsStats.Read(iMoney);
	bsStats.Read(wAmmo);

	if(pPlayerPool) {
		if(pPlayerPool->GetSlotState(bytePlayerID)) {
			pPlayerPool->SetPlayerMoney(bytePlayerID,iMoney);
			pPlayerPool->SetPlayerAmmo(bytePlayerID, (DWORD)wAmmo);
			pPlayerPool->GetAt(bytePlayerID)->SetCurrentWeaponAmmo((DWORD)wAmmo);
		}
	}	
}