Quote:
Originally Posted by LiMPiTo
pawn Код:
connectedGetRandomID() { new RandomID = random(GetMaxPlayers()), total_players_count; for(new i; i < GetMaxPlayers(); i++) { if(IsPlayerConnected(i)) { total_players_count ++; if(IsPlayerConnected(RandomID)) { return RandomID; } } } if(total_players_count > 1) // si hay mбs de un conectado, y el ID del random estб offline, se repite { return connectedGetRandomID(); // se repetirб hasta encontrar un random que estй conectado } else // caso contrario (hay solo un user, retorna con la ID del ъnico user online) { for(new i; i < GetMaxPlayers(); i++) { if(IsPlayerConnected(i)) { return i; } } } return -1; }
Modo de uso:
pawn Код:
public OnGameModeInit() { SetTimer("FUNCION_RANDOM_EJEMPLAR", 10000, true); // cada 10 seg. se sortea el random return 1; }
forward FUNCION_RANDOM_EJEMPLAR(); public FUNCION_RANDOM_EJEMPLAR() { new msg_char[150], rand_id = connectedGetRandomID(); if(rand_id != -1) // si no hay error al realizar el random { format(msg_char, sizeof(msg_char), "ID: %i (conectado) ha ganado el random", rand_id); } return SendClientMessageToAll(-1, msg_char); }
|
Que bonito seсor arquitecto, mi codigo no funcionу pero ya me estoy haciendo uno :3