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

Ошибка native error (native "get_user_godmode")  [Решено]

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

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

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

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

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

Re: Ошибка native error (native "get_user_godmode")

Сообщение Stimul » 13 янв 2019, 22:55

DeIIyTaT, попробуй поставить выше SetHamParamFloat(4, 0).
Аватара пользователя
Stimul
 
Сообщения: 3582
Зарегистрирован: 04 янв 2012, 19:51
Благодарил (а): 192 раз.
Поблагодарили: 1163 раз.
Опыт программирования: Больше трех лет

Re: Ошибка native error (native "get_user_godmode")

Сообщение DeIIyTaT » 14 янв 2019, 00:03

Пробывал так сделать не работает и даже не работает SetHamParamFloat(4, 0).
Stimul писал(а):DeIIyTaT, попробуй поставить выше SetHamParamFloat(4, 0).


Добавлено спустя 10 минут 6 секунд:
и еще отдельно пробывал тоже стопит игрока
Код: Выделить всё

   RegisterHam
(Ham_TakeDamage"player""player_shock"0)
 


Код: Выделить всё

public player_shock
(victim, inflictor, attacker, Float:damage, damagetype)

{
        if(is_valid_player(attacker) && get_user_godmode(attacker))
        {
            set_pdata_float(victim, m_flPainShock, 1.0, OFFSET_LINUX);
        }
}
//----------------------------------------------------------//
public player_TakeDamage(victim, inflictor, attacker, Float:damage, damagetype)
{
        if(is_valid_player(attacker) && get_user_godmode(attacker))
        {
            SetHamParamFloat(4, 0);
        }
Мой проект CSSURF.RU | SURF Сервера с RPG
amx-x.ru - Вы красавчики спасибо что вы есть ! :thumbs_up
Аватара пользователя
DeIIyTaT
 
Сообщения: 66
Зарегистрирован: 29 авг 2014, 13:53
Благодарил (а): 13 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
html,php

Re: Ошибка native error (native "get_user_godmode")  [Решено]

Сообщение Stimul » 17 янв 2019, 01:28

DeIIyTaT, там, кстати, дробное значение должно быть.
Код: Выделить всё
SetHamParamFloat(4, 0.0); 

Попробуй вообще проверки убрать, будет работать или нет?

Добавлено спустя 2 минуты 52 секунды:
Ага, тебе надо еще один форвард зарегистрировать, только уже пост.
Код: Выделить всё
RegisterHam(Ham_TakeDamage, "player", "player_shock", 1);

в нем убирать замедление, а в пре блокировать урон.

Добавлено спустя 3 минуты 53 секунды:
Код: Выделить всё
RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage_Pre", 0);
RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage_Post", 1); 

Код: Выделить всё
public fw_PlayerTakeDamage_Pre(victiminflictorattackerFloat:damagedamagetype)
    if(
is_valid_player(attacker) && get_user_godmode(attacker))
        
SetHamParamFloat(40.0);

public 
fw_PlayerTakeDamage_Post(victiminflictorattackerFloat:damagedamagetype)
    if(
is_valid_player(attacker) && get_user_godmode(attacker))
        
set_pdata_float(victimm_flPainShock1.0OFFSET_LINUX); 
Аватара пользователя
Stimul
 
Сообщения: 3582
Зарегистрирован: 04 янв 2012, 19:51
Благодарил (а): 192 раз.
Поблагодарили: 1163 раз.
Опыт программирования: Больше трех лет

Re: Ошибка native error (native "get_user_godmode")

Сообщение DeIIyTaT » 17 янв 2019, 22:18

Всё благодарю! БОЛЬШОЕ СПАСИБО :) ! Этот вариант работает ! не стопит и не уронит !





Stimul писал(а):DeIIyTaT, там, кстати, дробное значение должно быть.
Код: Выделить всё
SetHamParamFloat(4, 0.0);

Попробуй вообще проверки убрать, будет работать или нет?

Добавлено спустя 2 минуты 52 секунды:
Ага, тебе надо еще один форвард зарегистрировать, только уже пост.
Код: Выделить всё
RegisterHam(Ham_TakeDamage, "player", "player_shock", 1); 

в нем убирать замедление, а в пре блокировать урон.

Добавлено спустя 3 минуты 53 секунды:
Код: Выделить всё
RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage_Pre", 0);
RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage_Post", 1);

Код: Выделить всё
public fw_PlayerTakeDamage_Pre(victim, inflictor, attacker, Float:damage, damagetype)
    if(is_valid_player(attacker) && get_user_godmode(attacker))
        SetHamParamFloat(4, 0.0);

public fw_PlayerTakeDamage_Post(victim, inflictor, attacker, Float:damage, damagetype)
    if(is_valid_player(attacker) && get_user_godmode(attacker))
        set_pdata_float(victim, m_flPainShock, 1.0, OFFSET_LINUX);
Мой проект CSSURF.RU | SURF Сервера с RPG
amx-x.ru - Вы красавчики спасибо что вы есть ! :thumbs_up
Аватара пользователя
DeIIyTaT
 
Сообщения: 66
Зарегистрирован: 29 авг 2014, 13:53
Благодарил (а): 13 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
html,php

Пред.

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

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

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