Ребет мучался-мучал..
Code
#include <sourcemod>
#include <cstrike>
#include <sdktools>
#include <sdktools_entoutput>
#include <sdktools_functions>
#include <sdkhooks>
public OnPluginStart()
{
HookEvent("round_start", Round_Start);
}
new client[MAXPLAYERS+1];
new jo;
public Round_Start(Handle:event, const String:name[], bool:dontBroadcast)
{
jo = 2;
new cl = GetClientOfUserId(GetEventInt(event, "userid"));
for (new i = 1; i <= MaxClients; i++)
{
client[i] = cl;
if (client[i] != GetRandomClient())
{
if (jo != 0)
{
client[i] = GetRandomClient();
PrintToChatAll("%N = GetRandomClient()", client[i]);
new my_array[5] = {3, 9, 1, 7, 5};
SortIntegers(my_array, 5, Sort_Random);
PrintToChatAll("%d - %N", my_array[i], client[i]);
jo -= 1;
}
}
}
}
//Выбор игроков рандомом
GetRandomClient()
{
new indexes[MaxClients+1], players = 0;
for (new i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2)
{
indexes[players++] = i;
}
}
if (players > 0) return indexes[GetRandomInt(0, players-1)];
return 0;
}
Нужно чтоб Рандомом 2 игрокам на сервере которые за Т выдавало по значению от 2 до 5, значения могут совпадать у обоих. Но нельзя допустить чтобы Рандом выбрал 2 раза 1 и того же игрока, всегда должно быть минимут 2 игрока с значением. Т.е В любом случае 2 разных игрока должны получить по значению (2-5).Добавлено (03.10.2012, 18:36:50)
---------------------------------------------
+ еще вопросик. - Как отловить победу Т ? или что-то в этом роде.
Добавлено (03.10.2012, 18:40:11)
---------------------------------------------
+ Немного не догоняю как сделать действие над игроком если он сменил команду?? GetClientTeam это получаем где игрой сейчас, а как получить момент есть он был за СТ а перешол в Т??