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

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

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

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

ошибка в плагине Vip weapon

Статус пользователя carter
сообщение 29.11.2016, 23:38
Сообщение #1
Стаж: 13 лет

Сообщений: 111
Благодарностей: 4
Полезность: 35

Здравствуйте.
ОС Linux
Сборка reHLDS bugfix 934
amxmod 1.8.2

Иногда проявляется такая ошибка.
[AMXX] Displaying debug trace (plugin "vip_weapon2.amxx")
[AMXX] Run time error 10: native error (native "give_item")
[AMXX] [0] vip_weapon2.sma::VIP (line 176)

Сам плагин
Cкрытый текст
Код:
#define DAMAGE_RECIEVED
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <hamsandwich>

#define VIP_FLAG ADMIN_LEVEL_H

new round_number
new bool:has_used[33]
public plugin_init()
{
register_plugin("VIP-ADMIN", "1", "7eVen");
register_event("ResetHUD", "ResetHUD", "be");
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_logevent("event_new_round", 2, "1=Round_Start")
register_clcmd("say /adminka", "adminka");
register_clcmd("say /vip","ShowMotd");

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

const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)
const PRIMARY_WEAPON_BIT_SUM = (1<<CSW_AK47)|(1<<CSW_M4A1)|(1<<CSW_AUG)|(1<<CSW_AWP)|(1<<CSW_FAMAS)|(1<<CSW_G3SG1)|(1<<CSW_GALIL)|(1<<CSW_M3)|(1<<CSW_M249)|(1<<CSW_MAC10)|(1<<CSW_P90)|(1<<CSW_SCOUT)|(1<<CSW_SG550)|(1<<CSW_SG552)|(1<<CSW_TMP)|(1<<CSW_UMP45)|(1<<CSW_XM1014)

stock drop_primary(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)

for (i = 0; i < num; i++)
{
weaponid = weapons[i]

if (dropwhat == 2 && ((1<<weaponid) & PRIMARY_WEAPON_BIT_SUM))
{
static wname[32]
get_weaponname(weaponid, wname, sizeof wname - 1)
engclient_cmd(id, "drop", wname)
}
}
}


stock drop_weapons(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)

for (i = 0; i < num; i++)
{
weaponid = weapons[i]

if (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM))
{
static wname[32]
get_weaponname(weaponid, wname, sizeof wname - 1)
engclient_cmd(id, "drop", wname)
}
}
}


public showWeaponMenu(id)
{
new menu[192]
new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4
format(menu, 191, "Выберите оружия?^n^n\r1. \wВзять \r[\yAK47\r]^n\r2. \wВзять \r[\yM4A1\r]^n\r3. \wВзять \r[\yGALIL\r]^n\r4. \wВзять \r[\yFAMAS\r]^n")
show_menu(id, keys, menu)
return PLUGIN_HANDLED
}
public event_round_start ( )
{
round_number++
}
public giveWeapon(id, key)
{
if(!has_used[id])
{
if ( ! ( get_user_flags ( id ) & VIP_FLAG ) )
{
ChatColor ( id , "!g[SERVER]!y ТОЛЬКО ДЛЯ !team[VIP] !y!" );
return PLUGIN_HANDLED;
}
if ( ! is_user_alive ( id ) )
{
ChatColor(id, "!g[SERVER]!y You!team [Dead] !y!");
return PLUGIN_HANDLED;
}
}
else
{
ChatColor(id, "!g[SERVER]!y Оружия можна брать 1 раз в раунд!!!!!y!");
return PLUGIN_HANDLED;
}
if (key == 0)
{


if ( round_number <= 3 )
{
ChatColor ( id , "!g[SERVER]!y Доступно со 2 раунда !y!" );
return PLUGIN_HANDLED;
}
drop_primary(id, 2)
give_item(id, "weapon_ak47")
cs_set_user_bpammo( id , CSW_AK47, 90 )


}
else if (key == 1)
{
if ( round_number <= 3 )
{
ChatColor ( id , "!g[SERVER]!y Доступно со 2 раунда !y!" );
return PLUGIN_HANDLED;
}
drop_primary(id, 2)
give_item(id, "weapon_m4a1")
cs_set_user_bpammo( id , CSW_M4A1, 90 )
}
else if (key == 2)
{
if ( round_number <= 4 )
{
ChatColor ( id , "!g[SERVER]!y Доступно со 3 раунда !y!" );
return PLUGIN_HANDLED;
}
drop_primary(id, 2)
give_item(id, "weapon_galil")
cs_set_user_bpammo( id , CSW_GALIL, 35 )
}
else if (key == 3)
{
if ( round_number <= 3 )
{
ChatColor ( id , "!g[SERVER]!y Доступно со 2 раунда !y!" );
return PLUGIN_HANDLED;
}
drop_primary(id, 2)
give_item(id, "weapon_famas")
cs_set_user_bpammo( id , CSW_FAMAS, 90 )
}

has_used[id] = true;
return PLUGIN_HANDLED;
}
public adminka(id)
{
show_motd(id, "adminka.txt")
}
public client_authorized(id)
{
client_cmd(id, "bind ^"-^" ^"vipmenu^"")
}
public ResetHUD(id)
{
set_task(0.5, "VIP", id + 6910)
}
public VIP(TaskID)
{
new id = TaskID - 6910

if ( get_user_flags ( id ) & VIP_FLAG )
{
message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()
drop_weapons(id, 2)
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")
cs_set_user_bpammo( id , CSW_DEAGLE, 32 )
}

return PLUGIN_HANDLED
}
public ShowMotd(id)
{
show_motd(id, "vip.txt")
}
public event_new_round()
{
arrayset(has_used, false, 33)
}

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

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Legenda
сообщение 30.11.2016, 0:38
Сообщение #2


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

удали этот плагин
в нем куча ошибок
самое простое это хук ResetHUD
его может вызывать клиент через fullupdate , и vip будет всегда иметь бесконечные гранаты, патроны для дигла и броню
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: