Реклама на сервере
Реклама на сервере

Реклама на сервере

Добрый день, многие обращаются с просьбой написать плагин рекламы на сервере, решил небольшой урок по этому поводу написать.

Подключаем нужные нам библиотеки для дальнейшей работы с ними:
Код
#include <amxmodx>
#include <amxmisc>


Добавляем в функцию "plugin_init" таймер "set_task" и подключаем функцию "TaskFunc"
32995 - это уникальный идентификатор, проще говоря ID который будет говорить нам под каким ID запущен таймер, что бы в будущем можно было его легко отключить или отключить в функции "plugin_end"
Код
public plugin_init() set_task(1.0, "TaskFunc", 32995, _, _, "b")


Создаем функцию "TaskFunc", который будет показывать одно и то же сообщение всем игрокам
Код
public TaskFunc(){
   set_hudmessage(0, 255, 0, -1.0, 1.00, 0, 6.0, 2.0, 1.0, 1.0, 3 );   
   show_hudmessage(0, "Группа проекта https://vk.com/gungcz")
}


Удаляем таймер перед выключением или сменой карты
Код
public plugin_end() remove_task(32995)


При желании можно использовать dhud, а для этого подключаем дополнительную библиотеку
Код
#include <dhudmessage>


А так же заменить "set_hudmessage" на "set_dhudmessage" и "show_hudmessage" на "show_dhudmessage"

Урок простой, думаю всем будет полезен в начинании

Vladislav CBeTJIoB написал 2018-02-26 15:39:10
При замене set_hudmessage на set_dhudmessage меняете последнее значение(канал), на false(или true, но во втором случае отправление совершается принудительно, и может вызвать проблемы у клиента, а в случае с false сообщение просто не появится,и проблем у клиента не будет). А вообще реклама в чате гораздо лучше, потому что не засоряет hud каналы, и вызывается реже.
pro100web написал 2018-02-26 15:45:44
в hud как мне известно 4 канала, а в dhud слышал что 8. А проблемы возникнут, если канал занят, описывать ту или иную функцию как работает не стал, так как задача в написании плагина рекламы в виде hud и dhud. Разве я не прав?
Vladislav CBeTJIoB написал 2018-02-26 16:02:47
Прав, но про последнее значение стоило бы сказать. А всё остальное лишь формальности, ведь ты изначально писал статью, чтобы рассказать людям о том, как писать рекламу в hud, dhud, а не учить их скриптингу
pro100web написал 2018-02-26 16:11:17
У меня все каналы строго распределены, я пробовал ставить false и true, но итог был таков, что функция не искала свободные каналы, а пример для записи вырезал с уже готового варианта и не стал менять ничего. Вот как то так
Vladislav CBeTJIoB написал 2018-02-26 16:19:24
Так в dhud нельзя выбирать каналы, можно отправить всего 8 сообщений, и нельзя распределять по каким каналам-какие сообщения показывать. Поэтому, чтобы избавится от накладки сообщений нужно отправлять пустые dhud сообщения, что уже не очень хорошо, но о других решениях я не слыхал.
pro100web написал 2018-02-26 16:21:54
Ах вот оно что, странно как у меня dhud тогда отображается
Vladislav CBeTJIoB написал 2018-02-26 16:24:00
По стандарту последнее значение всегда false, если его не менять
pro100web написал 2018-02-26 16:31:13
у меня dhud в пушках, лазерах и раздатчики, а в других местах hud
sosokedinoroga написал 2018-02-26 14:28:54
Побольше таких подобных уроков
MAMA написал 2018-02-26 14:30:33
Вот тут согласен с тобой.