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

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

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

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

Помогите переделать плагин

, Проблемка
Статус пользователя vertex627
сообщение 11.10.2011, 18:40
Сообщение #1
Стаж: 14 лет

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

Всем привет!!! У меня на сервере стоит плагин Bullet Damage Around Crosshair. Вот его описание http://makeserver.ru/plaginy/14667-bullet-...-crosshair.html . Плиз за мэйк не тролить, просто на аленях описание на англ. а тут более менее ясно.

так вот плагин очень всем нравится но очень хотелось бы что бы он не показывал урон через двери, стены и .тп.

Есть аналогичные плагины с такой функцией но они очень отвлекают внимание так как цифры всегда под прицелом а тут ненавязчиво вокруг прицела не сильно яркиим шрифтом.

Если у кого есть какие мысли просьба поделится, заранее спасибо.

Вот сам код плагина

Цитата
#include <amxmodx>

#define PLUGIN "Bullet Damage"
#define AUTHOR "ConnorMcLeod"
#define VERSION "0.0.1"

#define MAX_PLAYERS 32

new const Float:g_flCoords[][] =
{
{0.50, 0.40},
{0.56, 0.44},
{0.60, 0.50},
{0.56, 0.56},
{0.50, 0.60},
{0.44, 0.56},
{0.40, 0.50},
{0.44, 0.44}
}

new g_iPlayerPos[MAX_PLAYERS+1]

new g_iMaxPlayers
new g_pCvarEnabled

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

g_pCvarEnabled = register_cvar("bullet_damage", "1")

register_event("Damage", "Event_Damage", "b", "2>0", "3=0")

g_iMaxPlayers = get_maxplayers()
}

public Event_Damage( iVictim )
{
if( get_pcvar_num(g_pCvarEnabled) && (read_data(4) || read_data(5) || read_data(6)) )
{
new id = get_user_attacker(iVictim)
if( (1 <= id <= g_iMaxPlayers) && is_user_connected(id) )
{
new iPos = ++g_iPlayerPos[id]
if( iPos == sizeof(g_flCoords) )
{
iPos = g_iPlayerPos[id] = 0
}
set_hudmessage(0, 40, 80, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 0.1, 2.5, 0.02, 0.02, -1)
show_hudmessage(id, "%d", read_data(2))
}
}
}


Отредактировал: vertex627, - 11.10.2011, 18:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
FixX
сообщение 11.10.2011, 18:49
Сообщение #2
Стаж: 15 лет

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

нашару точно никто не сделает
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 11.10.2011, 18:54
Сообщение #3


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

Стаж: 15 лет

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

Цитата(ZZZombiE @ 11.10.2011, 18:46) *
vertex627,
так и спроси на своем мейксру, понакачаете говница отовсюду и засераете все нытьем своим "а что" "а как"


Зомби, человек же просил не тролить, а ты... он дал ссылку на макесру для того чтобы нам было понятней что за плагин (хотя бы по скриншоту)

вот ссыль на оленей ТЫЦ... что то изменилось?

По существу вопроса я не в курсе ребят... не силен в павне... но если будет проверка на стены двери и прочие препятствия то плагин будет неимоверно большой и будет грузить не по детски сервак... что то типа block wallhack... думаю они вдвоем положат сервер))) так что затея интересная но бредовая)))


UPD: кстати все подобные плагины показывают урон через препятствия...

Отредактировал: f1nik, - 11.10.2011, 18:55
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vertex627
сообщение 11.10.2011, 19:00
Сообщение #4
Стаж: 14 лет

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

Цитата(f1nik @ 11.10.2011, 18:54) *
Зомби, человек же просил не тролить, а ты... он дал ссылку на макесру для того чтобы нам было понятней что за плагин (хотя бы по скриншоту)

вот ссыль на оленей ТЫЦ... что то изменилось?

По существу вопроса я не в курсе ребят... не силен в павне... но если будет проверка на стены двери и прочие препятствия то плагин будет неимоверно большой и будет грузить не по детски сервак... что то типа block wallhack... думаю они вдвоем положат сервер))) так что затея интересная но бредовая)))


UPD: кстати все подобные плагины показывают урон через препятствия...


Не он робит не по типу блок валлхак, он не блокирует игроков, он просто блочит енити или как там правильно, инфу об игроках он не блокирует.

вот пример плагина с возможностью блокировки показателя дамага через предметы

Цитата
/* Plugin generated by AMXX-Studio */

#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)
{
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)
}
}
}
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 11.10.2011, 19:05
Сообщение #5


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

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Цитата
Не он робит не по типу блок валлхак, он не блокирует игроков, он просто блочит енити или как там правильно, инфу об игроках он не блокирует.

щито?

Цитата
вот пример плагина с возможностью блокировки показателя дамага через предметы

поставь его, в чем проблема?


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vertex627
сообщение 11.10.2011, 19:06
Сообщение #6
Стаж: 14 лет

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

Цитата(ZZZombiE @ 11.10.2011, 19:05) *
щито?


поставь его, в чем проблема?



Выглядит он уж очень убого как то не эстетичто чтоли, я поставил все завопили мол че за говно поставил давай старый обратно, этот просто глаза мазолит а старый лищь дополняет картинку так сказать.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 11.10.2011, 19:12
Сообщение #7


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

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

vertex627,
ну может быть ты опишешь что не так?


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 11.10.2011, 19:14
Сообщение #8


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Второй плагин, такой же как и первый, в нем нет никаких проверок.
В твоем случае нужно делать проверку на видимость игрока.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vertex627
сообщение 11.10.2011, 19:24
Сообщение #9
Стаж: 14 лет

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

Цитата(Rejiser @ 11.10.2011, 19:14) *
Второй плагин, такой же как и первый, в нем нет никаких проверок.
В твоем случае нужно делать проверку на видимость игрока.


Ну вот еще похожий плагин http://chatbox.do.am/load/raboty/nice_colo...age_1_0/1-1-0-5


Цитата
/*
Created by sector specially for www.chatbox.do.am
*/

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

new bool: ncd_rec, ncd_msg_1, ncd_msg_2

public plugin_init()
{
register_plugin("Nice Colored Damage", "1.0", "sector")

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

ncd_msg_1 = CreateHudSyncObj()
ncd_msg_2 = CreateHudSyncObj()
}

public ncd_new_round()
{
ncd_rec = true
}

public ncd_damage(i)
{
static attack; attack = get_user_attacker(i)
static damage; damage = read_data(2)
if(ncd_rec)
{
set_hudmessage(255, 0, 0, 0.55, 0.60, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(i, ncd_msg_1, "Вы нанесли себе урон - %i HP^n", damage)
}
if(is_user_connected(attack))
{
if(fm_is_ent_visible(attack, i))
{
set_hudmessage(255, 255, 255, -1.0, 0.60, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attack, ncd_msg_2, "- %i HP^n", damage)
if(get_user_flags(i) & ADMIN_LEVEL_A) // Flag M for Admin
{
set_hudmessage(0, 255, 0, -1.0, 0.60, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attack, ncd_msg_2, "- %i HP^n", damage)
}
if(get_user_flags(i) & ADMIN_LEVEL_H) // Flag T for V.I.P
{
set_hudmessage(255, 215, 0, -1.0, 0.60, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attack, ncd_msg_2, "- %i HP^n", damage)
}
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1049{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Flash
сообщение 11.10.2011, 19:27
Сообщение #10
Стаж: 16 лет

Сообщений: 793
Благодарности: выкл.

пробуй, вполне эстетично ))

Код
#include <amxmodx>
#include <fakemeta>
#include <fakemeta_util>

#define MAX_PLAYERS    32

new const Float:g_flCoords[][] =
{
    { 0.50, 0.40 },
    { 0.56, 0.44 },
    { 0.60, 0.50 },
    { 0.56, 0.56 },
    { 0.50, 0.60 },
    { 0.44, 0.56 },
    { 0.40, 0.50 },
    { 0.44, 0.44 }
}

new g_iPlayerPos[MAX_PLAYERS+1];


public plugin_init()
{
    register_plugin( "Bullet Damage", "0.0.1", "ConnorMcLeod" );

    register_event( "Damage", "Event_Damage", "b", "2>0", "3=0" );
}

public Event_Damage( iVictim )
{
    new id = get_user_attacker( iVictim );

    if ( !is_user_connected( id ) || !fm_is_ent_visible( iVictim, id ) )
    {
        return PLUGIN_CONTINUE;
    }
    
    new iPos = ++g_iPlayerPos[id];

    if ( iPos == sizeof( g_flCoords ) )
    {
        iPos = g_iPlayerPos[id] = 0;
    }

    set_hudmessage( 0, 40, 80, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 0.1, 2.5, 0.02, 0.02, -1 );
    show_hudmessage( id, "%d", read_data( 2 ) );
    
    return PLUGIN_CONTINUE;
}


//обновил 3 :D

Отредактировал: xxxFlasHxxx, - 11.10.2011, 19:40
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vertex627
сообщение 11.10.2011, 19:54
Сообщение #11
Стаж: 14 лет

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

Цитата(xxxFlasHxxx @ 11.10.2011, 20:27) *
пробуй, вполне эстетично ))

Код
#include <amxmodx>
#include <fakemeta>
#include <fakemeta_util>

#define MAX_PLAYERS    32

new const Float:g_flCoords[][] =
{
    { 0.50, 0.40 },
    { 0.56, 0.44 },
    { 0.60, 0.50 },
    { 0.56, 0.56 },
    { 0.50, 0.60 },
    { 0.44, 0.56 },
    { 0.40, 0.50 },
    { 0.44, 0.44 }
}

new g_iPlayerPos[MAX_PLAYERS+1];


public plugin_init()
{
    register_plugin( "Bullet Damage", "0.0.1", "ConnorMcLeod" );

    register_event( "Damage", "Event_Damage", "b", "2>0", "3=0" );
}

public Event_Damage( iVictim )
{
    new id = get_user_attacker( iVictim );

    if ( !is_user_connected( id ) || !fm_is_ent_visible( iVictim, id ) )
    {
        return PLUGIN_CONTINUE;
    }
    
    new iPos = ++g_iPlayerPos[id];

    if ( iPos == sizeof( g_flCoords ) )
    {
        iPos = g_iPlayerPos[id] = 0;
    }

    set_hudmessage( 0, 40, 80, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 0.1, 2.5, 0.02, 0.02, -1 );
    show_hudmessage( id, "%d", read_data( 2 ) );
    
    return PLUGIN_CONTINUE;
}


//обновил 3 :D



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