Posts: 1,767
Threads: 124
Joined: Mar 2010
Quote:
Originally Posted by kurta999
I've heard that mine IsPlayerSpawned isn't accurate at some situations.
I've rewritten it, does it good? If anybody has better, please post it. Thanks.
pawn Код:
// native IsPlayerSpawned(playerid); AMX_DECLARE_NATIVE(Natives::IsPlayerSpawned) { CHECK_PARAMS(1, "IsPlayerSpawned", LOADED);
const int playerid = CScriptParams::Get()->ReadInt(); if(!IsPlayerConnected(playerid)) return 0;
BYTE state = pNetGame->pPlayerPool->pPlayer[playerid]->byteState; switch (state) { case PLAYER_STATE_ONFOOT: case PLAYER_STATE_DRIVER: case PLAYER_STATE_PASSENGER: case PLAYER_STATE_SPAWNED: { return true; } } return false; }
|
My code in PAWN a while back was looking like this:
pawn Код:
// --- Checking if player has spawned --- (Commented because of the YSF R9 release)
/*stock IsPlayerSpawned(playerid)
{
switch(GetPlayerState(playerid))
{
case 0, 7, 9:return 0;
default: return 1;
}
return -1;
}*/
I didn't have any issue with either my code or yours.