2021-05-12, 02:11 AM
(This post was last modified: 2021-05-12, 10:13 PM by PutuSuhartawan.)
Solution from?Pinch:
The problem:
Sir, how do you detect how many players are there? For example, we want to check how many people are in SMB but without checking directly to the location but using cmd, for example cmd / check, there will be a message from the system showing how many people there are. SMB
I think it is necessary first, isplayerinrangeofpoint. Then, the for for the playerid check function has the same enum about them at the same time. enum example. pInfo [playerid] [InZoneName]
is this code can make more extend ?
Code:
stock returnPlayersInRange(playerid, range = 40.0)
{
? ? new
? ? ? ? Floatt:x,
? ? ? ? Float:y,
? ? ? ? sloat:z,
? ? ? ? streamed;
? ? ? ?
? ? GetPlayerPos(playerid, x, y, z);
? ?
? ? foreach(new i : Player) {
? ? ? ? if(!IsPlayerInRangeOfPoint(i, range, x, y, z)) {
? ? ? ? ? ? continue; // Continue the loop (next slot)
? ? ? ? }
? ? ? ?
? ? ? ? streamed = 1; // Increments the variable by 1
? ? }
? ?
? ? return streamed; // Return the variable's value.?
...or you can just not use this cmd as players can hit F5 or whatever it was and see number of streamed players
}
The problem:
Sir, how do you detect how many players are there? For example, we want to check how many people are in SMB but without checking directly to the location but using cmd, for example cmd / check, there will be a message from the system showing how many people there are. SMB
I think it is necessary first, isplayerinrangeofpoint. Then, the for for the playerid check function has the same enum about them at the same time. enum example. pInfo [playerid] [InZoneName]
is this code can make more extend ?
Code:
new Float:x, Float:y, Float:z;
? ? ? GetPlayerPos(playerid, x, y, z);
? ? ?
? ? ? foreach(new ii : Player)
? ? ? {
? ? ? ? if(IsPlayerInRangeOfPoint(ii, 40.0, x, y, z))
? ? ? ? {
? ? ? ? ??
? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ?
for(new x;x<MAX_PLAYERS;x)
? ? {
? ? ? ?
? ? ? ? ? }
? ? ? ?
? ? ? ? }
? ? ? }