#include <sourcemod>
#define PLUGIN_VERSION "0.4"
new Handle:Switch;
new Handle:Cash;
new Handle:AdminCash;
new Handle:MinPlayer;
new Handle:Round;
new Rounds;
new ClientInGame;
public Plugin:myinfo =
{
name = "Extra Cash",
author = "Peoples Army, DoK",
description = "Adds Extra Cash On Each Spawn",
version = PLUGIN_VERSION,
url = "www.sourcemod.net"
};
public OnPluginStart()
{
Switch = CreateConVar("extra_cash_enable", "1", "Включение = 1/ отключение = 0 плагина", FCVAR_NOTIFY);
Cash = CreateConVar("extra_cash_amount", "16000", "Количество денег, выдаваемое в начале раунда", FCVAR_NOTIFY);
AdminCash = CreateConVar("extra_cash_admin", "1", "Вкючение = 1/ отлючение = 0 вывода денег только админам", FCVAR_NOTIFY);
MinPlayer = CreateConVar("extra_cash_min_player", "4", "Минимальное количество игроков на сервере", FCVAR_NOTIFY);
Round = CreateConVar("extra_cash_round", "2", "Через сколько раундов будут выдаваться деньги", FCVAR_NOTIFY);
HookEvent("player_spawn" , Event_OnPlayerSpawn);
HookEvent("round_start", Event_OnRoundStart);
AutoExecConfig(true, "ExtraCash");
}
public OnMapStart()
{
Rounds = 0;
}
public Event_OnRoundStart(Handle: event , const String: name[] , bool: dontBroadcast)
{
ClientInGame = 0;
for(new i = 1; i <= MaxClients; i++)
{
if(IsClientInGame(i))
{
if(GetClientTeam(i) != 1)
{
ClientInGame++;
}
}
}
Rounds++;
}
public Event_OnPlayerSpawn(Handle: event , const String: name[] , bool: dontBroadcast)
{
if(Rounds > GetConVarInt(Round))
{
if(ClientInGame >= GetConVarInt(MinPlayer))
{
new client = GetClientOfUserId(GetEventInt(event,"userid"));
new AdminId:admin_cash = GetUserAdmin(client);
if(GetConVarInt(Switch) == 1)
{
if(GetConVarInt (AdminCash) == 1)
{
if(admin_cash != INVALID_ADMIN_ID)
{
SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(Cash));
}
}
else if(GetConVarInt (AdminCash) == 0)
{
SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(Cash));
}
}
}
}
}