dosinabox / g2nr_unofficial_update

Исходники скриптов, релизы, хотфиксы и тестовые версии неофициального обновления для игры "Готика 2: Ночь Ворона".
https://worldofplayers.ru/threads/36817
The Unlicense
13 stars 1 forks source link

B_StartOtherRoutine у мёртвых НПС #385

Closed Kor-Angar closed 2 years ago

Kor-Angar commented 2 years ago

Мёртвые НПС дёргаются при смене расписания так как сила скрипта B_StartOtherRoutine сначала их поднимает , а потом делает проверку на то мертвы они или нет.

func void B_StartOtherRoutine(var C_Npc slf,var string newRoutine)
{
    AI_Standup(slf);
    if(Hlp_GetInstanceID(self) != Hlp_GetInstanceID(slf))
    {
        if(Hlp_IsValidNpc(slf) && !Npc_IsDead(slf))
        {
            Npc_ExchangeRoutine(slf,newRoutine);
            AI_ContinueRoutine(slf);
        };
    }
    else
    {
        Npc_ExchangeRoutine(slf,newRoutine);
    };
};

Ты на это многократно обращала внимания на моих стримах во время диалога с Эстебаном. полагаю что AI_Standup(slf); можно просто пронести под проверку и ешё раз продублировать после else.

func void B_StartOtherRoutine(var C_Npc slf,var string newRoutine)
{
    AI_Standup(slf);
    if(Hlp_GetInstanceID(self) != Hlp_GetInstanceID(slf))
    {
        if(Hlp_IsValidNpc(slf) && !Npc_IsDead(slf))
        {
            AI_Standup(slf);
            Npc_ExchangeRoutine(slf,newRoutine);
            AI_ContinueRoutine(slf);
        };
    }
    else
    {
        AI_Standup(slf);
        Npc_ExchangeRoutine(slf,newRoutine);
    };
};
dosinabox commented 2 years ago

В актуальной версии как раз так: https://github.com/dosinabox/g2nr_unofficial_update/blob/master/PrjGOTHIC/Story/B_Story/B_StartOtherRoutine.d

Kor-Angar commented 2 years ago

зер гуд. а я смотрел в архиве от 2021_09_18_g2nr_unofficial_update-master там еще не исправлен был.