AviaSkins.Forums

Вернуться   AviaSkins.Forums > Основные разделы > Моды для Ил-2 > Первым делом, первым делом - самолеты > W.I.P.

Важная информация

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.04.2019, 01:00   #1
Vasya
Звичайна людина на Землі
 
Аватар для Vasya
 
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,554
Радость

Я писал уже, что раздел вооружения нужно выписать в соответствии с хуками в мешах, ну и проставить их по порядку.
Код:
        Aircraft.weaponTriggersRegister(class1, new int[] {
            0, 10, 3, 3, 3
        });
        Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb01"
        });
        try
        {
            ArrayList arraylist = new ArrayList();
            Property.set(class1, "weaponsList", arraylist);
            HashMapInt hashmapint = new HashMapInt();
            Property.set(class1, "weaponsMap", hashmapint);
            byte byte0 = 5;
            Aircraft._WeaponSlot a_lweaponslot[] = new Aircraft._WeaponSlot[byte0];
            String s = "default";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int i = 5; i < byte0; i++)
                a_lweaponslot[i] = null;

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;
            
            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "none";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = null;
            a_lweaponslot[1] = null;
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int l = 0; l < byte0; l++)
                a_lweaponslot[l] = null;

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
        }
        catch(Exception exception) { }
    }
}
В разделе вооружения есть одна бомба 250 кг.
Я её переписал с твоего класса, где была вар_абракадабра.
Вообще - этот хук должен быть третьим и располагаться под фюзеляжем в CF_D0.msh.
Но можно его оставить первым - но нужно в разделе вооружения переписать порядок расположения этой бомбы.
Код:
Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03"
Код:
            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;
А с другим классом полетел, потому что там раздел вооружения соответствует выписанным хукам в планере.
Vasya вне форума   Ответить с цитированием
Старый 13.04.2019, 09:41   #2
tvister
Местный
 
Аватар для tvister
 
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
По умолчанию

Цитата:
Сообщение от Vasya Посмотреть сообщение
Я писал уже, что раздел вооружения нужно выписать в соответствии с хуками в мешах, ну и проставить их по порядку.
Василий, я все так и сделал.

Цитата:
Сообщение от Vasya Посмотреть сообщение
В разделе вооружения есть одна бомба 250 кг.
Я её переписал с твоего класса, где была вар_абракадабра.
Вообще - этот хук должен быть третьим и располагаться под фюзеляжем в CF_D0.msh.
Но можно его оставить первым - но нужно в разделе вооружения переписать порядок расположения этой бомбы.
D3A1 летает и так. Я только переписал класс с заменой имен. Впрочем нет. Были убраны воздушные тормоза и посадочный крюк, добавлены части блистера. Но к вооружению это не относится.

Код:
            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;
Эту часть кода с бомбой 250 я удалил после упоминания об ошибке. Возможно ошибка была там и раньше, обратил на неё внимание только после исправления багов с 3д моделью.
Часть кода удалил а ошибка осталась. Как и откуда она взялась я не знаю. В ветке о работе с ява, есть упоминание о кодировании вооружения дефолтных самолетов, писалось то все с дефолтного Вел-а. Может проблема в этом? Классы на основе Ки-51 тоже не работали, но тогда были моменты по 3д модели, а еще в Ки-51 есть хуки от автора. Класс Ки-30 тоже с вопросами, он какой то урезанный, короткий. Но Ида полетела именно на нем. А ещё в вооружении "Энн" прописан пилон от "Кейт", тоже интересный момент. Теперь когда самолет полетел я могу осторожно экспериментировать и с оружием и со всем остальным.
Вот последняя ява Ки-36.
Вложения
Тип файла: rar Ки-36.rar (7.4 Кб, 320 просмотров)
tvister вне форума   Ответить с цитированием
Старый 13.04.2019, 11:42   #3
Vasya
Звичайна людина на Землі
 
Аватар для Vasya
 
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,554
Радость

Цитата:
Сообщение от tvister Посмотреть сообщение
Василий, я все так и сделал.



D3A1 летает и так. Я только переписал класс с заменой имен. Впрочем нет. Были убраны воздушные тормоза и посадочный крюк, добавлены части блистера. Но к вооружению это не относится.

Код:
            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;
Эту часть кода с бомбой 250 я удалил после упоминания об ошибке. Возможно ошибка была там и раньше, обратил на неё внимание только после исправления багов с 3д моделью.
Часть кода удалил а ошибка осталась. Как и откуда она взялась я не знаю. В ветке о работе с ява, есть упоминание о кодировании вооружения дефолтных самолетов, писалось то все с дефолтного Вел-а. Может проблема в этом? Классы на основе Ки-51 тоже не работали, но тогда были моменты по 3д модели, а еще в Ки-51 есть хуки от автора. Класс Ки-30 тоже с вопросами, он какой то урезанный, короткий. Но Ида полетела именно на нем. А ещё в вооружении "Энн" прописан пилон от "Кейт", тоже интересный момент. Теперь когда самолет полетел я могу осторожно экспериментировать и с оружием и со всем остальным.
Вот последняя ява Ки-36.
Если есть желание, скинь мне в личку 3До!
Я попытаюсь запустить с "родным" классом - тем что мы вместе собрали, почистив от вар_абракадабры.
Vasya вне форума   Ответить с цитированием
Старый 13.04.2019, 17:03   #4
tvister
Местный
 
Аватар для tvister
 
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
По умолчанию

Отправил.
tvister вне форума   Ответить с цитированием
Старый 14.04.2019, 22:04   #5
tvister
Местный
 
Аватар для tvister
 
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
По умолчанию

Добавил в классы Ки-30 фрагмент кода из Ки-36-САС, отвечающий за открытие-закрытие подвижных частей фонаря. Поколдовал с локальными координатами самой задней сдвижной части, более плотно "прижал" её к корпусу. Теперь разбираю классы Е-13А и Нортоповской Гаммы. У этих самолетов есть анимированный переход стрелка наблюдателя из положения стрелка в положение наблюдателя.
Миниатюры
Нажмите на изображение для увеличения
Название: 2019.04.14 18-44-05.jpg
Просмотров: 471
Размер:	255.4 Кб
ID:	59894  
tvister вне форума   Ответить с цитированием
Старый 15.04.2019, 02:54   #6
Vasya
Звичайна людина на Землі
 
Аватар для Vasya
 
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,554
Радость

Цитата:
Сообщение от tvister Посмотреть сообщение
Добавил в классы Ки-30 фрагмент кода из Ки-36-САС, отвечающий за открытие-закрытие подвижных частей фонаря. Поколдовал с локальными координатами самой задней сдвижной части, более плотно "прижал" её к корпусу. Теперь разбираю классы Е-13А и Нортоповской Гаммы. У этих самолетов есть анимированный переход стрелка наблюдателя из положения стрелка в положение наблюдателя.
Маладец!
Мой отчёт.
С классами после твоего декомпилятора Ил не запускался вообще.
Краш на 20 проц. загрузки - это не подходит синтаксис твоей джавы Илу.
Запустил только с переделанными немного старыми классами.
Нужно выправлять, или удалять, или искать новый раздел
в хит-бон if(s.startsWith("xxspar"))
Проявился задвоенный винт и отражения на крыльях.
Если захочешь - можешь в мой класс добавить код на открывания фонаря.
Коды бомбометания с пикирования и гака удалены.
В общем - подумай как лучше, потому что класс/хеш перекомпиленный после старого декомпилятора может не запускаться на других компах и игра будет крашить.
Миниатюры
Нажмите на изображение для увеличения
Название: 2019.04.14 23-32-32.jpg
Просмотров: 472
Размер:	356.9 Кб
ID:	59897  
Вложения
Тип файла: rar Ki_36_NEW.rar (140.1 Кб, 330 просмотров)
Vasya вне форума   Ответить с цитированием
Старый 15.04.2019, 07:02   #7
tvister
Местный
 
Аватар для tvister
 
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
По умолчанию

Спасибо Василий! Приду с работы попробую поставить твой вариант классов. Сдвоенный винт, баги с крыльями, это все проблемы с 3д, вчера было свободное время, все исправил.
tvister вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Рейтинг@Mail.ru