Всем привет! Ребят времени нету самому занятся, если кто знает где есть такой плагин как на скриншоте, то скиньте ссылку, или же у кого есть то тоже кому не жалко выложите сюда, или в лс. Да и этот плагин предназначен для передачи денег другим игрокам. Больше подходить для серверов с модам DeathRun.Вот скрин: Большое спасибо !
PHP: #include <amxmodx>#include <cstrike>#define PLUGIN "Money Transferer"#define VERSION "1.3"#define AUTHOR "kalash1k, Edit by sOynd"#define PREFIX "!y"#define MAX_MONEY 200000#define BASE_MONEY_AMOUNT 1000.0 // Need to be a float for calculations/*If you have $800 menus will be:1) $100 * floatround(your_current_money_amount / BASE_MONEY_AMOUNT)2) $200 * floatround(your_current_money_amount / BASE_MONEY_AMOUNT)3) $300 * floatround(your_current_money_amount / BASE_MONEY_AMOUNT)4) $500 * floatround(your_current_money_amount / BASE_MONEY_AMOUNT)5) your_current_money_amount ($800 in our case)6) "Type your own number"*/new players_menu, money_menu, players[32], num, inew accessmenu, sName[64], callbacknew msg[128]new money_coef, money_amountpublic plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /money", "transfer_menu", ADMIN_ALL, "") // TM - Transfer Money register_clcmd("say money", "transfer_menu", ADMIN_ALL, "") register_clcmd("transfer", "transfer_money", ADMIN_ALL, "") // Just for using messagemode}public transfer_menu(id){ get_players(players, num, "che", cs_get_user_team(id)==CS_TEAM_CT ? "CT" : "TERRORIST") if (num <= 1) { ChatColor(id, "%s Некому передавать деньги", PREFIX) return PLUGIN_HANDLED } if (!is_user_alive(id)) { ChatColor(id, "%s Вы мертвы", PREFIX) return PLUGIN_HANDLED; } players_menu = menu_create("Кому передать деньги?", "players_menu_handler") new tempname[32], info[10], main[172] for(i = 0; i < num; i++) { if(players[i] == id || is_user_bot(players[i])) continue get_user_name(players[i], tempname, 31) num_to_str(players[i], info, 9) formatex(main, charsmax(main), "\w%s \r[\y%i\r]", tempname, cs_get_user_money(players[i]) ); menu_additem(players_menu, main, info, 0) } menu_setprop(players_menu, MPROP_NEXTNAME, "Далее") menu_setprop(players_menu, MPROP_BACKNAME, "Назад") menu_setprop(players_menu, MPROP_EXITNAME, "Выход") menu_setprop(players_menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, players_menu, 0) return PLUGIN_CONTINUE}public players_menu_handler(id, players_menu, item){ if(item == MENU_EXIT) { menu_destroy(players_menu) client_cmd(id, "optionsmenu") return PLUGIN_HANDLED } new sData[6], menuTitle[127] // target id menu_item_getinfo(players_menu, item, accessmenu, sData, 5, sName, 63, callback) new user_money = cs_get_user_money(id) money_coef = floatround(float(user_money) / BASE_MONEY_AMOUNT) formatex(menuTitle, charsmax(menuTitle), "\wПередать деньги^n\dУ вас \y%d$^n", user_money ); money_menu = menu_create(menuTitle, "money_menu_handler") new str[6] for (new i = 1; i < 5; i++) { if(i == 4) money_amount = 500 * money_coef else money_amount = 100 * i * money_coef num_to_str(money_amount, str, 5) menu_additem(money_menu, str, sData, 0) } num_to_str(user_money, str, 5) menu_additem(money_menu, str, sData, 0) menu_additem(money_menu, "Ввести кол-во", sData, 0) menu_setprop(money_menu, MPROP_EXIT, MEXIT_ALL) menu_setprop(money_menu, MPROP_EXITNAME, "Назад") menu_display(id, money_menu, 0) return PLUGIN_CONTINUE}public money_menu_handler(id, money_menu, item){ if(item == MENU_EXIT) { menu_destroy(money_menu) menu_display(id, players_menu, 0) return PLUGIN_CONTINUE } new sData[6] //target id menu_item_getinfo(money_menu, item, accessmenu, sData, 5, sName, 63, callback) sData[0] = str_to_num(sData) switch(item) { case 0: { new iName = str_to_num(sName) // money amount formatex(msg, 127, "transfer %i %i", sData[0], iName) } case 1: { new iName = str_to_num(sName) formatex(msg, 127, "transfer %i %i", sData[0], iName) } case 2: { new iName = str_to_num(sName) formatex(msg, 127, "transfer %i %i", sData[0], iName) } case 3: { new iName = str_to_num(sName) formatex(msg, 127, "transfer %i %i", sData[0], iName) } case 4: { new iName = str_to_num(sName) formatex(msg, 127, "transfer %i %i", sData[0], iName) } case 5: formatex(msg, 127, "messagemode ^"transfer %i^"", sData[0]) } client_cmd(id, msg) return PLUGIN_CONTINUE}public transfer_money(id){ new param[9] read_argv(1, param, 5) new player = str_to_num(param) new names[2][32] get_user_name(player, names[1], 31) if(is_user_bot(player) || !is_user_connected(player)) { ChatColor(id, "%s Игрока ^4%s нет на сервере", PREFIX, names[1]) return PLUGIN_HANDLED } if(player == id) { ChatColor(id, "%s Нельзя передать деньги себе.", PREFIX) return PLUGIN_HANDLED } read_argv(2, param, 5) new p_len = strlen(param) for (new x; x < p_len; x++) { if(!isdigit(param[x])) { ChatColor(id, "%s Параметр должен быть числом", PREFIX) return PLUGIN_HANDLED } } new amount = str_to_num(param) new money = cs_get_user_money(id) if (money < amount) { ChatColor(id, "%s У вас не хватает денег", PREFIX) return PLUGIN_HANDLED } if(amount < 100) { ChatColor(id, "%s Нельзя передать меньше 100 $", PREFIX) return PLUGIN_HANDLED } new player_money = cs_get_user_money(player) if(player_money == MAX_MONEY) { ChatColor(id, "%s У игрока ^4%s ^3уже ^4$%i", PREFIX, names[1], MAX_MONEY) return PLUGIN_HANDLED } get_user_name(id, names[0], 31) new maxmoney = MAX_MONEY - player_money if(maxmoney >= amount) { cs_set_user_money(id, money - amount, 1) cs_set_user_money(player, player_money + amount, 1) ChatColor(id, "%s ^1Вы ^3передали ^4$%i ^3%s", PREFIX, amount, names[1]) ChatColor(player, "%s Вам пришло %d$ от игрока %s", PREFIX, amount, names[0]) return PLUGIN_HANDLED } cs_set_user_money(id, maxmoney, 1) cs_set_user_money(player, MAX_MONEY, 1) ChatColor(id, "%s ^1Вы ^3передали ^4$%i ^3%s", PREFIX, maxmoney, names[1]) ChatColor(player, "%s ^1Вам пришло ^4%d$ ^3от игрока ^1%s", PREFIX, maxmoney, names[0]) 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, "!team", "^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, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]) write_string(msg) message_end() } } return PLUGIN_CONTINUE}