Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

В данном разделе обсуждаются вопросы, связанные с клиентской частью. Темы не относящиеся к тематике раздела будут перемещены или удалены, а авторы наказаны.
При создании темы кратко опишите проблему в ее названии! Темы с названиями "Как сделать?", "Помогите", "Вопрос" и т.п. будут удалятся!

Vip Plugin

Статус пользователя loop
сообщение 3.11.2013, 0:48
Сообщение #1
Стаж: 13 лет

Сообщений: 14
Благодарностей: 1
Полезность: 0

Здравствуйте, может кто нибудь подсобить исправить в плагине ошибки?
vip.sma
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta_util>

#define DAMAGE_RECIEVED
#define VIP_FLAG ADMIN_LEVEL_H

new pistols[6] = {CSW_P228, CSW_ELITE, CSW_FIVESEVEN, CSW_GALIL, CSW_USP, CSW_GLOCK18};
new round_number
new g_HudSync
new g_HudSync2
new health_add
new health_hs_add
new health_max

new nKiller
new nKiller_hp
new nHp_add
new nHp_max

public plugin_init()
{
register_plugin("Vipka", "1.5", "7eVen");
register_event("ResetHUD", "ResetHUD", "be");
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_event("Damage", "damage_message", "b", "2!0", "3=0", "4!0")
register_event("DeathMsg", "hook_death", "a", "1>0")
register_clcmd("say /vip","ShowMotd");
register_clcmd("vipmenu", "showWeaponMenu");

new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5
register_menucmd(register_menuid("Выберите оружия?"), keys, "giveWeapon");

g_HudSync = CreateHudSyncObj()
#if defined DAMAGE_RECIEVED
g_HudSync2 = CreateHudSyncObj()
#endif

health_add = register_cvar("amx_vampire_hp", "5")
health_hs_add = register_cvar("amx_vampire_hp_hs", "10")
health_max = register_cvar("amx_vampire_max_hp", "100")
}

public hook_death()
{
nKiller = read_data(1)

if(!(get_user_flags(nKiller) & VIP_FLAG))
return PLUGIN_HANDLED;

if ( (read_data(3) == 1) && (read_data(5) == 0) )
{
nHp_add = get_pcvar_num (health_hs_add)
}
else
nHp_add = get_pcvar_num (health_add)

nHp_max = get_pcvar_num (health_max)

nKiller_hp = get_user_health(nKiller)
nKiller_hp += nHp_add

if (nKiller_hp > nHp_max) nKiller_hp = nHp_max

set_user_health(nKiller, nKiller_hp)

set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
show_hudmessage(nKiller, "Healed +%d hp", nHp_add)

return PLUGIN_CONTINUE;
}

public damage_message(id)
{
new attacker = get_user_attacker(id)

if (get_user_flags(attacker) & VIP_FLAG && is_user_connected(attacker))
{
new damage = read_data(2)
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(id, g_HudSync2, "%i", damage)

set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_HudSync, "%i", damage)
}
return PLUGIN_CONTINUE;
}

public showWeaponMenu(id)
{
if ( ! ( get_user_flags ( id ) & VIP_FLAG ) )
{
ChatColor ( id , "!g[V.I.P]!team Только для !g[V.I.P] " );
return PLUGIN_HANDLED;
}

new menu[192]
new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5
format(menu, 191, "Выберите оружия?^n^n\r1. \wВзять \r[\yAK47\r]^n\r2. \wВзять \r[\yM4A1\r]^n\r3. \wВзять \r[\yAWP\r]^n\r4. \wВзять \r[\yFAMAS\r]^n^n\r5. \wВыход^n")
show_menu(id, keys, menu)
return PLUGIN_HANDLED
}

public event_round_start ( )
{
round_number++

}
public giveWeapon(id, key)
{
if ( ! is_user_alive ( id ) )
{
ChatColor ( id , "!g[V.I.P]!team Ты мертв!" );
return PLUGIN_HANDLED;
}
if (key == 0)
{
if ( round_number <= 1 )
{
ChatColor ( id , "!g[V.I.P]!team Доступно со 2 раунда!" );
return PLUGIN_HANDLED;
}
give_item(id, "weapon_ak47")
cs_set_user_bpammo( id , CSW_AK47, 90 )
}
else if (key == 1)
{
if ( round_number <= 1 )
{
ChatColor ( id , "!g[V.I.P]!team Доступно со 2 раунда!" );
return PLUGIN_HANDLED;
}
give_item(id, "weapon_m4a1")
cs_set_user_bpammo( id , CSW_M4A1, 90 )
}
else if (key == 2)
{
if ( round_number <= 2 )
{
ChatColor ( id , "!g[V.I.P]!team Доступно со 3 раунда!" );
return PLUGIN_HANDLED;
}
give_item(id, "weapon_awp")
cs_set_user_bpammo( id , CSW_AWP, 30 )
}
else if (key == 3)
{
if ( round_number <= 1 )
{
ChatColor ( id , "!g[V.I.P]!team Доступно со 2 раунда!" );
return PLUGIN_HANDLED;
}
give_item(id, "weapon_famas")
cs_set_user_bpammo( id , CSW_FAMAS, 90 )
}
else if (key == 4)
{
}
return PLUGIN_HANDLED;
}

public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"vipmenu^"")
}

public client_putinserver(id)
{
if(get_user_flags(id) & VIP_FLAG)
{
set_task(2.0, "welcom", id)
}
}

public welcom(id)
{
new name[32]
get_user_name(id, name, 31)
set_hudmessage(0, 100, 200, 0.10, -1.0, 0, 4.0, 6.0)
show_hudmessage(0, "[Admin/vip] %s - зашол на сервер!", name)
}


public ResetHUD(id)
{
set_task(0.5, "VIP", id + 6910)
}

public VIP(TaskID)
{
new id = TaskID - 6910

if (get_user_flags(id) & VIP_FLAG && is_user_connected(id) && is_user_alive(id))
{
for (new i = 0; i < 6; i++)
{
if (fm_strip_user_gun(id, pistols[i]))
{
break;
}
message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()
give_item( id, "weapon_hegrenade" )
give_item( id, "weapon_flashbang" );
give_item( id, "weapon_flashbang" );
give_item( id, "weapon_smokegrenade" );
give_item( id, "item_assaultsuit" );
give_item( id, "item_thighpack" );
give_item( id, "weapon_deagle")

give_item( id, "ammo_50ae" )
give_item( id, "ammo_50ae" )
give_item( id, "ammo_50ae" )
give_item( id, "ammo_50ae" )
give_item( id, "ammo_50ae" )
}
}

return PLUGIN_HANDLED
}

public ShowMotd(id)
{
show_motd(id, "vip.txt")
}

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") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color
replace_all(msg, 190, "!team2", "^0") // Team2 Color

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();
}
}
}
}


В лог пишется ошибка.

Ошибка:
L 11/03/2013 - 02:43:38: [AMXX] Run time error 10 (plugin "vipka.amxx") (native "get_user_flags") - debug not enabled!
L 11/03/2013 - 02:43:38: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Отредактировал: loop, - 3.11.2013, 0:50
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Safety1st
сообщение 3.11.2013, 1:51
Сообщение #2
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Сначала включите отладку для плагина. В plugins.ini после его имени через пробел нужно написать debug. Тогда логи станут более информативными.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: