Цитата:
Сообщение от CurtisTea
Как работают скрипты вообще? Я так понимаю сперва выполняется 1 строчка 1-го скрипта в сцене, потом 1 строчка 2-го скрипта... 1 строчка последнего, далее 2 строчка 1-го, 2 строчка 2-го и так далее, верно? Что в таком случае делает commandblock? Выполняет строчки своего скрипта, пока не наткнется на commandblock 0 и только тогда переходит к следующему?
|
Совершенно верно. Команды между CommandBlock 1 и CommandBlock 0 выполняются без прерываний на иные задачи. Поэтому с коммандблоками нужно быть внимательным. Чтобы внути не оказался бесконечный цикл, например.
А самый простой способ намертво повесить игру выглядит так:
CommandBlock 1
Wait 100
Поскольку команда ожидания под коммандблоком, игра ждёт окончания ожидания, не переходя к другим задачам. Но к этим другим задачам, как раз относится отсчёт времени ) Игра ждёт, но время не идёт.
Цитата:
Сообщение от CurtisTea
Если инактивится скрипт (командой act_setstate), он останавливается на определенной строчке или его работа сбрасывается полностью (как при смене миссии)? Если его инактивить и заактивить обратно, он запустится с определённой строчки когда он стал неактивным или с самого начала?
|
Хз, но есть очень простой и эффективный способ проверить.
В одном скрипте пишешь:
Dim_Flt 1
Let Flt[0]=0
Label 1
Lel Flt[0]=Flt[0]+1
FreeRide_ScoreSet Flt[0]
Wait 1000
GoTo 1
А из другого скрипта его активируешь/деактивируешь по таймеру или по нажатию какой-нибудь клавиши.
И сразу видно, продолжает скрипт работу после повторной активации или начинает заново.
Экспериментом скриптинг не испортишь )
Последний раз редактировалось KlassenAS; 27.10.2020 в 19:05.
|