Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Une forme de foreach (players) crée par les developeurs de Street-Kings (Minimicro et Coboll)
- Foreach de Y_Less fonctionne exactement sur le même principe !
- */
- new gMaxPlayers = 0;
- public OnPlayerConnect(playerid)
- {
- if(gMaxPlayers < playerid) { gMaxPlayers = playerid;}
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(playerid == gMaxPlayers)
- {
- for(new i = gMaxPlayers-1; i >= 0; i--)
- {
- if(IsPlayerConnected(i))
- {gMaxPlayers = i; break;}
- }
- }
- return 1;
- }
- /*
- Basé sur l'exemple de Ruto envoyé sur le sujet "Pawn Essentials".
- Un simple ProxDetectot et une fonction de ma conception.
- */
- stock ProxDetector(playerid, targetid,Float:range)
- {
- if(!(IsPlayerConnected(playerid) || IsPlayerConnected(targetid)) || playerid == targetid)
- return 0;
- if(GetPlayerVirtualWorld(playerid) != GetPlayerVirtualWorld(targetid))
- return 0;
- new Float:posX, Float:posY, Float:posZ;
- GetPlayerPos(playerid, posX, posY, posZ);
- return IsPlayerInRangeOfPoint(targetid, range, posX, posY, posZ);
- }
- /*
- Nécessite le premier code partagé dans ce message
- */
- stock ProxDetectorEx(playerid, range)
- {
- new nearPlayers[MAX_PLAYERS+1];
- for(new i = 0; i <= gMaxPlayers; i++)
- {
- if(ProxDetector(playerid, i, range))
- format(nearPlayers, sizeof(nearPlayers), "%s%i", nearPlayers, i);
- }
- return nearPlayers;
- }
- /*
- Chaque cellule de nearPlayers[] vaux l'ID d'un joueur proche.
- La cellule qui vaux "\0" (caractère spéciale de fin de chaîne de caractère) est celle qui suis la dernière cellule contenant un ID de joueur.
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement