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

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

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

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

2 страниц V   1 2

Помогите найти плагин

, Плагин показывает hp выше 255
Статус пользователя Rawkfis
сообщение 8.6.2020, 18:47
Сообщение #1
Стаж: 3 года 9 месяцев

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

https://imgur.com/SuL6lSo - как на скриншоте. Буду благодарен.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Chik
сообщение 8.6.2020, 22:17
Сообщение #2
Стаж: 8 лет 4 месяца

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

Цитата(Rawkfis @ 8.6.2020, 18:47) *
https://imgur.com/SuL6lSo - как на скриншоте. Буду благодарен.

/del

Отредактировал: Chik, - 8.6.2020, 22:18
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 8.6.2020, 22:28
Сообщение #3


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

https://forums.alliedmods.net/showthread.php?p=702520
https://c-s.net.ua/forum/topic13793.html?hl=Speedometer
https://c-s.net.ua/forum/topic66542.html

Отредактировал: ThePhoenix, - 8.6.2020, 22:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 9:43
Сообщение #4
Стаж: 3 года 9 месяцев

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

ThePhoenix, Спасибо за спидометры, но мне нужен плагин на HP игрока. Как на скриншоте (зелёный такой).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 10:05
Сообщение #5


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Цитата(Rawkfis @ 9.6.2020, 10:43) *
ThePhoenix, Спасибо за спидометры, но мне нужен плагин на HP игрока. Как на скриншоте (зелёный такой).

Сорри, мой шар предсказания ошибся в том, что ты хотел


Такой плагин можно написать за пару мин.
Это считывание хп игрока и вывод в дхуд, конец. Если никто не поможет, то вечером сделаю

Отредактировал: ThePhoenix, - 9.6.2020, 10:05
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 15:52
Сообщение #6
Стаж: 3 года 9 месяцев

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

ThePhoenix, Я уже несколько дней пытаюсь найти такое (на ru/eng форумах, да и просто на просторах интернета), но не могу никак наткнуться на него. Думаю, будет круто, если кто-то такой маленький плагин сделает. Другие тоже смогут потом скачать, пользоваться.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 17:58
Сообщение #7


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Цитата(Rawkfis @ 9.6.2020, 16:52) *
ThePhoenix, Я уже несколько дней пытаюсь найти такое (на ru/eng форумах, да и просто на просторах интернета), но не могу никак наткнуться на него. Думаю, будет круто, если кто-то такой маленький плагин сделает. Другие тоже смогут потом скачать, пользоваться.

Чуток сам себя разыграл. Думал, что
Код
get_entvar(id, var_health)

Может получить нормальное значение HP, а потом вспомнил за функцию, которая возвращает значения жизней игрока конкретно!
В общем, воть

Ваше пожелание

Код:

#include <amxmodx>

//#define MODE // включено - HUD | закомментировано - DHUD

// - - - - - - - - - - - - - - - - - - - - - - - -
// Настройки

new const color[3] = { 0, 255, 0 } // цвет

new const Float:x = 0.02 // позиция по X
new const Float:y = 0.91 // позиция по Y

new const Float:UPDATE = 5.0 // частота обновлений
new const Float:UPDATE2 = 5.1 // время показа, должно быть больше, чем частота обновлений, чтобы всегда было на экране и обновлялось только

// - - - - - - - - - - - - - - - - - - - - - - - -

new g_iMaxPlayers;

public plugin_init()
{
register_plugin("HP in HUD/DHUD", "1.0", "ThePhoenix")

g_iMaxPlayers = get_maxplayers();

set_task(UPDATE, "HPTask", .flags = "b");
}

public HPTask()
{

for(new id = 1; id < g_iMaxPlayers; id++)
{
#if defined MODE
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.0, UPDATE2, 0.0, 0.4, -1);
show_hudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
#endif
set_dhudmessage(color[0], color[1], color[2], x, y, .holdtime = UPDATE2);
show_dhudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
}
}


Как работает:
Прикрепленное изображение


Все переменные (настройки) можете менять на своё усмотрение (расположение там, цвет и т.д.). Можете расскоментировать MODE и будет маленькими буквами/цифрами, т.е HUD, а не DHUD.

Пользуйтесь ;)

p.s. И не знаю, как вы искали, но я в гугле по запросу HP in HUD, нашёл сразу плагин CSDM HP | AP, т.е там можно было просто вырезать лишнее, но если нужны только жизни, то конечно мой вариант по лучше будет изначально.

Отредактировал: ThePhoenix, - 9.6.2020, 18:01
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:10
Сообщение #8
Стаж: 3 года 9 месяцев

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

ThePhoenix, Спасибо большое за ваш труд. То что надо было, НО... Можно добавить функцию, чтоб надпись "ЖИЗНИ" появлялось только тогда, когда у игрока HP выше 255? (т.е. максимальной в CS).

P.S. Я пытался переделать другие подобные плагины в нечто такое, но я , к сожалению, дилетант в этом деле (только недавно начал работать с такими вещами и пока что учусь).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:11
Сообщение #9


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Rawkfis, для спасибо, есть кнопочка и сейчас сделаю то, что просите.

p.s. ReAPI есть? Или для обычного амхх?

Отредактировал: ThePhoenix, - 9.6.2020, 19:12
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:15
Сообщение #10
Стаж: 3 года 9 месяцев

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

Цитата(ThePhoenix @ 9.6.2020, 21:11) *
Rawkfis, для спасибо, есть кнопочка и сейчас сделаю то, что просите.

p.s. ReAPI есть? Или для обычного амхх?


Обычный AMXX. А где найти эту заветную кнопочку?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:26
Сообщение #11


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Rawkfis, Держите. Версия и с ReAPI и без, зависит от того, закоментирован дефайн или же нет.
код

Код:

#include <amxmodx>

//#define MODE // включено - HUD | закоментировано - DHUD
//#define ReAPI_ON // сервер с ReAPI модулем, если без, закоментировать

#if defined ReAPI_ON
#include <reapi>
#else
#include <fun>
#endif

// - - - - - - - - - - - - - - - - - - - - - - - -

new const color[3] = { 0, 255, 0 } // цвет

new const Float:x = 0.02 // позиция по X
new const Float:y = 0.91 // позиция по Y

new const Float:UPDATE = 1.0 // частота обновлений
new const Float:UPDATE2 = 1.1 // время показа, должно быть больше, чем частота обновлений, чтобы всегда было на экране и обновлялось только

// - - - - - - - - - - - - - - - - - - - - - - - -

new g_iMaxPlayers;

public plugin_init()
{
register_plugin("HP in HUD/DHUD", "1.0", "ThePhoenix")

register_clcmd("hp", "test_hp");

g_iMaxPlayers = get_maxplayers();
set_task(UPDATE, "HPTask", .flags = "b");
}

public test_hp(id)
set_user_health(id, 300);

public HPTask()
{
for(new id = 1; id < g_iMaxPlayers; id++)
{
#if defined ReAPI_ON
if(Float:get_entvar(id, var_health) < 255.0) {
//log_amx("reapi on");
return;
}
#else
if(get_user_health(id) < 255) {
//log_amx("reapi off");
return;
}
#endif

#if defined MODE
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.0, UPDATE2, 0.0, 0.4, -1);
show_hudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
#endif
set_dhudmessage(color[0], color[1], color[2], x, y, .holdtime = UPDATE2);
show_dhudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
}
return;
}




кнопочка:

Прикрепленное изображение


p.s. может новорегам недоступна, конечно, не помню.

Отредактировал: ThePhoenix, - 9.6.2020, 19:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:29
Сообщение #12
Стаж: 3 года 9 месяцев

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

ThePhoenix, А, всё. Спасибо за кнопочку. Но мне он не показывает.

Отредактировал: Rawkfis, - 9.6.2020, 19:32
Прикрепленные файлы:
Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:38
Сообщение #13


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Цитата(Rawkfis @ 9.6.2020, 20:29) *
ThePhoenix, А, всё. Спасибо за кнопочку. Но мне он не показывает.

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

блин, не удалил функции для теста :D
Так будет лучше, чтобы случайно у Вас не появились чудаки с 300 хп когда захотят))
Код:

#include <amxmodx>

//#define MODE // включено - HUD | закоментировано - DHUD
//#define ReAPI_ON // сервер с ReAPI модулем, если без, закоментировать

#if defined ReAPI_ON
#include <reapi>
#else
#include <fun>
#endif

// - - - - - - - - - - - - - - - - - - - - - - - -

new const color[3] = { 0, 255, 0 } // цвет

new const Float:x = 0.02 // позиция по X
new const Float:y = 0.91 // позиция по Y

new const Float:UPDATE = 1.0 // частота обновлений
new const Float:UPDATE2 = 1.1 // время показа, должно быть больше, чем частота обновлений, чтобы всегда было на экране и обновлялось только

// - - - - - - - - - - - - - - - - - - - - - - - -

new g_iMaxPlayers;

public plugin_init()
{
register_plugin("HP in HUD/DHUD", "1.0", "ThePhoenix")

g_iMaxPlayers = get_maxplayers();
set_task(UPDATE, "HPTask", .flags = "b");
}

public HPTask()
{
for(new id = 1; id < g_iMaxPlayers; id++)
{
#if defined ReAPI_ON
if(Float:get_entvar(id, var_health) < 255.0)
return;
#else
if(get_user_health(id) < 255)
return;
#endif

#if defined MODE
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.0, UPDATE2, 0.0, 0.4, -1);
show_hudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
#endif
set_dhudmessage(color[0], color[1], color[2], x, y, .holdtime = UPDATE2);
show_dhudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
}
return;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:38
Сообщение #14
Стаж: 3 года 9 месяцев

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

ThePhoenix, Но я добавил комментарий вам на страничке профиля. Спасибо ещё раз. Как появится у меня такая функция - обязательно дам свой like.

P.S. Было бы обидно, да. :D

Отредактировал: Rawkfis, - 9.6.2020, 19:39
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:39
Сообщение #15


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Цитата(Rawkfis @ 9.6.2020, 20:38) *
ThePhoenix, Но я добавил комментарий вам на страничке профиля. Спасибо ещё раз. Как появиться у меня такая функция - обязательно дам свой like.

Как вариант, потом Вы можете поставить лайк здесь:
https://c-s.net.ua/forum/topic65607.html?vi...t&p=1120751
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:44
Сообщение #16
Стаж: 3 года 9 месяцев

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

ThePhoenix, Если вы так хотите - поставлю там. Ещё один вопрос: скопировал код, потом в текстовый файл - сменил на sma, но компилятор говорит:
hpbar.sma(54) : error 017: undefined symbol "set_dhudmessage"
hpbar.sma(54) : warning 215: expression has no effect
hpbar.sma(54) : error 001: expected token: ";", but found ")"
hpbar.sma(54) : error 029: invalid expression, assumed zero
hpbar.sma(54) : fatal error 107: too many error messages on one line

P.S. пробовал на 1.8.2.

Отредактировал: Rawkfis, - 9.6.2020, 19:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:45
Сообщение #17


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Rawkfis, сорян, забыл, что там ещё инклюд нужен на амхх 1.8.2 :D Ща добавлю поддержку
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 19:55
Сообщение #18


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

В вашем случае, используйте этот вариант:
Код:

#include <amxmodx>
#include <dhudmessage>

//#define MODE // включено - HUD | закоментировано - DHUD
//#define ReAPI_ON // сервер с ReAPI модулем, если без, закоментировать

#if defined ReAPI_ON
#include <reapi>
#else
#include <fun>
#endif

// - - - - - - - - - - - - - - - - - - - - - - - -

new const color[3] = { 0, 255, 0 } // цвет

new const Float:x = 0.02 // позиция по X
new const Float:y = 0.91 // позиция по Y

new const Float:UPDATE = 1.0 // частота обновлений
new const Float:UPDATE2 = 1.1 // время показа, должно быть больше, чем частота обновлений, чтобы всегда было на экране и обновлялось только

// - - - - - - - - - - - - - - - - - - - - - - - -

new g_iMaxPlayers;

public plugin_init()
{
register_plugin("HP in HUD/DHUD", "1.0", "ThePhoenix")

g_iMaxPlayers = get_maxplayers();
set_task(UPDATE, "HPTask", .flags = "b");
}

public HPTask()
{
for(new id = 1; id < g_iMaxPlayers; id++)
{
#if defined ReAPI_ON
if(Float:get_entvar(id, var_health) < 255.0)
return;
#else
if(get_user_health(id) < 255)
return;
#endif

#if defined MODE
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.0, UPDATE2, 0.0, 0.4, -1);
show_hudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
#endif
set_dhudmessage(color[0], color[1], color[2], x, y, .holdtime = UPDATE2);
show_dhudmessage(id, "ЖИЗНИ: %i", get_user_health(id));
}
return;
}


Не делал я проверку на версию амхх ещё ни разу, так что, кто будет юзать 1.8.3 и выше, тому пару постов выше версия, кто нет, тому этот вариант. (я просто не найду проверку на amxx, а по памяти смутно помню, что там пишется :D)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rawkfis
сообщение 9.6.2020, 19:57
Сообщение #19
Стаж: 3 года 9 месяцев

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

ThePhoenix, Спасибо, теперь всё работает. :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThePhoenix
сообщение 9.6.2020, 20:01
Сообщение #20


Стаж: 9 лет 3 месяца

Сообщений: 2723
Благодарностей: 533
Полезность: 40

Цитата(Rawkfis @ 9.6.2020, 20:57) *
ThePhoenix, Спасибо, теперь всё работает. :)

то чувство, когда знал, как делать проверку, но забыл, как именно пишется переменная :D
Код:

#if AMXX_VERSION_NUM < 183
#include <dhudmessage>
#endif


А я писал
Код:

#if AMXX_VERSION < 183
#include <dhudmessage>
#endif

crazy.gif

Отредактировал: ThePhoenix, - 9.6.2020, 20:31
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: