Перейти к содержимому


Фотография

Преследование


Лучший Ответ Schatten , 16 February 2024 - 19:13

Если главный в группе умирает и например снова респавнится то боты не преследуют его дальше а просто бегут к месту смерти игрока.

Судя по исходнику, всё нормально работает -- маршрутная точка обновляется каждые refresh секунд (по умолчанию 10):

While
{
    ({alive _x} count (units _stalkerGroup) > 0) and
    ({alive _x} count (units _stalkedGroup) > 0)
}
Do
{
    if (simulationEnabled (leader _stalkerGroup)) then {
        while {(count (waypoints _stalkerGroup)) > 0} do {deleteWaypoint ((waypoints _stalkerGroup) select 0)};
        _wp = _stalkerGroup addWaypoint [(leader _stalkedGroup),_radius];
    };
    sleep _refresh;

    if (!(isNil _condition) and (_condition)) exitWith {};
};
Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 OFFLINE   11Varan11

11Varan11

    Ефрейтор

  • Пользователи
  • 72 сообщений
  • Откуда:Kostroma

Отправлено 13 February 2024 - 00:41

здравствуйте!Пытаюсь сделать так чтобы боты преследовали группу игроков.И реализовал это так.В файле sqf вписал вот это

 

private _stalking = [g1,Grup1] spawn BIS_fnc_stalk;

 

Все работает до определенного момента.Если главный в группе умирает и например снова респавнится то боты не преследуют его дальше а просто бегут к месту смерти игрока.Как это исправить?


  • 0

#2 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1831 сообщений

Отправлено 16 February 2024 - 19:13   Лучший Ответ

Если главный в группе умирает и например снова респавнится то боты не преследуют его дальше а просто бегут к месту смерти игрока.

Судя по исходнику, всё нормально работает -- маршрутная точка обновляется каждые refresh секунд (по умолчанию 10):

While
{
    ({alive _x} count (units _stalkerGroup) > 0) and
    ({alive _x} count (units _stalkedGroup) > 0)
}
Do
{
    if (simulationEnabled (leader _stalkerGroup)) then {
        while {(count (waypoints _stalkerGroup)) > 0} do {deleteWaypoint ((waypoints _stalkerGroup) select 0)};
        _wp = _stalkerGroup addWaypoint [(leader _stalkedGroup),_radius];
    };
    sleep _refresh;

    if (!(isNil _condition) and (_condition)) exitWith {};
};

  • 0

#3 OFFLINE   Cooler58

Cooler58

    Сержант

  • Пользователи
  • 196 сообщений

Отправлено 24 February 2024 - 21:06

здравствуйте!Пытаюсь сделать так чтобы боты преследовали группу игроков.И реализовал это так.В файле sqf вписал вот это

 

private _stalking = [g1,Grup1] spawn BIS_fnc_stalk;

 

Все работает до определенного момента.Если главный в группе умирает и например снова респавнится то боты не преследуют его дальше а просто бегут к месту смерти игрока.Как это исправить?

привет! как вариант предложу в init.sqf строку: {_x addEventHandler ["Fired",{execVM "Move_last_Place.sqf";}]} forEach (allUnits - playableUnits); Содержание "Move_last_Place.sqf":

enemys=true;

[] spawn {    
while {enemys} do {     
            {
        if ((side _x) in [blufor]) then {
            _x move (getPosATL selectRandom playableUnits);
        };
    } forEach allGroups;
  sleep 20;
};
};
sleep 600;
enemys=false;
Объясняю, что происходит. Враг вас замечает и производит выстрел, обработчик события вызывает скрипт, который работает 10 мин. после последнего выстрела. Если вам удалось спрятаться, то враг вас теряет и не стреляет и, соответственно, не запускает обработчик события, т.е. преследование

  • 0




Яндекс.Метрика