|
||||||||||||||||
|
||||||||||||||||
|
25.10.2019, 16:32 | #21 | ||
Mafia Modding Crew Сообщений: 687
Репутация: 772
Priest
|
CurtisTea, привет )
Не использовал такую команду, но интересно стало. Видимо, она может сделать объект (полу)прозрачным. В справочнике написано, что у - это номер переменной со значением альфы. То есть не само её значение. Ещё, как я понял, в качестве фрейма надо указывать конкретный объект 4ds-модели, а не всю модель. |
||
цитата |
25.10.2019, 17:27 | #22 | |||
Member Сообщений: 49
Репутация: 40
Detective
|
Цитата:
|
|||
цитата |
10.11.2019, 19:40 | #23 |
Administrator Сообщений: 762
Репутация: N/A
|
Подскажите как настроить горячие клавиши во фрирайде для изменения FOV камеры
edit нашёл: http://mafiascene.com/forum/viewtopi...3ac761e#129859 |
цитата |
23.03.2020, 17:55 | #24 | |||
Banned Сообщений: 2
Репутация: 2
Detective
|
Цитата:
|
|||
цитата |
23.03.2020, 18:49 | #25 | ||
Mafia Modding Crew Сообщений: 687
Репутация: 772
Priest
|
|||
цитата |
Поблагодарил: |
fuchs11 (24.03.2020)
|
27.10.2020, 18:04 | #26 | ||
Member Сообщений: 49
Репутация: 40
Detective
|
Ребя, я тут немного ударился в оптимизацию кода и есть пара вопросов, которые хотелось бы точно выяснить) Заранее извиняюсь если вопросы покажутся нубацкими
Как работают скрипты вообще? Я так понимаю сперва выполняется 1 строчка 1-го скрипта в сцене, потом 1 строчка 2-го скрипта... 1 строчка последнего, далее 2 строчка 1-го, 2 строчка 2-го и так далее, верно? Что в таком случае делает commandblock? Выполняет строчки своего скрипта, пока не наткнется на commandblock 0 и только тогда переходит к следующему? Если инактивится скрипт (командой act_setstate), он останавливается на определенной строчке или его работа сбрасывается полностью (как при смене миссии)? Если его инактивить и заактивить обратно, он запустится с определённой строчки когда он стал неактивным или с самого начала? P.S. просто хочется понимать точную суть происходящего, а не на уровне "с коммандблок скрипт работает быстрее") |
||
цитата |
27.10.2020, 18:18 | #27 | ||||
Senior Member Сообщений: 341
Репутация: 287
Enforcer
|
Цитата:
А самый простой способ намертво повесить игру выглядит так: CommandBlock 1 Wait 100 Поскольку команда ожидания под коммандблоком, игра ждёт окончания ожидания, не переходя к другим задачам. Но к этим другим задачам, как раз относится отсчёт времени ) Игра ждёт, но время не идёт. Цитата:
В одном скрипте пишешь: 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. |
||||
цитата |
Поблагодарил: |
CurtisTea (27.10.2020)
|
27.10.2020, 19:49 | #28 | |||
Mafia Modding Crew Сообщений: 49
Репутация: 31
Detective
|
Цитата:
Да продолжает из тела скрипта, счетчик не обнуляется |
|||
цитата |
28.10.2020, 16:12 | #29 | ||
Member Сообщений: 49
Репутация: 40
Detective
|
Спасибо) Тогда ещё вопрос: влияет ли на загруженность движка количество переменных/акторов/фреймов, резервируемых в скрипте (даже если не все они используются)?
Проверил через getticktime - уменьшения скорости не показало, но и не факт что должно было. |
||
цитата |
28.10.2020, 16:45 | #30 | |||
Senior Member Сообщений: 341
Репутация: 287
Enforcer
|
Цитата:
Даже с сотней переменных и полкилобайта не наберёшь. С акторами и фреймами картина примерно такая же - это, по сути переменные с набором идентификаторов и свойств, через которые движок обращается к конкретным моделям. Для движка это - капля в море. Для сравнения - качественная модель авто для игры - от 1Мб и более. И вот они движок и проц грузят ) А что до скриптов - хоть километровый скрипт напиши, игра и не заметит. Орять же - можно провести эксперимент. Dim_Flt 2 Dim_Act дофига Label 1 GetGameTime 0 FindActor 0 //тут можно сотню команд натолкать FindActor X И смотрим, сколько времени ушло на команды CommandBlock 1 GetGameTime 1 Let Flt[0]=Flt[1]-Flt[0] FreeRide_ScoreSet Flt[0] CommandBlock 0 Wait 500 GoTo 1 Увеличиваем количество акторов и команд в неразумных пределах, с помощью копипаста, и смотрим, как увеличивается время выполнения. Если количество команд и акторов увеличилось вдвое, и время увеличилось вдвое - значит, движок работает всё с той же скоростью. Если количество акторов и команд увеличилось в 10 раз, а время выполнения в 15 раз - то движок начал тормозить ) Рекомендую для эксперимента использовать внешний скрипт, подгружаемый с помощью Mafia Patcher, чтобы всё быстро и легко делать в блокноте, и не лезть в сцену триста раз. Последний раз редактировалось KlassenAS; 28.10.2020 в 16:47. |
|||
цитата |
Поблагодарили: 2 |
CurtisTea (28.10.2020),
Firefox3860 (28.10.2020)
|