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

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

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

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

нужно переделать плагин vampire.amxx

orchuk
сообщение 23.12.2013, 13:07
Сообщение #1
Стаж: 13 лет

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

Всем привет у меня на паблике стоит плагин vampire.amxx
мне от него не нужно добавления HP мне нужен только эффект синего экрана (это я настроил кварами)
возникла проблема как убрать HUD сообщение которое выскакивает сверху экрана (Healed +0 hp)
Исходник
/*
* http://games.qwerty.ru
*
* AmxModX
* Vampire plugin
* by Shalfey
*
* CVars
* amx_vampire_hp - hp add for kill
* amx_vampire_hp_hs - hp add for kill in head
* amx_vampire_max_hp - max player hp
*
* Players gets HP for kills.
*/
#include <amxmodx>
#include <fun>

#define PLUGIN_VERSION "1.0c"

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("Vampire", PLUGIN_VERSION, "Shalfey")

health_add = register_cvar("amx_vampire_hp", "0")
health_hs_add = register_cvar("amx_vampire_hp_hs", "0")
health_max = register_cvar("amx_vampire_max_hp", "100")

register_event("DeathMsg", "hook_death", "a", "1>0")
}

public hook_death()
{
// Killer id
nKiller = read_data(1)

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)

// Updating Killer HP
nKiller_hp = get_user_health(nKiller)
nKiller_hp += nHp_add

// Maximum HP check
if (nKiller_hp > nHp_max) nKiller_hp = nHp_max

set_user_health(nKiller, nKiller_hp)

// Hud message "Healed +15/+40 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)

// Screen fading
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(0)
write_byte(0)
write_byte(200)
write_byte(75)
message_end()

}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Bambuc
сообщение 23.12.2013, 13:10
Сообщение #2


Стаж: 13 лет

Сообщений: 1743
Благодарностей: 577
Полезность: 593

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

тут Damager и синий экран при каждом убийстве,Если подойдет бери

Код:
////////////////////////////////////
// Amx_Killer //
// by Xhonor for stefkone //
// Skype: xhonor_39 //
////////////////////////////////////

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <dhudmessage>
#include <fakemeta>
#include <cstrike>

#define PLUGIN "Amx_Killer"
#define VERSION "1.1"
#define AUTHOR "Xhonor"
#pragma tabsize 0

#define ICON_SHOW 1
#define ICON_HIDE 0

new kill_num[33]
new gMsgID

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

register_event( "DeathMsg", "hook_death", "a", "1>0" )
RegisterHam( Ham_TakeDamage,"player","damager",0 )

RegisterHam(Ham_Killed, "player", "ham_PlayerKilled")
RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawned_Post", 1);

gMsgID = get_user_msgid("StatusIcon")
}

public ham_PlayerSpawned_Post(id)
{
if (is_user_alive(id))
{
ammo_hud(id, 0)
kill_num[id] = 0
ammo_hud(id, 1)
}
}

public ham_PlayerKilled(victim, attacker)
{
static selfkill;

selfkill = (victim == attacker || !is_user_connected(attacker)) ? true : false;

if(!selfkill)
{
ammo_hud(attacker, 0)
kill_num[attacker] += 1
ammo_hud(attacker, 1)
}
}

ammo_hud(id, sw)
{
if(is_user_bot(id) || !is_user_alive(id))
return

new s_sprite[33]
format(s_sprite, 32, "number_%d", kill_num[id])
if(sw && is_user_alive(id))
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_SHOW )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
} else {
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}

if(kill_num[id] <= 0 && is_user_alive(id))
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}
}

public hook_death()
{
new iKiller = read_data(1)
new iVictim = read_data(2)

if(is_user_alive(iKiller))
{
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, iKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(30)
write_byte(144)
write_byte(255)
write_byte(75)
message_end()
}
new s_sprite[33]
format(s_sprite, 32, "number_%d", kill_num[iVictim])

message_begin( MSG_ONE, gMsgID, {0,0,0}, iVictim )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}

public damager(victim, inflicator, attacker, Float:damage)
{
if(!is_user_connected(attacker))
return;

if(victim == attacker || !victim)
return;

if(is_user_alive(attacker))
{
if(damage > 0)
{
if(cs_get_user_team(attacker) == cs_get_user_team(victim))
return;

set_dhudmessage(30, 144, 255, -0.49, -0.51, 0, 0.01, 0.01)
show_dhudmessage(attacker, " * ")
}
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
orchuk
сообщение 23.12.2013, 13:26
Сообщение #3
Стаж: 13 лет

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

Цитата(Bambuc @ 23.12.2013, 13:10) *
тут Damager и синий экран при каждом убийстве,Если подойдет бери

Код:
////////////////////////////////////
// Amx_Killer //
// by Xhonor for stefkone //
// Skype: xhonor_39 //
////////////////////////////////////

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <dhudmessage>
#include <fakemeta>
#include <cstrike>

#define PLUGIN "Amx_Killer"
#define VERSION "1.1"
#define AUTHOR "Xhonor"
#pragma tabsize 0

#define ICON_SHOW 1
#define ICON_HIDE 0

new kill_num[33]
new gMsgID

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

register_event( "DeathMsg", "hook_death", "a", "1>0" )
RegisterHam( Ham_TakeDamage,"player","damager",0 )

RegisterHam(Ham_Killed, "player", "ham_PlayerKilled")
RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawned_Post", 1);

gMsgID = get_user_msgid("StatusIcon")
}

public ham_PlayerSpawned_Post(id)
{
if (is_user_alive(id))
{
ammo_hud(id, 0)
kill_num[id] = 0
ammo_hud(id, 1)
}
}

public ham_PlayerKilled(victim, attacker)
{
static selfkill;

selfkill = (victim == attacker || !is_user_connected(attacker)) ? true : false;

if(!selfkill)
{
ammo_hud(attacker, 0)
kill_num[attacker] += 1
ammo_hud(attacker, 1)
}
}

ammo_hud(id, sw)
{
if(is_user_bot(id) || !is_user_alive(id))
return

new s_sprite[33]
format(s_sprite, 32, "number_%d", kill_num[id])
if(sw && is_user_alive(id))
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_SHOW )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
} else {
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}

if(kill_num[id] <= 0 && is_user_alive(id))
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}
}

public hook_death()
{
new iKiller = read_data(1)
new iVictim = read_data(2)

if(is_user_alive(iKiller))
{
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, iKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(30)
write_byte(144)
write_byte(255)
write_byte(75)
message_end()
}
new s_sprite[33]
format(s_sprite, 32, "number_%d", kill_num[iVictim])

message_begin( MSG_ONE, gMsgID, {0,0,0}, iVictim )
write_byte( ICON_HIDE )
write_string( s_sprite )
write_byte( 30 )
write_byte( 144 )
write_byte( 255 )
message_end()
}

public damager(victim, inflicator, attacker, Float:damage)
{
if(!is_user_connected(attacker))
return;

if(victim == attacker || !victim)
return;

if(is_user_alive(attacker))
{
if(damage > 0)
{
if(cs_get_user_team(attacker) == cs_get_user_team(victim))
return;

set_dhudmessage(30, 144, 255, -0.49, -0.51, 0, 0.01, 0.01)
show_dhudmessage(attacker, " * ")
}
}
}

мне бы тот переделать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ETO_BYLO_LETOM
сообщение 23.12.2013, 13:28
Сообщение #4


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

Стаж: 14 лет
Город: Краснодар

Сообщений: 3393
Благодарностей: 4387
Полезность: 805

orchuk,

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)

закоментируй и должно быть как хочешь.


😄
MasterServer.su прозрачнее чем твои окна дома
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 23.12.2013, 13:29
Сообщение #5


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

Стаж: 16 лет

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

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

1) научись нормально выкладывать исходник по тегами code или spawn
иначе валится все разметка отступов и код становится не читаемый
2)
удали строки

Код
// Hud message "Healed +15/+40 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)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
orchuk
сообщение 24.12.2013, 0:02
Сообщение #6
Стаж: 13 лет

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

Цитата(Legenda @ 23.12.2013, 13:29) *
1) научись нормально выкладывать исходник по тегами code или spawn
иначе валится все разметка отступов и код становится не читаемый
2)
удали строки

Код
// Hud message "Healed +15/+40 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)


Спасибо худ убрал
но теперь есть новая проблема (баг)
когда ты под флешкой убиваешь кого-то эффект флешки мгновенно пропадает
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 24.12.2013, 1:02
Сообщение #7


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

Стаж: 16 лет

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

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

Цитата(orchuk @ 24.12.2013, 2:02) *
Спасибо худ убрал
но теперь есть новая проблема (баг)
когда ты под флешкой убиваешь кого-то эффект флешки мгновенно пропадает

это не новая проблема, плагин работает так как задумано
так и должно быть
можно переписать плагин и исправить это
но мне лень просто так возиться
вкратце можно посмотреть плагин no team flash и добавить функционал проверки на "слепоту" игрока с отловом соответствующего события
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Abilai
сообщение 31.1.2014, 19:02
Сообщение #8


Стаж: 12 лет

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

А как убрать синий экран?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 31.1.2014, 19:04
Сообщение #9


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

Стаж: 16 лет

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

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

Цитата(Abilai @ 31.1.2014, 21:02) *
А как убрать синий экран?

удалить

Код:

if(is_user_alive(iKiller))
{
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, iKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(30)
write_byte(144)
write_byte(255)
write_byte(75)
message_end()
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: