Нужна помощь с установкой скорости

Сообщения
36
Реакции
1
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Не получается установить новую скорость для зомби, хук срабатывает, но скорость ни в какую. Тут всё, что связано со скоростью:
C++:
#define RAGE_SPEED        500.0

new Rage[MAX_PLAYERS+1]

RegisterHookChain(RG_CBasePlayer_ResetMaxSpeed, "@CBasePlayer_ResetMaxSpeed_Post", .post = true);

public @CBasePlayer_ResetMaxSpeed_Post(id){
    if(Rage[id]){
        set_entvar(id, var_maxspeed, RAGE_SPEED);
        client_print(id, print_center, "Скорость повышена!");
    }
}

public Rage_is_Active(id)
{
    if(!is_user_alive(id) || !is_user_connected(id))
        return;

    if(rageAmount[id] < 100 || !zp_get_user_zombie(id))
        return;

    Rage[id] = true;
    rg_reset_maxspeed(id);
    UTIL_ScreenFade(id, {150, 0, 0}, TIME_TO_RAGE, 1.0, 120);

    set_task(TIME_TO_RAGE, "Disable_Rage", id, _, _, "a", 1);
}

public Disable_Rage(id){
    if(!is_user_alive(id) || !is_user_connected(id))
        return;

    Rage[id] = false;
    rageAmount[id] = 0.0;
    rg_reset_maxspeed(id);
}
Я новичёк, поэтому если возможно с объяснением пожалуйста. Для теста сделал пока, чтобы вызывалось через команду в чат.
 
Сообщения
1,082
Реакции
58
Помог
11 раз(а)
Первое что я заметил
Код:
-new Rage[MAX_PLAYERS+1]
+new bool:Rage[MAX_PLAYERS+1]

-if(!is_user_alive(id) || !is_user_connected(id))
+if(!is_user_alive(id))
И не понятно какое значение скрывает этот массив. Выведи значение в консоль или в лог, и посмотри значение rageAmount[id]
Код:
rageAmount[id] < 100
И честно не уверен, может этот хук отловить вот так?
RegisterHookChain(RG_CBasePlayer_ResetMaxSpeed, "@CBasePlayer_ResetMaxSpeed_Pre", .post = false);
 
Последнее редактирование:
Сообщения
893
Реакции
149
Помог
25 раз(а)
Потому что в зомби моде идёт установка скорости в каждом кадре игрока. Скинь сюда свой мод.
 
Сообщения
893
Реакции
149
Помог
25 раз(а)
Code_0xABC, скорость именно в пост режиме выставляется. (насколько я знаю, лично я всегда ставлю в пост режиме)
 
Сообщения
494
Реакции
341
Помог
11 раз(а)
В старом ZP 4.3 идёт установка скорости в Player_PreThink. Поэтому установка любой другой скорости бесполезна
15 Мар 2023
Переписывать нужно главный мод.
 
Сообщения
36
Реакции
1
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
ImmortalAmxx,
15 Мар 2023
Code_0xABC, Спасибо конечно, но твои поправки ничего не дадут, всё выполняется как сам метод, так и таск.
Даже то сообщение "Скорость повышена!" выводится, всё как надо. Просто скорость не устанавливается, новая
15 Мар 2023
bizon, Если не затруднит, можешь скинуть ссылку на новый zp
 

Вложения

Сообщения
494
Реакции
341
Помог
11 раз(а)
cqkjd, да взять хотя бы ZP 5.3, кажется, там скорость поадекватнее выставляется. Но это не точно. Нужно проверять.
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу