Jasana
Гуру
inessa1971, ты опять заблудилась темой. Подселение симов - не-мейкерский вопрос, обсуждается не здесь. Я тебе по нему ничего ответить не могу.
Pandora, совсем подробно - это слишком много писать
Вообще, изменение бхавов - не самое простое из Мейка, желательно как минимум почитать все, что их касается, и опробовать простые туториалы - например этот от Echo - он не совсем про то и на английском, но с картинками и для совсем чайников.
В твоем случае, TTAB и TTAs уже есть в пакадже кровати - импортить из семиглобала их не надо - более того, TTAs редактировать не надо, потому что под-меню "Спать" добавляются динамически; НО тебе надо будет редактировать TTAB, потому что вызываемые функции - семиглобальные. Раз ты будешь их импортировать - результат будет работать только с определенным набором аддонов, тем, который сейчас у тебя; и если в будущих аддонах что-то добавится - вроде еще один ожидается? - то этих новых изменений в твоей кровати НЕ будет - либо тебе придется заново проделывать все требующиеся изменения. В даном случае тебе работы минимум, но если захочешь чуть-чуть отклониться - объем работы увеличится намного.
1) Импортируй семиглобальные функции - открывай ттаб, выбирай ту строчку Sleep, где в Action и Guardian BHAV написано User Directed. Кликай на Guardian BHAV, нажимай кнопку Import to package в правом нижнем углу, жди пока ее текст поменяется на Done, потом закрывай окошко. С Action BHAV так делать НЕ надо - тебе повезло, глубоко в семиглобалах заложена возможность спать голым, надо только передать правильный параметр. Если интересно -
2) Переходи на список бхавов - стОит пользоваться фильтром по типу ресурсов, который в левом верхнем углу СимПе. Находи там тот бхав, которые ты импортнула, перключайся в Resource View (внизу закладки) и меняй ему Group - на 0xFFFFFFFF - и Instance - на любое число в пределах от 0х1000 до 0х1FFF, которое еще не использовано как инстанс другими бхавами в этом пакадже (можно посортировать по инстансу, посмотреть что еще не используется). Не забудь делать force commit после изменений.
3) Возвращайся в ттаб, выбирай опять ту же строчку Sleep, и замени номер Guardian BHAV на тот инстанс, который ты выбрала на шаге 2. Не забудь сделать Commit File.
4) Дальше тебе надо добавить строчку, которая будет использоваться в меню. Ресурс со строчкой, увы, в семиглобале, так что его тоже надо импортить (и возможны конфликты в будущем). Находишь и открываешь GLOB ресурс, смотришь там название семиглобала - BedGlobals в данном случае - идешь в меню Tools -> Object Tools -> Import SemiGlobals, выбираешь нужный семиглобал, нажимаешь scan, ждешь пока список ресурсов появится, нажимаешь uncheck all, находишь STR# с MakeActionString в названии (в самом низу; название, вообще говоря, не важно - важно чтобы инстанс у него - последнее из четырех чисел после названия - был 12E). Ставишь возле него галку, жмешь Import, сохраняться не соглашаешься. Находишь этот ресурс среди STR#, смотришь в него и расслабляешься - там уже есть строчка Sleep Naked, 0x6 -так что ресурс можно удалить, номер запомнить. (Если бы не было - менять и ему Group на 0xFFFFFFFF - инстанс менять НЕ надо, в отличие от бхава - и добавлять нужную строчку в конец списка.)
5) Дальше, наконец, идем менять тот Guardian BHAV, который мы импортили в самом начале. Открываешь, жмешь Sort. Опять-таки тебе повезло - нужные строчки уже есть, они просто не вызываются.
Смотри в самый низ - там есть строчки
0x19: [prim 0x0002] Expression (Stack Object ID 0x0000 := Const 0x200C:0x03 ("Pajamas" Value: 0x0005))
0x1A: [prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode,
Disabled: False,
To Sub-queue: False,
[Runtime object cannot be predicted] MakeAction:0x08 (Private))
0x1B: [prim 0x0002] Expression (Stack Object ID 0x0000 := Const 0x200C:0x02 ("Underwear" Value: 0x000B))
0x1C: [prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode,
Disabled: False,
To Sub-queue: False,
[Runtime object cannot be predicted] MakeAction:0x07 (Private))
Эти две пары строк добавляют меню "спать в пижаме" и "спать в белье"; для сна голышом тебе нужна аналогичная пара строчек с присвоением Const 0x200C:0x01 ("Naked" Value: 0x0001) и добавлением строки MakeAction:0x06.
Опять же, тебе повезло - они уже есть, ниже, только не вызываются; и там есть еще одна строчка, которая проверяет возраст сима - что бы добавлять это меню только для взрослых.
Итак - если ты хочешь добавить меню "спать голышом" только для взрослых, то тебе надо выбрать строчку 0x1D - где True Target: Return True - и поменять True Target на строчку 0x1F (в которой [global 0x01CE] Age - Sims Age >= Param 1?) - просто вписать номер строки шестнадцатиричный.
Если хочешь добавить это меню для всех, не только по возрасту - тогда в строчке 0x1D надо менять True Target на 0x1E (в которой Stack Object ID 0x0000 := Const 0x200C:0x01 ("Naked")).
Потом, само собой, Commit File и сохраняться.
Все, подробнее я описать не в состоянии.
Pandora, совсем подробно - это слишком много писать

В твоем случае, TTAB и TTAs уже есть в пакадже кровати - импортить из семиглобала их не надо - более того, TTAs редактировать не надо, потому что под-меню "Спать" добавляются динамически; НО тебе надо будет редактировать TTAB, потому что вызываемые функции - семиглобальные. Раз ты будешь их импортировать - результат будет работать только с определенным набором аддонов, тем, который сейчас у тебя; и если в будущих аддонах что-то добавится - вроде еще один ожидается? - то этих новых изменений в твоей кровати НЕ будет - либо тебе придется заново проделывать все требующиеся изменения. В даном случае тебе работы минимум, но если захочешь чуть-чуть отклониться - объем работы увеличится намного.
1) Импортируй семиглобальные функции - открывай ттаб, выбирай ту строчку Sleep, где в Action и Guardian BHAV написано User Directed. Кликай на Guardian BHAV, нажимай кнопку Import to package в правом нижнем углу, жди пока ее текст поменяется на Done, потом закрывай окошко. С Action BHAV так делать НЕ надо - тебе повезло, глубоко в семиглобалах заложена возможность спать голым, надо только передать правильный параметр. Если интересно -
0x2097 'Interaction - Sleep - User Directed' вызывает 0x2000 'Interaction - Sleep', который вызывает 0x200A 'Sleep - Get In', который вызывает 0x208C 'Sleep - Outfit - Change Clothes', который вызывает 0x209C 'Dress - Change Outfit', в котором, наконец, есть строчка
[prim 0x0002] Expression (Param 0x0000 (Sleep Outfit) == Const 0x200C:0x01 ("Naked" Value: 0x0001))
и, собственно, если параметр этому равен - то сим раздевается. Но там есть только параметры "голышом", "в пижаме", "в белье" - так что если бы тебе захотелось, например, спать в повседневке, то пришлось бы импортить ВСЕ эти бхавы, поправлять между ними ссылки, и менять последний из бхавов.
[prim 0x0002] Expression (Param 0x0000 (Sleep Outfit) == Const 0x200C:0x01 ("Naked" Value: 0x0001))
и, собственно, если параметр этому равен - то сим раздевается. Но там есть только параметры "голышом", "в пижаме", "в белье" - так что если бы тебе захотелось, например, спать в повседневке, то пришлось бы импортить ВСЕ эти бхавы, поправлять между ними ссылки, и менять последний из бхавов.
3) Возвращайся в ттаб, выбирай опять ту же строчку Sleep, и замени номер Guardian BHAV на тот инстанс, который ты выбрала на шаге 2. Не забудь сделать Commit File.
4) Дальше тебе надо добавить строчку, которая будет использоваться в меню. Ресурс со строчкой, увы, в семиглобале, так что его тоже надо импортить (и возможны конфликты в будущем). Находишь и открываешь GLOB ресурс, смотришь там название семиглобала - BedGlobals в данном случае - идешь в меню Tools -> Object Tools -> Import SemiGlobals, выбираешь нужный семиглобал, нажимаешь scan, ждешь пока список ресурсов появится, нажимаешь uncheck all, находишь STR# с MakeActionString в названии (в самом низу; название, вообще говоря, не важно - важно чтобы инстанс у него - последнее из четырех чисел после названия - был 12E). Ставишь возле него галку, жмешь Import, сохраняться не соглашаешься. Находишь этот ресурс среди STR#, смотришь в него и расслабляешься - там уже есть строчка Sleep Naked, 0x6 -так что ресурс можно удалить, номер запомнить. (Если бы не было - менять и ему Group на 0xFFFFFFFF - инстанс менять НЕ надо, в отличие от бхава - и добавлять нужную строчку в конец списка.)
5) Дальше, наконец, идем менять тот Guardian BHAV, который мы импортили в самом начале. Открываешь, жмешь Sort. Опять-таки тебе повезло - нужные строчки уже есть, они просто не вызываются.
Смотри в самый низ - там есть строчки
0x19: [prim 0x0002] Expression (Stack Object ID 0x0000 := Const 0x200C:0x03 ("Pajamas" Value: 0x0005))
0x1A: [prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode,
Disabled: False,
To Sub-queue: False,
[Runtime object cannot be predicted] MakeAction:0x08 (Private))
0x1B: [prim 0x0002] Expression (Stack Object ID 0x0000 := Const 0x200C:0x02 ("Underwear" Value: 0x000B))
0x1C: [prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode,
Disabled: False,
To Sub-queue: False,
[Runtime object cannot be predicted] MakeAction:0x07 (Private))
Эти две пары строк добавляют меню "спать в пижаме" и "спать в белье"; для сна голышом тебе нужна аналогичная пара строчек с присвоением Const 0x200C:0x01 ("Naked" Value: 0x0001) и добавлением строки MakeAction:0x06.
Опять же, тебе повезло - они уже есть, ниже, только не вызываются; и там есть еще одна строчка, которая проверяет возраст сима - что бы добавлять это меню только для взрослых.
Итак - если ты хочешь добавить меню "спать голышом" только для взрослых, то тебе надо выбрать строчку 0x1D - где True Target: Return True - и поменять True Target на строчку 0x1F (в которой [global 0x01CE] Age - Sims Age >= Param 1?) - просто вписать номер строки шестнадцатиричный.
Если хочешь добавить это меню для всех, не только по возрасту - тогда в строчке 0x1D надо менять True Target на 0x1E (в которой Stack Object ID 0x0000 := Const 0x200C:0x01 ("Naked")).
Потом, само собой, Commit File и сохраняться.
Все, подробнее я описать не в состоянии.
Последнее редактирование модератором: