Вот плагин
- Код: Выделить всё
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta_util>
#include <fun>
#define INVISIBLE 180
#define SPEED 290.0
#define MONEY 3000
#define HEALTH 250
#define ARMOR 250
native plasma(id)
enum _:SKILLS_COUNT
{
SKILL_INVISIBLE,
SKILL_SPEED,
SKILL_MONEY,
SKILL_ASIMOV,
SKILL_WEAPONS,
SKILL_HP,
SKILL_ARMOR
}
new UserSkill[33][SKILLS_COUNT];
new Ham:Ham_Player_ResetMaxSpeed = Ham_Item_PreFrame;
new MenuCan[33];
stock reset_skills(id) for(new i = 0; i < SKILLS_COUNT; i++) UserSkill[id][i] = 0;
public plugin_init()
{
register_plugin("[CSDM] IMPERATOR Menu", "1.0", "Anonymous");
RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn", 1);
register_clcmd("vip_menu", "clcmd_vip_menu");
RegisterHam(Ham_Player_ResetMaxSpeed, "player", "fw_ResetMaxSpeed_Post", 1);
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage");
register_message(get_user_msgid("CurWeapon"), "message_cur_weapon");
}
public client_authorized(id)
{
reset_skills(id);
}
public fw_ResetMaxSpeed_Post(id)
{
if(!is_user_alive(id)) return;
if(UserSkill[id][SKILL_SPEED] == 1) set_user_maxspeed(id, SPEED);
}
public fw_PlayerSpawn(id)
{
if(!is_user_alive(id)) return;
reset_skills(id);
set_user_gravity(id, 1.0);
set_user_rendering(id);
MenuCan[id] = 2;
}
public clcmd_vip_menu(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H)) return PLUGIN_CONTINUE;
if(MenuCan[id] < 1) return PLUGIN_HANDLED;
static szTemp[48];
formatex(szTemp, 47, "\wМеню \rVIP \w[\r%d\w]", MenuCan[id]);
new menu = menu_create(szTemp, "vip_menu_handle");
menu_additem(menu, "Взять HP \y[\r+250\y]");
menu_additem(menu, "Взять Броню \y[\r+250\y]");
menu_additem(menu, "Взять Деньги \y[\r3000$\y]");
menu_additem(menu, "Взять \rINFINITY");
menu_additem(menu, "Взять \rPLASMAGUN");
menu_setprop(menu, MPROP_EXITNAME, "Выход");
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public vip_menu_handle(id, menu, item)
{
if(item == MENU_EXIT) return PLUGIN_HANDLED;
if(!is_user_alive(id)) return PLUGIN_HANDLED;
if(MenuCan[id] < 1) return PLUGIN_HANDLED;
switch(item)
{
case 0:
{
if(UserSkill[id][SKILL_HP] == 0)
{
UserSkill[id][SKILL_HP] = 1;
set_user_health(id, (get_user_health(id) + HEALTH))
client_cmd(id, "spk items/ammopickup1")
MenuCan[id] -= 1;
}
else client_print(id, print_chat, "Вы уже брали жизни");
}
case 1:
{
if(UserSkill[id][SKILL_ARMOR] == 0)
{
UserSkill[id][SKILL_ARMOR] = 1;
set_user_armor(id, (get_user_armor(id) + ARMOR))
client_cmd(id, "spk items/ammopickup1")
MenuCan[id] -= 1;
}
else client_print(id, print_chat, "Вы уже брали броню");
}
case 2:
{
if(UserSkill[id][SKILL_MONEY] == 0)
{
UserSkill[id][SKILL_MONEY] = 1;
set_user_money(id, (get_user_money(id) + MONEY))
MenuCan[id] -= 1;
}
else client_print(id, print_chat, "Вы уже брали деньги");
}
case 3:
{
if(UserSkill[id][SKILL_WEAPONS] == 0)
{
UserSkill[id][SKILL_WEAPONS] = 1;
client_cmd(id, "infinity");
MenuCan[id] -= 1;
}
else client_print(id, print_chat, "У вас уже есть Infinity");
}
case 4:
{
if(UserSkill[id][SKILL_ASIMOV] == 0)
{
UserSkill[id][SKILL_WEAPONS] = 1;
plasma(id)
MenuCan[id] -= 1;
}
else client_print(id, print_chat, "У вас уже есть PLASMAGUN");
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
stock fm_cs_get_current_weapon_ent(id)
{
if (pev_valid(id) != 2)
return -1;
return get_pdata_cbase(id, 373, 5);
}
А вот ошибка в логах
- Код: Выделить всё
L 05/26/2019 - 00:21:11: [AMXX] Run time error 10 (plugin "elita_menu.amxx") (native "RegisterHam") - debug not enabled!
L 05/26/2019 - 00:21:11: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 05/26/2019 - 00:21:11: Could not find function "message_cur_weapon"