|
||||||||||||||||
|
||||||||||||||||
|
|
![]() |
#1 | ||
Mafia Modding Crew Сообщений: 708
Репутация: 807
![]() ![]() ![]() ![]() ![]() ![]() ![]()
Hitman
|
а, я понял, почему не получается. в бсв когда модель создаёшь, надо в insert выбирать не Things, а Building.
https://yadi.sk/i/3v1QcrXOtiytTA |
||
цитата |
![]() |
#2 | |||
Senior Member Сообщений: 251
Репутация: 185
![]() ![]()
Judge
|
Объекты Building и Light при загрузке сохранения почему то игноируют команду frm_seton x, 0 в скриптах. Говоря проще, лампа, которая не должна гореть, пока её не включишь, сама включается. Фрейм уже якобы взятой аптечки (не перемещаемой), сделанная из Building, снова виден, хотя скрипт не активен.
Потому я не использую Building для лута, приходится их делать из Things, что конечно больше нагружает движок. И к тому же на Building не действует по понятным причинам команда act_setplacement, а ком. frm_setplacement я нигде не встречал. Или перемещать скрипт и применять команду frm_linkto? За видео спасибо, теперь всё понятно. Добавлено через 2 минуты Цитата:
![]() Последний раз редактировалось alex5995; 12.11.2019 в 22:23. |
|||
цитата |
![]() |
#3 | |||
Member Сообщений: 49
Репутация: 40
![]()
Detective
|
Цитата:
Собственно, я именно через такой фрейм-болванку и делал проверку на загрузку сохранения. Можешь сделать так же: если проверочный скрипт поймёт что только что загрузили сохранение он отдаст команды обновить всю локацию до того уровня, на котором она была при сохранении. Состояние изменяемых плюшек можно записывать в какой-то мемори_скрипт переменными, они то при загрузке не теряются. |
|||
цитата |
Поблагодарили: 2 |
alex5995 (13.11.2019),
Firefox3860 (13.11.2019)
|
![]() |
#4 | |||
Senior Member Сообщений: 251
Репутация: 185
![]() ![]()
Judge
|
Цитата:
|
|||
цитата |
![]() |
#5 | |||
Member Сообщений: 49
Репутация: 40
![]()
Detective
|
Окей, самый банальный пример во фрирайде - урна возле бара Сальери:
Развернуть для просмотраdim_frm 1
findframe 0,"popel165" frm_seton 0,0 [свернуть] Изначально она конечно же видна. Скрипт при запуске сетонит её в ноль. Если ты сохранишься и загрузишь это сохранение то увидишь, что урна снова на месте. EDIT: а, или тебе полноценный скрипт проверки на загрузку сохранения написать? я сперва подумал чисто пример привести к слову...хотел для примера только что взять самого Томми, но сетон его фрейма как раз таки и не сбрасывается, видимо действительно это работает только с определенными типами объектов
[свернуть] EDIT2: я проверил, действительно сетон при загрузке возвращается не у всех объектов. Это работает с типом Building, но не работает с Other. Цитата:
По поводу перемещения. Я не перечитывал твои предыдущие сообщения, но просто чтоб ты был в курсе: сколько не двигай detector_waitforuse всегда останется на том месте где он стал активным. Чтоб его сдвинуть куда-то его надо сперва сделать inactive, потом собсна двинуть и снова сделать active (или мож даже без инектив обойтись можно, не помню точно). Пробуй сам, но это именно так работает. А, ну и frm_linkto никак не перемещает объект, он всего лишь привязывает его к новому объекту-родителю. Его место нахождения и глобальные координаты останутся прежними (в отличие от локальных = в системе координат объекта-родителя). Последний раз редактировалось CurtisTea; 13.11.2019 в 05:31. |
|||
цитата |
Поблагодарили: 2 |
alex5995 (13.11.2019),
Firefox3860 (13.11.2019)
|
![]() |
#6 | |||
Senior Member Сообщений: 251
Репутация: 185
![]() ![]()
Judge
|
Спасибо, займусь этим как нибудь. всё так мудрёно...
Почитай выше про "человека-аптечку" ![]() ![]() Цитата:
Добавлено через 55 минут Tosyk, Как поставить сообщение не отвечая на моё последнее. а создать новое? Последний раз редактировалось alex5995; 13.11.2019 в 15:50. |
|||
цитата |
![]() |
#8 | ||
Member Сообщений: 49
Репутация: 40
![]()
Detective
|
Примитивный пример на основе того же фрирайда.
Сперва в BSV создай объект типа Building, назовём его "test", где-то подальше от глаз игрока. Создай новый скрипт, в нем пиши: dim_flt 1 dim_frm 1 findframe 0,"test" frm_seton 0,0 ///это чтоб не срабатывало в самом начале игры* label 0 ///в этом лейбле игра висит всю твою активную игру frm_ison 0,0 goto flt[0] label 1 ///этот лейбл активирует твои условия при загрузке сохранения frm_seton 0,0 freeride_scoreadd 1 goto 0 Каждый раз при загрузке сохранения будет добавляться +1 к деньгам. При новой попытке после смерти тоже работает (если смерть была после сохранения). *если у тебя есть переход между миссиями туда и обратно алгоритм будет чутка сложнее, потому что при смене миссии скрипты запускаются заново (в отличие от загрузки сохранения) |
||
цитата |
![]() |
#9 | ||
Senior Member Сообщений: 251
Репутация: 185
![]() ![]()
Judge
|
Спасибо, гляну, может чего надыбаю для себя.
|
||
цитата |