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


Фотография

Как отключить скрипт


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

#1 OFFLINE   hamm88

hamm88

    Ефрейтор

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

Отправлено 24 October 2020 - 18:16

Как отключить скрипт который уже начал свою активность.

Что нужно прописать в другом скрипте чтобы перестал функционировать первый.


  • 0

#2 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 24 October 2020 - 18:45

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, и

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, возвращают

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, который можно передать

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, чтобы остановить работающий сценарий.


  • 0

#3 OFFLINE   hamm88

hamm88

    Ефрейтор

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

Отправлено 24 October 2020 - 19:12

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, и

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, возвращают

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, который можно передать

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, чтобы остановить работающий сценарий.

не работает. данными командами скрипт запустить можно. Но какой прервать запущенный? нет. 


  • 0

#4 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 24 October 2020 - 19:15

hamm88, странно, судя по документации, должно работать, у меня работает, плюс если бы не работало, то я бы так и не отвечал. Значит, проблема в неправильном использовании, так что предоставь код, -- посмотрим.


  • 0

#5 OFFLINE   hamm88

hamm88

    Ефрейтор

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

Отправлено 24 October 2020 - 19:15

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, и

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, возвращают

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, который можно передать

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

, чтобы остановить работающий сценарий.

в скрипте условие которое я хочу отменить в нужный мне момент со следующим скриптом

 

waitUntil {   
        sleep 0;    
        (playing1 distance sergeant1) >= 50
    };
 
чтобы я мог удалится от объекта.

  • 0

#6 OFFLINE   hamm88

hamm88

    Ефрейтор

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

Отправлено 24 October 2020 - 19:22

_handle = execVM "test.sqf"; этот не отменяет

 

_handle =

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

{

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

_handle } этот запускает

 

а какой код прекращает скрипт досрочно без последующих действий я фиг знает


  • 0

#7 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 24 October 2020 - 19:30

в скрипте условие которое я хочу отменить в нужный мне момент со следующим скриптом   waitUntil {            sleep 0;             (playing1 distance sergeant1) >= 50     };   чтобы я мог удалится от объекта.

Лучше, наверное, использовать глобальную переменную:

waitUntil {
    // Нет смысла писать "sleep 0;"

    (!(isNil "allowCheck") and { !allowCheck }) or { (playing1 distance sergeant1) >= 50 }
};

if ((isNil "allowCheck") or allowCheck) then {
    ...
};

Если переменной нет или она равна true, то будет проверяться второе условие в waitUntil, а если будет и будет равна false, то второе условие проверяться не будет.


_handle = execVM "test.sqf"; этот не отменяет
 
_handle = player execVM "test.sqf"; waitUntil { scriptDone _handle } этот запускает
 
а какой код прекращает скрипт досрочно без последующих действий я фиг знает

Не знаю, у меня всё работает. Может, в test.sqf ещё что-то запускается? Если да, то terminate это уже не остановит.


  • 0

#8 OFFLINE   hamm88

hamm88

    Ефрейтор

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

Отправлено 24 October 2020 - 19:42

 

в скрипте условие которое я хочу отменить в нужный мне момент со следующим скриптом   waitUntil {            sleep 0;             (playing1 distance sergeant1) >= 50     };   чтобы я мог удалится от объекта.

Лучше, наверное, использовать глобальную переменную:

waitUntil {
    // Нет смысла писать "sleep 0;"

    (!(isNil "allowCheck") and { !allowCheck }) or { (playing1 distance sergeant1) >= 50 }
};

if ((isNil "allowCheck") or allowCheck) then {
    ...
};

Если переменной нет или она равна true, то будет проверяться второе условие в waitUntil, а если будет и будет равна false, то второе условие проверяться не будет.


_handle = execVM "test.sqf"; этот не отменяет
 
_handle = player execVM "test.sqf"; waitUntil { scriptDone _handle } этот запускает
 
а какой код прекращает скрипт досрочно без последующих действий я фиг знает

Не знаю, у меня всё работает. Может, в test.sqf ещё что-то запускается? Если да, то terminate это уже не остановит.

 

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

 

waitUntil {   
        sleep 0;    
        (playing1 distance sergeant1) >= 30
    }; 
sergeant1 SideChat localize "@STR_Dialogues1";
sleep 3;
playing1 SideChat localize "@STR_Dialogues1_0";
 
waitUntil {   
        sleep 0;    
        (playing1 distance sergeant1) >= 50
    };
 
sergeant1 SideChat localize "@STR_Dialogues1_1";
sleep 5;
end3=true;

  • 0

#9 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 25 October 2020 - 12:58

hamm88, ну, что я могу сказать, надо отлаживать. 


  • 0




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