Русское сообщество по скриптингу

Привязка по IP + ColorChat Message

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Привязка по IP + ColorChat Message

Сообщение smetana » 03 фев 2019, 20:36

Всем привет, есть метод привязки по IP+Порт ( Проверял все робит )
Но есть проблемка, не могу прикрутить сообщение колорчата о информировании что плагин не работает!
Сам код естественно:
Код: Выделить всё
#define PLUGIN_IP        "178.124.130.7:27099" 
#define PLUGIN_ERROR    "This plugin is Private!"

public plugin_init()
{
    new szIP[32];

    get_user_ip(0, szIP, 31, 1);

    if (!equal(szIP, PLUGIN_IP) && !equal(szIP, PLUGIN_IP, 8))

        set_fail_state(PLUGIN_ERROR);
    ColorChat(0, "^1[^4Vipmenu Error^1] Работа плагина^1 остановлена^4 купить можно тут^1 vk.com");
}


Думаю сделать в место #define PLUGIN_ERROR вот так:
Код: Выделить всё
public plugin_stop_message
{
    ColorChat(0, "^1[^4Vipmenu Error^1] Работа плагина^1 остановлена^4 купить можно тут^1 vk.com/");

Но как зарегистрировать public plugin_stop_message/ да и вовсе чтобы работало всё!
P.S Спасибки)
Аватара пользователя
smetana
 
Сообщения: 37
Зарегистрирован: 18 фев 2016, 05:54
Благодарил (а): 4 раз.
Поблагодарили: 1 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Привязка по IP + ColorChat Message

Сообщение MrJunior » 04 фев 2019, 02:52

Вывод сообщения идёт при старте плагина, в этот момент ни один из игроков ещё не подключен, вывод в консоль сервера - server_print
Регистрация паблика:
Код: Выделить всё
public public_name(argument1, argument2)
{
    // code
Аватара пользователя
MrJunior
Скриптер
 
Сообщения: 146
Зарегистрирован: 21 сен 2016, 19:46
Откуда: localhost
Благодарил (а): 3 раз.
Поблагодарили: 31 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn | Web | Lua

Re: Привязка по IP + ColorChat Message

Сообщение smetana » 04 фев 2019, 13:35

MrJunior писал(а):Вывод сообщения идёт при старте плагина, в этот момент ни один из игроков ещё не подключен, вывод в консоль сервера - server_print
Регистрация паблика:
Код: Выделить всё
public public_name(argument1, argument2)
{
    // code
}

так чтоле?
Код: Выделить всё
#define PLUGIN_IP        "178.124.130.7:27099" 
#define PLUGIN_ERROR    "This plugin is Private!"

public plugin_init()
{
    new szIP[32];

    get_user_ip(0, szIP, 31, 1);

    if (!equal(szIP, PLUGIN_IP) && !equal(szIP, PLUGIN_IP, 8))

        set_fail_state(PLUGIN_ERROR);
}

set_task(1.0"plugin_stop_message"0)

public plugin_stop_message(set_fail_state)
{
    ColorChat(0, "^1[^4Vipmenu Error^1] Работа плагина^1 остановлена^4 купить можно тут^1 vk.com/");
}
 
Закрыть

чёт я с утра вообще не доганяю!

Добавлено спустя 1 минуту 17 секунд:
а что именно является аргументом в моём примере?
Аватара пользователя
smetana
 
Сообщения: 37
Зарегистрирован: 18 фев 2016, 05:54
Благодарил (а): 4 раз.
Поблагодарили: 1 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Привязка по IP + ColorChat Message

Сообщение gamingEx » 04 фев 2019, 14:05

smetana, событие plugin_init вызывается в момент старта плагина, грубо говоря, при старте карты. В этот момент на сервере никого нет и не может быть. Кому ты собрался сообщение в чат отправлять? Посылай это сообщение в консоль сервера.

P.S.: Привязка говно. Обходится одной командой net_address, изменив IP адрес сервера.
:dance2: :dance2: :dance2:
Аватара пользователя
gamingEx
 
Сообщения: 121
Зарегистрирован: 07 окт 2017, 20:48
Благодарил (а): 0 раз.
Поблагодарили: 19 раз.
Опыт программирования: Больше трех лет
Языки программирования: Swift, C++, PHP, Ruby, JS

Re: Привязка по IP + ColorChat Message

Сообщение smetana » 04 фев 2019, 15:37

gamingEx писал(а):smetana, событие plugin_init вызывается в момент старта плагина, грубо говоря, при старте карты. В этот момент на сервере никого нет и не может быть. Кому ты собрался сообщение в чат отправлять? Посылай это сообщение в консоль сервера.

P.S.: Привязка говно. Обходится одной командой net_address, изменив IP адрес сервера.

Хорошо а скажите можно ли с этото что нибудь сделать:
Код: Выделить всё
#include <amxmodx>

new const PLUGIN[] = "server1ip"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Prayer"

new const szIp[] = "IP на котором должен работать" 

public plugin_init
()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    set_task(3.0, "CheckIpServer")
}

public CheckIpServer()
{
    new serverIp[32], left[32], right[32]
    
    get_cvar_string
("net_address", serverIp, sizeof serverIp -1)
    
    strtok
(serverIp, left, sizeof left -1, right, sizeof right -1, ':')    
    copy
(serverIp, 31, left)
    
    if
( !equal(left, szIp) )
    {
        log_to_file("ERROR_README.txt", "Warning!!! Server cannot work with ip %s", left)
        log_to_file("ERROR_README.txt", "Warning!!! Server cannot work with ip %s", left)
        log_to_file("ERROR_README.txt", "Warning!!! Server cannot work with ip %s", left)
        server_print("Warning!!! Server cannot work with ip %s", left)
        server_print("Warning!!! Server cannot work with ip %s", left)
        server_print("Warning!!! Server cannot work with ip %s", left)
        set_task(2.0, "cmdQuit")
    }
    else if(equal(left, szIp)) server_print("IP %s resolved !", left)
}

public cmdQuit() server_cmd("quit")


Добавлено спустя 2 минуты 22 секунды:
только в место server_cmd("quit") ->>> pause(a) + set_task
Аватара пользователя
smetana
 
Сообщения: 37
Зарегистрирован: 18 фев 2016, 05:54
Благодарил (а): 4 раз.
Поблагодарили: 1 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Привязка по IP + ColorChat Message

Сообщение Vaqtincha » 04 фев 2019, 16:08

smetana, изи обойти. Лучшее решение это: проверка SN удалённо. (хотя тоже можно обойти, но сложнее)
админгандонсоси
Аватара пользователя
Vaqtincha
 
Сообщения: 277
Зарегистрирован: 28 мар 2018, 15:05
Забанен
Благодарил (а): 8 раз.
Поблагодарили: 53 раз.


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 11