#include <shop>
#include <csgo_colors>
public Plugin myinfo =
{
name = "ChangeFragsToCredits",
author = "Drumanid",
version = "1.0"
}
int g_iCredits, g_iLimitFrags;
bool g_bChat[MAXPLAYERS +1];
public void OnPluginStart()
{
ConVar cv;
(cv = CreateConVar("ChangeFragsToCredits", "50", "Сколько выдавать кредитов за один фраг?", _, true, 0.0, true, 10000000.0)).AddChangeHook(CvarCredits);
g_iCredits = cv.IntValue;
(cv = CreateConVar("FragsLimit", "5", "Минимальное кол-во фрагов для обмена", _, true, 1.0, true, 100.0)).AddChangeHook(CvarLimitFrags);
g_iLimitFrags = cv.IntValue;
RegConsoleCmd("sm_cf", ChangeFragsCmd); RegConsoleCmd("sm_changefrags", ChangeFragsCmd);
AutoExecConfig(true, "ChangeFragsToCredits");
if (Shop_IsStarted())
{
Shop_Started();
}
}
public void Shop_Started()
{
Shop_AddToFunctionsMenu(Sex,Hentai);
}
void Sex(int client, char[] b, int l)
{
strcopy(b,l,"Обмен фрагов");
}
bool Hentai(int client)
{
ChangeFragsCmd(client,0);
return true;
}
public void CvarCredits(ConVar cv, const char[] oldValue, const char[] newValue)
{
g_iCredits = cv.IntValue;
}
public void CvarLimitFrags(ConVar cv, const char[] oldValue, const char[] newValue)
{
g_iLimitFrags = cv.IntValue;
}
public Action ChangeFragsCmd(int iClient, int iArgs)
{
if(GetClientFrags(iClient) >= g_iLimitFrags)
{
g_bChat[iClient] = true;
CGOPrintToChat(iClient, "{LIGHTRED}GP {DEFAULT}|{DEFAULT} Напишите в чат сколько фрагов вы хотите обменять!\n{LIGHTBLUE}Курс: {RED}1 {LIGHTBLUE}фраг - {LIGHTRED}%i{LIGHTBLUE} кредит(ов)", g_iCredits);
}
else
{
ClientCommand(iClient, "play buttons/weapon_cant_buy.wav");
CGOPrintToChat(iClient, "{LIGHTRED}GP {DEFAULT}|{DEFAULT} Отказано! У вас нет столько фрагов!\n{LIGHTRED}GP {DEFAULT}|{DEFAULT} Минимальное кол-во фрагов для обмена: {LIGHTRED}%i", g_iLimitFrags);
}
}
public Action OnClientSayCommand(int iClient, const char[] sCommand, const char[] iArgs)
{
if(g_bChat[iClient])
{
int iFrags = StringToInt(iArgs);
if(iFrags > 1 && GetClientFrags(iClient) >= iFrags)
{
int iCount;
for(int i; i < iFrags; i++) iCount += g_iCredits;
SetEntProp(iClient, Prop_Data, "m_iFrags", GetEntProp(iClient, Prop_Data, "m_iFrags") -iFrags);
Shop_GiveClientCredits(iClient, iCount);
CGOPrintToChat(iClient, "{LIGHTRED}GP {DEFAULT}|{DEFAULT} Вы обменяли {RED}%i {LIGHTBLUE}фрагов на {LIGHTRED}%i{WHITE} кредит(ов) в магазине", iFrags, iCount);
}
else
{
ClientCommand(iClient, "play buttons/weapon_cant_buy.wav");
CGOPrintToChat(iClient, "{LIGHTRED}GP {DEFAULT}|{DEFAULT} Отказано! Неверное значение!");
}
g_bChat[iClient] = false;
return Plugin_Handled;
}
return Plugin_Continue;
}