AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   Первым делом, первым делом - самолеты (http://forum.aviaskins.com/forumdisplay.php?f=20)
-   -   Моды от Димы (http://forum.aviaskins.com/showthread.php?t=5439)

Vasya 22.08.2026 14:47

Вопрос к специалисту!?
Подскажи пожалуйста?
Как правильно вписать заглавное имя коллизий моторного отсека?
Если в хиер-хим конструкция такая:
Код:

[Engine1_D0]
Mesh Engine1_D0
Parent CF_D0
Separable
Attaching 1 0 0 0 1 0 0 0 1 0 -0 0
CollisionObject xengine
CollisionObject .xxeng1prop
CollisionObject .xxeng1base
CollisionObject .xxeng1cyls
CollisionObject .xxeng1supc
CollisionObject .xxeng1eqpt
CollisionObject .xxoilt1

Так:
Цитата:

if(s.startsWith("xengine"))
{
или так:
Цитата:

if(s.startsWith("xxeng1"))
{
Это тот злощасный ИТП:
https://drive.google.com/file/d/1JSU...ew?usp=sharing
Обстреливал мелкашками(из японского бомбёра, стоял на полосе перед ИТП),
кроме остановки мотора никаких эффектов небыло, :DONT_KNOW: хотя пилил по крыльям, маслорадиатору, мотору.
Вообще ничего не текло и не дымило.

Dimas1999 22.08.2026 23:29

Привет!

xxeng1 - с этого начинаются имена коллизий агрегатов двигателя.
Код:

            if(s.startsWith("xxeng1"))
            {

xengine - коллизия самого "капота" двигателя. Подобная конструкция пишется в конце hitbone, она отвечает за за переключение видимых повреждений.
Код:

        if(s.startsWith("xeng"))
        {
            if(chunkDamageVisible("Engine1") < 2)
                hitChunk("Engine1", shot);
        } else


Vasya 22.08.2026 23:48

Цитата:

Сообщение от Dimas1999 (Сообщение 234568)
Привет!

xxeng1 - с этого начинаются имена коллизий агрегатов двигателя.
Код:

            if(s.startsWith("xxeng1"))
            {

xengine - коллизия самого "капота" двигателя. Подобная конструкция пишется в конце hitbone, она отвечает за за переключение видимых повреждений.
Код:

        if(s.startsWith("xeng"))
        {
            if(chunkDamageVisible("Engine1") < 2)
                hitChunk("Engine1", shot);
        } else


Огромное Спасибо!
:thx:
:thx:

Vasya 23.08.2026 23:43

Цитата:

Сообщение от Dimas1999 (Сообщение 234568)
Привет!

xxeng1 - с этого начинаются имена коллизий агрегатов двигателя.

К сожалению не помогло нисколько, планер остался дубовый.
Если будет время - посмотри пожалуйста?! :ups:
https://drive.google.com/file/d/1JSU...ew?usp=sharing
Кроме остановки мотора ничего не дымит и не течёт. :cry:

Dimas1999 24.08.2026 08:25

Посмотрел, здесь ошибка в именах коллизий.

Написано так:
Код:

Name .xxeng1pro
Должно быть так:
Код:

Name xxeng1pro
Надо открыть все меши и через автозамену поменять "Name .xx" на "Name xx".

Vasya 24.08.2026 13:33

Цитата:

Сообщение от Dimas1999 (Сообщение 234585)
Посмотрел, здесь ошибка в именах коллизий.

Написано так:
Код:

Name .xxeng1pro
Должно быть так:
Код:

Name xxeng1pro
Надо открыть все меши и через автозамену поменять "Name .xx" на "Name xx".

Спасибо! :good:
Удаляю точки... вручную., не знаю что такое автозамена.
--------------------
И ещё вопросы???
Номер 1.
Не совпадают имена коллизий в меше и в хиер-хим, например:
xxeng1cyls в хиер-хим и xxeng1cyl в меше.
Так задумано :eek: или нужно в меше исправить? :I'm_thinking:
Номер 2.
В хиер-хим и в меше коллизия имет имя: xxpneumo1.
В исходном классе имя коллизии было написано так: xxpneu.
Как правильно записать в классе - полное имя как в меше или сокращённое? :I'm_thinking:
Или в классе/хиер-хим имя коллизии:
xxeng1base, xxeng1supc, xxeng1eqpt,
а в меше коллизия имеет имя:
xxeng1bas, xxeng1sup, xxeng1eqp

Помоги пожалуйста разобраться?! :ups:

Dimas1999 24.08.2026 14:28

Цитата:

Сообщение от Vasya (Сообщение 234586)
Спасибо! :good:
Удаляю точки... вручную., не знаю что такое автозамена.

Качаешь Notepad++, открываешь в нём все файлы .msh. Потом жмёшь Ctrl+F (найти), переходишь во вкладку Замена и пишешь там в окошках "Найти: .xx", "Заменить на: xx". В конце нажимаешь кнопку "Заменить во всех открытых документах".


По коллизиям.
1. Надо всё приводить к единому виду.
2. Должно работать. Прописано условие:
Код:

if(s.startsWith("xxpneu")
"xxpneumo1" - начинается с "xxpneu", условие выполнено, попадание будет обработано. Для спокойствия можно написать полностью:
Код:

if(s.startsWith("xxpneumo1")

Vasya 24.08.2026 14:38

Цитата:

Сообщение от Dimas1999 (Сообщение 234590)
По коллизиям.
1. Надо всё приводить к единому виду.
2. Должно работать. Прописано условие:
Код:

if(s.startsWith("xxpneu")
"xxpneumo1" - начинается с "xxpneu", условие выполнено, попадание будет обработано. Для спокойствия можно написать полностью:
Код:

if(s.startsWith("xxpneumo1")

А как по другим коллизиям?
Цитата:

Или в классе/хиер-хим имя коллизии:
xxeng1base, xxeng1supc, xxeng1eqpt,
а в меше коллизия имеет имя:
xxeng1bas, xxeng1sup, xxeng1eqp
В хиер-хим и классе можно сократить имя?
Что бы было точно как в меше - sup, eqp?

Dimas1999 24.08.2026 14:41

Сократить можно до: xxeng1bas, xxeng1sup, xxeng1eqp. В hier.him и в классе тогда тоже должно быть: xxeng1bas, xxeng1sup, xxeng1eqp. Никаких: xxeng1base, xxeng1supc, xxeng1eqpt.

Vasya 24.08.2026 14:56

Цитата:

Сообщение от Dimas1999 (Сообщение 234592)
Сократить можно до: xxeng1bas, xxeng1sup, xxeng1eqp. В hier.him и в классе тогда тоже должно быть: xxeng1bas, xxeng1sup, xxeng1eqp. Никаких: xxeng1base, xxeng1supc, xxeng1eqpt.

Большое Спасибо за пояснения!
:thx:
Меши исправил - убрал точки. :ok:


Текущее время: 01:19. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot