Обучение и помощь по скриптингу для: wellasgood

Статус
В этой теме нельзя размещать новые ответы.

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
RockTheStreet, зато как по обсирать первые)
 

RockTheStreet

Саппорт года
Сообщения
1,743
Реакции
345
Помог
40 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Ну это ты так видишь.
Хотя, мне нравится что ты думаешь, мол ты постоянно в говне. Продолжай в том же духе.
RockTheStreet ,ну я кончено могу оставить плагин molotov как есть, но хотелось бы сделать этот момент. (для юзверов)
14 Май 2021
скорость получения урона игроком не должно зависить от скорости анимации огня, по хорошему, а то игроки ставят хотят что бы быстрей дамаг наносился от огня, а анимация очень быстрая становится из-за этого и и смотрится плохо.
 
Сообщения
2,288
Реакции
1,739
Помог
31 раз(а)
wellasgood, ты бы лучше привел код в порядок и исправил текущие ошибки прежде чем что-то новое добавлять. И не надо мне про деньги за доработку говорить, так любой скриптер бы гавно писал специально, а потом деньги просил.
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Pokemoshka , это то понятно, но хотелось бы решить сначало важные вопросы)
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
В общем суть в том, что нужно разделить 1 событие на 2 (скорость анимации и скорость получения урона игроку)

В плагине есть такая строка кода:

C++:
 if(pev_valid(iEntity)) set_entvar(iEntity, var_dmgtime, flCurTime + eCvarData[DMG_TICK])
Тут выставляется скорость анимации огня +скорость получения урона (тикрейт)



ВОПРОС


Как сделать это событие в 2 разных, что бы одно от другого не зависело) ?

Т.е если ставить очень малое значение, то анимация становится ужасно стремной.
Актуально, не могу понять как решить.
 
Сообщения
225
Реакции
90
Помог
1 раз(а)
wellasgood, сделать аниму огня не зависимой от квара, а нанесение урона тачем, синком, таском определять.
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
irrumabo_me_nomen, ну как вариант, осталось только что-бы не было костылем сделать))

по идее это и так в синке глобальном

C++:
@FireMolotov_Think_Post(iEntity)
{
    if(is_nullent(iEntity)) return

    if(get_entvar(iEntity, var_chain) != OBJECT_MOLOTOV_FIRE) return

    new Float:flCurTime = get_gametime(), Float:vecOrigin[3]
    get_entvar(iEntity, var_origin, vecOrigin)

    if(eCvarData[EXTINGUISHING])
    {
        if(CheckGrenade(iEntity))
        {
            set_task(eCvarData[EXTINGUISHING_TIME], "@KillFireEnt", iEntity)
        }
    }

    if(Float:get_entvar(iEntity, var_teleport_time) <= flCurTime)
    {
        TE_SetupSmoke(vecOrigin, Float:{ 0.0, 0.0, 0.0 }, g_iModelIndex[3], 7, 15)
        set_entvar(iEntity, var_flags, FL_KILLME)
    }

    new iOwner = get_entvar(iEntity, var_owner)

    if(!is_user_connected(iOwner)) return

    if(Float:get_entvar(iEntity, var_dmgtime) <= flCurTime)
    {
        if(pev_valid(iEntity)) set_entvar(iEntity, var_dmgtime, flCurTime + eCvarData[DMG_TICK])

        TE_SetupExplosion(vecOrigin, Float:{ 0.0, 0.0, 24.0 }, g_iModelIndex[2], 8, 20, TE_EXPLFLAG_NODLIGHTS | TE_EXPLFLAG_NOSOUND | TE_EXPLFLAG_NOPARTICLES)

        static iVictim = -1
        static Float:flHealth

        while((iVictim = engfunc(EngFunc_FindEntityInSphere, iVictim, vecOrigin, eCvarData[RADIUS])))
        {
            if(!is_user_alive(iVictim)) continue

            if(!eCvarData[DMG_TM])
            {
                if(iOwner != iVictim && get_member(iOwner, m_iTeam) == get_member(iVictim, m_iTeam)) continue
            }

            flHealth = Float:get_entvar(iVictim, var_health)

            if(flHealth <= eCvarData[DMG])
            {
                ExecuteHamB(Ham_Killed, iVictim, iOwner, 0)
            }
            else
            {
                set_entvar(iVictim, var_health, flHealth - eCvarData[DMG])
                rh_emit_sound2(iVictim, 0, CHAN_STATIC, "player/pl_pain2.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
            }
        }
    }

    new iFireNum = get_entvar(iEntity, var_iuser1)

    if(iFireNum < 15)
    {
        new Float:flFraction, Float:vecStart[3], Float:vecEnd[3], Float:vecAngles[3], Float:vecViewForward[3], Float:vecPlaneNormal[3]

        get_entvar(iEntity, var_vuser1, vecPlaneNormal)

        vecAngles[0] = random_float(-45.0, -135.0)
        vecAngles[1] = random_float(0.0, 360.0)

        engfunc(EngFunc_MakeVectors, vecAngles)
        global_get(glb_v_forward, vecViewForward)

        for(new i = 0; i < 3; i++)
        {
            vecStart[i] = vecOrigin[i] + vecPlaneNormal[i] * 64.0
            vecEnd[i] = vecStart[i] + vecViewForward[i] * 128.0
        }

        engfunc(EngFunc_TraceLine, vecStart, vecEnd, IGNORE_MONSTERS, iEntity, 0)

        get_tr2(0, TR_flFraction, flFraction)
        get_tr2(0, TR_vecEndPos, vecEnd)
        get_tr2(0, TR_vecPlaneNormal, vecPlaneNormal)

        if(flFraction >= 1.0 || vecPlaneNormal[2] == -1.0)
        {
            set_entvar(iEntity, var_iuser1, iFireNum + 1)
            Molotov_CreateDebris(iEntity, vecEnd)
        }
    }
}
Видишь тут завязано так, что оно одно действует сразу и на скорость того и скорость другого (анимки и урона)

Делать дополнительный синк и тп, а как оно должно быть тогда? не понимаю
14 Май 2021
нужно по итогу, что бы сделать 2 квара разных, отвечающих за скорость анимки огня и скорость урона от огня
 
Последнее редактирование:
Сообщения
1,697
Реакции
1,510
Помог
25 раз(а)
Делать дополнительный синк и тп, а как оно должно быть тогда? не понимаю
Можно завести ещё одну переменную со временем (лучше использовать entvar), и делать как dmgtime делаешь.
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
fl0wer , так свойство то одно на ентитю присваевается, и это свойство действует на то и на другое (скорости)
 
Сообщения
1,697
Реакции
1,510
Помог
25 раз(а)
wellasgood, ну синк часто сделай, а переменные как время действия придет проверяй.
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
fl0wer , кажется понял :D
14 Май 2021
Я просто еще болею, не могу сосредоточиться и тп, сконцентрироваться и думать.
 

wellasgood

Кидала, мошенник, вымогатель
Сообщения
1,409
Реакции
182
Помог
2 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Всем спасибо за помощь. Получилось сделать как запланировал.
 
Статус
В этой теме нельзя размещать новые ответы.

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

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