• Уважаемый посетитель!!!
    Если Вы уже являетесь зарегистрированным участником проекта "миХей.ру - дискусcионный клуб",
    пожалуйста, восстановите свой пароль самостоятельно, либо свяжитесь с администратором через Телеграм.

Как делать предметы-подарки доступными в каталоге?

  • Автор темы Автор темы Hawk-EYE
  • Дата начала Дата начала
H

Hawk-EYE

Гость
Увидел farout'ом в файле ExpansionPack6.far вазу и четыре картины, судя по названиям - подарки. Я их вытащил, положил в папку downloads, даже изменил им ID.
Categorizer'ом добавил им цены и распихал куда надо. А в игре их все равно нет! :(

Подскажите, pls, что еще надо сделать, чтоб эти предметы стали видны в каталоге покупок?
 
Hawk-EYE
Какие "эти предметы"? Имена файлов напиши.
 
ExpansionPack6.far:
gift_painting1.iff
gift_painting2.iff
gift_painting3.iff
gift_painting4.iff

Objects.far:
GiftFlowers.iff
 
Hawk-EYE
Да, забавные предметики... Постер у меня в каталоге появился, но купить его нельзя, а картина даже не появилась. Попробую их победить.
 
Shy

Если победишь, то скажи как. :)

Ведь, если в этих far'ах как следут покопаться, то там достаточно много хороших вещичек есть.
 
Hawk-EYE
С GiftFlowers.iff все просто. Просто переименуй файл, например в GiftFlowers1.iff, и ваза появится в каталоге.

С картинами сложнее. После Categorizer'а в каталоге они появляются, но чтобы их купить, нужно в каждой из них заменить функцию init. Ее можно взять или прямо из ArtGlobal.iff (файл Globals.far), BHAV #8193 или лучше из Paitings.iff (Objects.far), BHAV #4106, но во втором случае придется еще забрать и GLOB #128. Экспортировать-импортировать лучше всего с помощью IFF Pencil 2, выбрав опцию "Export data only". Импорт нужно делать в BHAV #4105, заменив те данные, что там есть. После всего этого, нужно подредактировать BHAV #4106 "main", если не хочешь, чтобы эти картины исчезалт в режиме жизни в домах симов. Я об этом писал в теме "хм... ктонить шарит в скрипте IFF Pencil'a ? ". В общем, возни много.
 
Hawk-EYE
Ну на самом деле все не так уж и сложно. Получилось так, что как раз совсем недавно я принимала участие в обсуждении похожей проблемы в теме Похороны. Речь шла о том, чтобы сделать доступными для покупки розы, которые приносит неистовый фанат. Розы после извлечения из far'а появляются в режиме покупки, но купить их нельзя. Нам тогда повезло: в тему зашел Шогал, подсказал нам одно - самое простое - решение проблемы и кинул некий полунамек на второе, более сложное. Объединив информацию из той темы с некоторыми моментами нашей с Shy длительной переписки по ПС (с твоего позволения, Shy ;)), а также результатами моих собственных, правда, немногочисленных экспериментов, я украсила дом Боба Ньюби и картинами, и цветами, и фанатовыми розами (если их можно счесть украшением) довольно быстро и без особых мучений. Кстати, никакой ID менять не надо. Цена тоже прекрасно может оставаться нулевой. Итак...
Момент первый - появление в каталоге. При извлечении файла объекта из far'а возможны два момента: просто извлечь наружу копию файла, оставив при этом первоначальный его вариант внутри или извлечь файл наружу, а оставшуюся внутри копию удалить. Во втором случае никаких проблем не предвидится. Объект должен появиться там, где ему будет указано при помощи SimCategorizer'а. В первом же возможны различные варианты. Либо "верх возьмет" извлеченный наружу предмет, который ты будешь редактировать для покупки, и тогда он появится в каталоге, либо же "победит" непокупаемая копия внутри far'а и тогда объект не будет доступен для покупки, пока ты эту внутреннюю копию не удалишь. При всех моих экспериментах ситуация складывалась следующим образом: объекты извлеченные из far'ов, находящихся внутри ExpansionPack'ов и помещенные в DownLoads или Objects (в UserObjects не пробовала ни разу) "побеждали" свои копии внутри far'ов и после редактирования прекрасно появлялись в каталоге. Объекты же, извлеченные из Objects.far, будучи помещенными в папку DownLoads, оказывались "слабее" своих копий, оставшихся в Objects.far и появлялись в режиме покупки только в том случае, если я их помещала снаружи far'а в папку GameData/Objects, либо же оставляла их в DownLoads, но удаляла их копию внутри far'а. Отсюда мораль: чтобы ваза с цветами появилась в каталоге и стала доступной для покупки, ее нужно либо поместить снаружи far'а в GameData/Objects, либо просто удалить ее недоступную для покупки копию, оставшуюся внутри far'а, оставив покупающуюся вазу в DownLoads. А вот картины, извлеченные из ExpansionPack6.far у меня прекрасно появились в режиме покупки и без того. Но если у тебя они все же упрямятся, попробуй просто удалить их копии внутри ExpansionPack6.far, тогда должно получиться. Еще одно: когда делаешь доступными для покупки предмет, который раньше доступным для нее не был, не забывай ставить флажки по обоим типам распределения: по категориям предметов и по типу комнаты.
Момент второй - возможность купить то, что появилось в каталоге. С вазой проблем никаких нет, но картины так просто в игру не перетащишь. Здесь как раз приходит на помощь совет Шогала: нужно просто активизировать код move_objects on. При включенном коде картины (и, кстати, фанатовы розы, о которых идет речь в той теме), прекрасно покупаются и переносятся в игру. Только, если ты их потом захочешь удалить или просто переместить, придется опять активизировать код, иначе их будет с места не сдвинуть. Мне удалось воспользоваться и второй частью его совета, касательно флага Players can move it, хотя Шогал (как ему это вообще свойственно ;)), не указал, где искать этот флаг. Прочитав то, что написал Shy, я пришла к выводу, что искать его надо как раз в init, где я его тут же и нашла. Удалив эту строчку (ее полное название My movement flags Clear Flag players can move it, номер 5), я спокойно купила картину безо всякого кода. Правда, удалить, т.е. продать ее обычным способом все равно нельзя. Насколько я поняла, для этого нужно убрать еще и строчку 6 - My movement flags Clear Flag players can delete it, но это я уже не проверяла. В любом случае, все это проще сделать кодом.
Момент третий - исчезание после выхода из режима покупки. Удаляющий код в картинах реализован через функцию 321 (glob)"Is lot a Residentional Lot?", которая находится, как и написал Shy, в BHAV #4106 "main". Если сделать номер True line (т.е. 3) равным номеру False line (т.е. 2), то картины исчезать в домах симов не будут.
В общем, пугаться особо не стоит. Я сделала все это за несколько минут. Спасибо моим мудрым учителям. :)

Shy, если где-нибудь я написала что-то отменно глупое, поправь меня, пожалуйста. ;)
 
Последнее редактирование:
Назад
Сверху