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

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

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

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

damager

Статус пользователя cyber1741
сообщение 23.6.2015, 21:10
Сообщение #1


Стаж: 13 лет

Сообщений: 1473
Благодарностей: 222
Полезность: 95

Помогите сделать дамагер на флаг b

Скрытый текст
Код:
#include <amxmodx>
#include <fakemeta>

new const PLUGIN[] = "Damager"
new const VERSION[] = "2.0"
new const AUTHOR[] = "Prayer"

new g_MsgSync
new g_MsgSync2

new pid
new damage

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_event("Damage", "EVENT_Damage", "b", "2!0", "3=0", "4!0")

g_MsgSync = CreateHudSyncObj()
g_MsgSync2 = CreateHudSyncObj()
}

public EVENT_Damage(id)
{
if(pev_valid(id))
{
pid = get_user_attacker(id)
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_MsgSync2, "%i", damage)

if(pev(pid, pev_flags) & FL_CLIENT)
{
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(pid, g_MsgSync, "%i", damage)
}
}
}


Иногда выскакиевает ошибка в логах:
Скрытый текст
L 06/23/2015 - 18:06:05: Info (map "de_aztec") (file "addons/amxmodx/logs/error_20150623.log")
L 06/23/2015 - 18:06:05: [FAKEMETA] Invalid entity
L 06/23/2015 - 18:06:05: [AMXX] Run time error 10 (plugin "damager.amxx") (native "pev") - debug not enabled!
L 06/23/2015 - 18:06:05: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Чтоб небыло ошибки,надо заменить
Код:
if(pev_valid(id))

на
Код:
if(is_user_connected(id))


Код:
if(pev(pid, pev_flags) & FL_CLIENT)

на
Код:
if(is_user_connected(pid))


Так?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Han1baL
сообщение 24.6.2015, 8:11
Сообщение #2


Стаж: 11 лет

Сообщений: 233
Благодарностей: 50
Полезность: 30

Лучше скинь весь код
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 24.6.2015, 8:13
Сообщение #3


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Han1baL, так он скинул, первый спойлер
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 24.6.2015, 9:24
Сообщение #4
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

Проверка на флаг
Код:

(get_user_flags(id) & ADMIN_RESERVATION )


чем не устраивает abd? Добавил проверку на флаг но не проверял

Код:

#include <amxmodx>
#include <amxmisc>
#include <fakemeta_util>

#define PLUGIN "Advanced Bullet Damage"
#define VERSION "1.0"
#define AUTHOR "Sn!ff3r"

new g_type, g_enabled, g_recieved, bool:g_showrecieved, g_hudmsg1, g_hudmsg2

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
register_event("HLTV", "on_new_round", "a", "1=0", "2=0")

g_type = register_cvar("amx_bulletdamage","1")
g_recieved = register_cvar("amx_bulletdamage_recieved","1")

g_hudmsg1 = CreateHudSyncObj()
g_hudmsg2 = CreateHudSyncObj()
}

public on_new_round()
{
g_enabled = get_pcvar_num(g_type)
if(get_pcvar_num(g_recieved)) g_showrecieved = true
}

public on_damage(id)
{
if ((g_enabled) && (get_user_flags(id) & ADMIN_RESERVATION))
{
static attacker; attacker = get_user_attacker(id)
static damage; damage = read_data(2)
if(g_showrecieved)
{
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(id, g_hudmsg2, "%i^n", damage)
}
if(is_user_connected(attacker))
{
switch(g_enabled)
{
case 1: {
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_hudmsg1, "%i^n", damage)
}
case 2: {
if(fm_is_ent_visible(attacker,id))
{
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_hudmsg1, "%i^n", damage)
}
}
}
}
}
}



Источник

Отредактировал: ThisIsSparta, - 24.6.2015, 9:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: