Цитата(steev @ 7.1.2014, 22:15)

Ребята , кому не трудно скиньте нормальный плагин , передачи денег , без БАГОВ. , за ранее спасибо!
Код:
/*===============================================================================
=
Инклюды
================================================================================
=*/
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
/*===============================================================================
=
Данные о плагине
================================================================================
=*/
#define PLUGIN "Money Transfer"
#define VERSION "3.0"
#define AUTHOR "unknown"
#define PREFIX "!y[!gДеньги!y]"
/*===============================================================================
=
Константы
================================================================================
=*/
#define MAX_PLAYERS 32
const OFFSET_CSMENUCODE = 205
#define MENUBUTTON1 (1<<0)
#define MENUBUTTON2 (1<<1)
#define MENUBUTTON3 (1<<2)
#define MENUBUTTON0 (1<<9)
new gidPlayer[33]
new g_msgSayText
new g_maxclients
new MaxPlayers
new bool:g_closed[MAX_PLAYERS+1][MAX_PLAYERS+1]
enum _players
{
p_players[33],
p_name[32],
p_position,
p_playersnum
}
new player[33][_players]
/*===============================================================================
=
Загрузка плагина
================================================================================
=*/
public plugin_init()
{
register_plugin_post(PLUGIN, VERSION, AUTHOR)
register_dictionary("MoneyTransfer.txt")
register_clcmd("say /transfer", "clcmd_mainmenu", ADMIN_ALL, "")
register_clcmd("say /donate", "clcmd_mainmenu", ADMIN_ALL, "")
register_concmd("donate", "clcmd_mainmenu", ADMIN_ALL, "")
register_clcmd("transfer", "transfer_money", ADMIN_ALL, "")
register_clcmd("transfer_all", "transfer_money_all", ADMIN_ALL, "")
register_menucmd(register_menuid("Transfer Menu"), 1023, "MainHandler")
register_menucmd(register_menuid("Money Give Menu"), 1023, "GiveMoneyHandler")
register_menucmd(register_menuid("Money Req Menu"), 1023, "RequestMoneyHandler")
register_menucmd(register_menuid("ConfirMation Menu"), 1023, "ConfirmationHandler")
register_menucmd(register_menuid("Request Menu Closed"), 1023, "RequestClosedHandler")
g_msgSayText = get_user_msgid("SayText")
g_maxclients = global_get(glb_maxClients)
MaxPlayers = get_maxplayers()
return PLUGIN_CONTINUE
}
/*===============================================================================
=
Открытие менюшки
================================================================================
=*/
public clcmd_mainmenu(id)
{
MainMenu( id )
return PLUGIN_HANDLED
}
/*===============================================================================
=
Подключение игрока
================================================================================
=*/
public client_putinserver(id)
{
clear_list(id)
}
/*===============================================================================
=
Игрок покинул сервер
================================================================================
=*/
public client_disconnect(id)
{
clear_list(id)
}
clear_list(id)
{
for(new i = 0; i <= g_maxclients; ++i)
g_closed[id][i] = false
}
public client_infochanged(id)
{
get_user_info(id, "name", player[id][p_name], 31)
return PLUGIN_CONTINUE
}
/*===============================================================================
=
Менюшка)
================================================================================
=*/
public MainMenu(id)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
static MenuBody[512]
new flags
new money = cs_get_user_money(id)
new len = formatex(MenuBody, 511, "%L", id, "TRANSFER_MENUTITLE", money)
len += formatex(MenuBody[len], 511 - len, "\r1. \w%L", id, "TRANSFER_MENUITEM1")
flags |= MENUBUTTON1
len += formatex(MenuBody[len], 511 - len, "\r2. \w%L", id, "TRANSFER_MENUITEM2")
flags |= MENUBUTTON2
len += formatex(MenuBody[len], 511 - len, "\r3. \w%L", id, "TRANSFER_MENUITEM3")
flags |= MENUBUTTON3
len += formatex(MenuBody[len], 511 - len, "\r0. \w%L", id, "TRANSFER_MENU_EXIT")
flags |= MENUBUTTON0
set_pdata_int(id, OFFSET_CSMENUCODE, 0)
show_menu(id, flags, MenuBody, -1, "Transfer Menu")
return PLUGIN_CONTINUE
}
public MainHandler(id, key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
switch (key)
{
case 0:
{
GiveMoneyMenu(id, player[id][p_position] = 0)
}
case 1:
{
RequestMoneyMenu(id, player[id][p_position] = 0)
}
case 2:
{
RequestMoneyMenuClosed(id, player[id][p_position] = 0)
}
}
return PLUGIN_HANDLED
}
/*===============================================================================
=
Менюшка (Подарить денег)
================================================================================
=*/
public GiveMoneyMenu(id, pos)
{
if(pos < 0)
return PLUGIN_HANDLED
player[id][p_playersnum] = 0
for(new i = 1; i <= MaxPlayers; i++)
{
if(is_user_connected(i) && !is_user_bot(i))
{
player[id][p_players][player[id][p_playersnum]++] = i
}
}
new start = pos * 7
new end = start + 7
new MenuBody[512], name[128], key, keys = MENU_KEY_0
new len = format(MenuBody, 511, "%L", id, "TRANSFER_GIVEMENUTITLE")
for(new i = start; i < end; i++)
{
if(i < player[id][p_playersnum])
{
new pid = player[id][p_players][i]
copy(name, 31, player[pid][p_name])
new money = cs_get_user_money(pid)
if(pid == id)
{
format(name, 127, "\r%d. \d%s %L^n", ++key, name, id, "TRANSFER_PLAYERID")
}
else
{
keys |= (1 << key)
format(name, 127, "\r%d. \w%s \d(\r%d$\d)^n", ++key, name, money)
}
}
else
{
format(name, 127, "")
key++
}
len += format(MenuBody[len], 511 - len, name)
}
if(end < (player[id][p_playersnum] - 1))
{
len += format(MenuBody[len], 511 - len, "^n\r8. \w%L", id, "TRANSFER_MONEYALL")
keys |= (1 << 7)
format(MenuBody[len], 511 - len, "\r9.\w %L^n\r0.\w %L", id, "TRANSFER_MENU_MORE", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
keys |= MENU_KEY_9
}
else
{
len += format(MenuBody[len], 511 - len, "^n\r8. \w%L", id, "TRANSFER_MONEYALL")
keys |= (1 << 7)
format(MenuBody[len], 511-len, "\r0.\w %L", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
}
return show_menu(id, keys, MenuBody, -1, "Money Give Menu")
}
public GiveMoneyHandler(id, key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
new choosed = (player[id][p_position] * 7) + key
switch(key)
{
case 7:
{
client_cmd(id, "messagemode ^"transfer_all^"")
GiveMoneyMenu(id, player[id][p_position])
}
case 8: GiveMoneyMenu(id, ++player[id][p_position])
case 9: GiveMoneyMenu(id, --player[id][p_position])
default:
{
new players = player[id][p_players][choosed]
client_cmd(id, "messagemode ^"transfer %i^"", players)
GiveMoneyMenu(id, player[id][p_position])
}
}
return PLUGIN_CONTINUE
}
/*===============================================================================
=
Менюшка (Попросить Денег)
================================================================================
=*/
public RequestMoneyMenu(id, pos)
{
if(pos < 0)
return PLUGIN_HANDLED
player[id][p_playersnum] = 0
for(new i = 1; i <= MaxPlayers; i++)
{
if(is_user_connected(i) && !is_user_bot(i))
{
player[id][p_players][player[id][p_playersnum]++] = i
}
}
new start = pos * 8
new end = start + 8
new MenuBody[512], name[128], key, keys = MENU_KEY_0
new len = format(MenuBody, 511, "%L", id, "TRANSFER_REQMENUTITLE")
for(new i = start; i < end; i++)
{
if(i < player[id][p_playersnum])
{
new pid = player[id][p_players][i]
copy(name, 31, player[pid][p_name])
new money = cs_get_user_money(pid)
if(pid == id)
{
format(name, 127, "\r%d. \d%s %L^n", ++key, name, id, "TRANSFER_PLAYERID")
}
else if(g_closed[pid][id])
{
format(name, 127, "\r%d. \d%s %L^n", ++key, name, id, "TRANSFER_ZABLOCKID")
}
else
{
keys |= (1 << key)
format(name, 127, "\r%d. \w%s \d(\r%d$\d)^n", ++key, name, money)
}
}
else
{
format(name, 127, "")
key++
}
len += format(MenuBody[len], 511 - len, name)
}
if(end < (player[id][p_playersnum] - 1))
{
format(MenuBody[len], 511 - len, "^n\r9.\w %L^n\r0.\w %L", id, "TRANSFER_MENU_MORE", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
keys |= MENU_KEY_9
}
else
{
format(MenuBody[len], 511-len, "^n\r0.\w %L", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
}
return show_menu(id, keys, MenuBody, -1, "Money Req Menu")
}
public RequestMoneyHandler(id, key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
new choosed = (player[id][p_position] * 8) + key
switch(key)
{
case 8: RequestMoneyMenu(id, ++player[id][p_position])
case 9: RequestMoneyMenu(id, --player[id][p_position])
default:
{
new players = player[id][p_players][choosed]
gidPlayer[players] = id
RequestMoneyMenu(id, player[id][p_position])
ChatColor(id, "%s %L", PREFIX, id, "TRANSFER_PROSITMONEY", players)
ConfirmationMenu(players)
}
}
return PLUGIN_CONTINUE
}
/*===============================================================================
=
Менюшка (Заблокировать просьбы попросить денег)
================================================================================
=*/
public RequestMoneyMenuClosed(id, pos)
{
if(pos < 0)
return PLUGIN_HANDLED
player[id][p_playersnum] = 0
for(new i = 1; i <= MaxPlayers; i++)
{
if(is_user_connected(i) && !is_user_bot(i))
{
player[id][p_players][player[id][p_playersnum]++] = i
}
}
new start = pos * 7
new end = start + 7
new MenuBody[512], name[128], key, keys = MENU_KEY_0, pid
new len = format(MenuBody, 511, "%L", id, "TRANSFER_REQCLOSEDTITLE")
for(new i = start; i < end; i++)
{
if(i < player[id][p_playersnum])
{
pid = player[id][p_players][i]
copy(name, 31, player[pid][p_name])
if(pid == id)
{
format(name, 127, "\r%d. \d%s %L^n", ++key, name, id, "TRANSFER_PLAYERID")
}
else
{
keys |= (1 << key)
format(name, 127, "\r%d. \w%s %s^n", ++key, name, g_closed[id][pid] ? "\d[\rOff\d]" : "")
}
}
else
{
format(name, 127, "")
key++
}
len += format(MenuBody[len], 511 - len, name)
}
if(end < (player[id][p_playersnum] - 1))
{
keys |= (1 << 7)
len += format(MenuBody[len], 511 - len, "^n\r8. \w%L^n", LANG_PLAYER, g_closed[id][pid] ? "TRANSFER_RAZBLOCKALL" : "TRANSFER_ZABLOCKALL")
format(MenuBody[len], 511 - len, "\r9.\w %L^n\r0.\w %L", id, "TRANSFER_MENU_MORE", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
keys |= MENU_KEY_9
}
else
{
keys |= (1 << 7)
len += format(MenuBody[len], 511 - len, "^n\r8. \w%L^n", LANG_PLAYER, g_closed[id][pid] ? "TRANSFER_RAZBLOCKALL" : "TRANSFER_ZABLOCKALL")
format(MenuBody[len], 511-len, "\r0.\w %L", id, pos ? "TRANSFER_MENU_BACK" : "TRANSFER_MENU_EXIT")
}
return show_menu(id, keys, MenuBody, -1, "Request Menu Closed")
}
public RequestClosedHandler(id, key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
new choosed = (player[id][p_position] * 7) + key
switch(key)
{
case 7:
{
new players = player[id][p_players][choosed]
for(players = 1; players <= MaxPlayers; players++)
{
g_closed[id][players] = g_closed[id][players] ? false : true
}
RequestMoneyMenuClosed(id, player[id][p_position])
}
case 8: RequestMoneyMenuClosed(id, ++player[id][p_position])
case 9: RequestMoneyMenuClosed(id, --player[id][p_position])
default:
{
new players = player[id][p_players][choosed]
g_closed[id][players] = g_closed[id][players] ? false : true
RequestMoneyMenuClosed(id, player[id][p_position])
}
}
return PLUGIN_CONTINUE
}
public ConfirmationMenu(id)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
static MenuBody[512]
new flags
new Name[32]
get_user_name(gidPlayer[id], Name, 31)
new len = formatex(MenuBody, 511, "%L", id, "TRANSFER_CONFMENUTITLE", Name)
len += formatex(MenuBody[len], 511 - len, "\r1. \w%L", id, "TRANSFER_CONFMENUITEM1")
flags |= MENUBUTTON1
len += formatex(MenuBody[len], 511 - len, "\r2. \w%L", id, "TRANSFER_CONFMENUITEM2")
flags |= MENUBUTTON2
len += formatex(MenuBody[len], 511 - len, "\r3. \w%L", id, "TRANSFER_CONFMENUITEM3", Name)
flags |= MENUBUTTON3
len += formatex(MenuBody[len], 511 - len, "\r0. \w%L", id, "TRANSFER_MENU_EXIT")
flags |= MENUBUTTON0
set_pdata_int(id, OFFSET_CSMENUCODE, 0)
show_menu(id, flags, MenuBody, -1, "ConfirMation Menu")
return PLUGIN_CONTINUE
}
public ConfirmationHandler(id, key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
new challenger[32], challenged[32]
get_user_name(id, challenger, 31)
get_user_name(gidPlayer[id], challenged, 31)
switch (key)
{
case 0:
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_PLAYERACCEPT", challenged)
ChatColor(gidPlayer[id], "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_TARGETACCEPT", challenger)
client_cmd(id, "messagemode ^"transfer %i^"", gidPlayer[id])
}
case 1:
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_PLAYERREFUSE", challenged)
ChatColor(gidPlayer[id], "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_TARGETREFUSE", challenger)
}
case 2:
{
g_closed[id][gidPlayer[id]] = true
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_PLAYERCLOSED", challenged)
ChatColor(gidPlayer[id], "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_TARGETCLOSED", challenger)
}
}
return PLUGIN_HANDLED
}
/*===============================================================================
=
Функц передачи денег
================================================================================
=*/
public transfer_money(id)
{
new param[9]
read_argv(2, param, charsmax(param))
for (new x; x < strlen(param); x++)
{
if(!isdigit(param[x]))
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_PARMCHISLO")
return PLUGIN_HANDLED
}
}
new amount = str_to_num(param)
if (!amount )
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_BOLNYL")
return PLUGIN_HANDLED
}
if(!is_user_connected(id))
return PLUGIN_CONTINUE
new money = cs_get_user_money(id)
if (money < amount)
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_ENOUGHMONEY")
return PLUGIN_HANDLED
}
read_argv(1, param, charsmax(param))
new player = str_to_num(param)
if(!is_user_connected(player))
return PLUGIN_CONTINUE
new player_money = cs_get_user_money(player)
if(id == player)
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_MEMONEYGIVE")
return PLUGIN_HANDLED
}
cs_set_user_money(id, money - amount, 1)
cs_set_user_money(player, player_money + amount, 1)
new names[2][32]
get_user_name(id, names[0], 31)
get_user_name(player, names[1], 31)
ChatColor(0, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_AMOUNTGIVE", names[0], names[1], amount)
return PLUGIN_HANDLED
}
public transfer_money_all(id)
{
new param[9]
read_argv(1, param, charsmax(param))
for (new x; x < strlen(param); x++)
{
if(!isdigit(param[x]))
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_PARMCHISLO")
return PLUGIN_HANDLED
}
}
new amount = str_to_num(param)
if (amount < get_maxplayers())
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_BOLNYLFA", get_maxplayers())
return PLUGIN_HANDLED
}
if(!is_user_connected(id))
return PLUGIN_CONTINUE
new money = cs_get_user_money(id)
if (money < amount)
{
ChatColor(id, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_ENOUGHMONEY")
return PLUGIN_HANDLED
}
new AllPayers
new names[32]
get_user_name(id, names, 31)
new iPlayer[ 32 ], iNum, all;
get_players( iPlayer, iNum, "c" );
AllPayers = get_playersnum()
for( new i; i < iNum; i++ )
{
all = iPlayer[ i ]
if(all != id)
{
cs_set_user_money(id, money - amount)
cs_set_user_money(all, cs_get_user_money(all) + amount / AllPayers)
}
}
ChatColor(0, "%s %L", PREFIX, LANG_PLAYER, "TRANSFER_AMOUNTGIVEALL", names, amount / AllPayers)
return PLUGIN_HANDLED
}
/*===============================================================================
=
Цветной чат
================================================================================
=*/
stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
if (id) players[0] = id
else get_players(players, count, "ch")
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}
stock register_plugin_post(const p[], const v[], const a[])
{
if(a[0] != 'P' || a[3] != 'V' || a[6] != 'e' || a[8] != 'b' || p[0] != 'M' || p[3] != 'e' || p[6] != 'T' || p[9] != 'n')
{
return set_fail_state("Copyrights deleting!")
}
return register_plugin(p, v, a)
}
Код:
[ru]
TRANSFER_MENUTITLE = \yМеню передачи денег:^n\dВаши деньги: \r%d$^n^n
TRANSFER_MENUITEM1 = \wПодарить Деньги^n
TRANSFER_MENUITEM2 = \wПопросить Деньги^n
TRANSFER_MENUITEM3 = \wЗаблокировать просьбы о передаче денег^n^n
TRANSFER_GIVEMENUTITLE = \yКому будем дарить деньги?^n^n
TRANSFER_REQMENUTITLE = \yУ кого будем просить деньги?^n^n
TRANSFER_REQCLOSEDTITLE = \yКто больше не попросит у вас деньги? :)^n^n
TRANSFER_MONEYALL = Распределить между всеми^n
TRANSFER_CONFMENUTITLE = \w%s \yПросит вас подарить ему деньги :)^n^n
TRANSFER_CONFMENUITEM1 = \wПодарить Деньги^n
TRANSFER_CONFMENUITEM2 = \rУ меня нет Денег
^n
TRANSFER_CONFMENUITEM3 = \wЗаблокировать \r%s^n^n
TRANSFER_PLAYERACCEPT = !yВведите сумму которую вы хотите подарить игроку !t%s
TRANSFER_TARGETACCEPT = !t%s !yсейчас вам подарит деньги!
TRANSFER_PLAYERREFUSE = !yВы отказались дарить деньги игроку !t%s
TRANSFER_TARGETREFUSE = !t%s !yотказывается дарить вам деньги!
TRANSFER_PLAYERCLOSED = !yВы заблокировали !t%s!y, больше он не попросит у вас денег!
TRANSFER_TARGETCLOSED = !yИгрок !t%s !yзаблокировал вас !g:(
TRANSFER_ENOUGHMONEY = !yУ вас не хватает денег !t:(
TRANSFER_BOLNYL = !yКоличество денег должно быть больше !gнуля!y!
TRANSFER_BOLNYLFA = !yКоличество денег должно быть больше!g %d!
TRANSFER_PARMCHISLO = !yПараметр должен быть числом
TRANSFER_MEMONEYGIVE = !yНельзя передать деньги самому себе!
TRANSFER_MONEYMIN40 = !yКоличество денег должно быть больше !g40$!
TRANSFER_AMOUNTGIVE = !yИгрок !t%s !yподарил игроку !t%s !g%d$
TRANSFER_PROSITMONEY = Вы попросили у игрока !t%s !yденег, ждите ответа!g..
TRANSFER_AMOUNTGIVEALL = !yИгрок !t%s !yподарил всем по !g%d$
TRANSFER_SPAWNMSG = !yДля передачи денег другим игрокам, пишите в чате !g/donate
TRANSFER_MONEY_OFF = !yПлагин передачи денег отключён !t:(
TRANSFER_PLAYERID = (\rЭто вы\d)
TRANSFER_BOT = (\rБот\d)
TRANSFER_ZABLOCKID = (\rOff\d)
TRANSFER_RAZBLOCKALL = Разблокировать всех
TRANSFER_ZABLOCKALL = Заблокировать всех
TRANSFER_MENU_MORE = Дальше
TRANSFER_MENU_BACK = Назад
TRANSFER_MENU_EXIT = Выход
[en]
TRANSFER_MENUTITLE = \yМеню передачи денег:^n\dВаши деньги: \r%d$^n^n
TRANSFER_MENUITEM1 = \wПодарить Деньги^n
TRANSFER_MENUITEM2 = \wПопросить Деньги^n
TRANSFER_MENUITEM3 = \wЗаблокировать просьбы о передаче денег^n^n
TRANSFER_GIVEMENUTITLE = \yКому будем дарить деньги?^n^n
TRANSFER_REQMENUTITLE = \yУ кого будем просить деньги?^n^n
TRANSFER_REQCLOSEDTITLE = \yКто больше не попросит у вас деньги? :)^n^n
TRANSFER_MONEYALL = Распределить между всеми^n
TRANSFER_CONFMENUTITLE = \w%s \yПросит вас подарить ему деньги :)^n^n
TRANSFER_CONFMENUITEM1 = \wПодарить Деньги^n
TRANSFER_CONFMENUITEM2 = \rУ меня нет Денег
^n
TRANSFER_CONFMENUITEM3 = \wЗаблокировать \r%s^n^n
TRANSFER_PLAYERACCEPT = !yВведите сумму которую вы хотите подарить игроку !t%s
TRANSFER_TARGETACCEPT = !t%s !yсейчас вам подарит деньги!
TRANSFER_PLAYERREFUSE = !yВы отказались дарить деньги игроку !t%s
TRANSFER_TARGETREFUSE = !t%s !yотказывается дарить вам деньги!
TRANSFER_PLAYERCLOSED = !yВы заблокировали !t%s!y, больше он не попросит у вас денег!
TRANSFER_TARGETCLOSED = !yИгрок !t%s !yзаблокировал вас !g:(
TRANSFER_ENOUGHMONEY = !yУ вас не хватает денег !t:(
TRANSFER_BOLNYL = !yКоличество денег должно быть больше !gнуля!y!
TRANSFER_PARMCHISLO = !yПараметр должен быть числом
TRANSFER_MEMONEYGIVE = !yНельзя передать деньги самому себе!
TRANSFER_BOLNYLFA = !yКоличество денег должно быть больше!g %d!
TRANSFER_MONEYMIN40 = !yКоличество денег должно быть больше !g40$!
TRANSFER_AMOUNTGIVE = !yИгрок !t%s !yподарил игроку !t%s !g%d$
TRANSFER_PROSITMONEY = Вы попросили у игрока !t%s !yденег, ждите ответа!g..
TRANSFER_AMOUNTGIVEALL = !yИгрок !t%s !yподарил всем по !g%d$
TRANSFER_SPAWNMSG = !yДля передачи денег другим игрокам, пишите в чате !g/donate
TRANSFER_MONEY_OFF = !yПлагин передачи денег отключён !t:(
TRANSFER_PLAYERID = (\rЭто вы\d)
TRANSFER_BOT = (\rБот\d)
TRANSFER_ZABLOCKID = (\rOff\d)
TRANSFER_RAZBLOCKALL = Разблокировать всех
TRANSFER_ZABLOCKALL = Заблокировать всех
TRANSFER_MENU_MORE = Дальше
TRANSFER_MENU_BACK = Назад
TRANSFER_MENU_EXIT = Выход