Показать сообщение отдельно
Старый 03.09.2016, 13:47   #251
deSAD
Модератор
 
Аватар для deSAD
 
Регистрация: 06.03.2007
Адрес: Киев, Украина
Сообщений: 11,391
Отправить сообщение для deSAD с помощью ICQ Отправить сообщение для deSAD с помощью Skype™
По умолчанию

В развитие темы ...
Цитата:
Сообщение от deSAD Посмотреть сообщение
Попробовал было "пересобрать" I_153_M63, добавив туда два дополнительных варианта вооружений с БС'ами из I_153_M62, но - увы и ах - ИЛ после этого даже не запустился, хотя класс скомпилировался без ошибок
Вот код ...
Код:
package com.maddox.il2.objects.air;

import com.maddox.il2.ai.Regiment;
import com.maddox.il2.engine.*;
import com.maddox.il2.fm.*;
import com.maddox.il2.game.Main;
import com.maddox.il2.net.NetFileServerSkin;
import com.maddox.rts.HomePath;
import com.maddox.rts.Property;
import java.io.*;

public class I_153_M63 extends I_153
{

    public I_153_M63()
    {
    }

    public void onAircraftLoaded()
    {
        if(thisWeaponsName.startsWith("1BS"))
            hierMesh().chunkVisible("MGun02_D0", false);
        else
            hierMesh().chunkVisible("MGun02_D0", true);
    }

    public void missionStarting()
    {
        super.missionStarting();
        customization();
    }

    private void customization()
    {
        if(!Config.isUSE_RENDER())
            return;
        boolean flag = false;
        boolean flag1 = false;
        int i = hierMesh().chunkFindCheck("CF_D0");
        int j = hierMesh().materialFindInChunk("Gloss1D0o", i);
        Mat mat = hierMesh().material(j);
        String s = mat.Name();
        try
        {
            if(s.startsWith("PaintSchemes/Cache"))
            {
                s = s.substring(19);
                s = s.substring(0, s.indexOf("/"));
            } else
            if(s.startsWith("3DO/Plane/I-153/i153m63_summer"))
                s = "summer";
            else
            if(s.startsWith("3DO/Plane/I-153/i153m63_winter"))
                s = "winter";
            customini = false;
            String s1 = Main.cur().netFileServerSkin.primaryPath();
            File file = new File(HomePath.toFileSystemName(s1 + "/I-153M63/Customization.ini", 0));
            BufferedReader bufferedreader = new BufferedReader(new FileReader(file));
            Object obj = null;
            boolean flag2 = false;
            boolean flag3 = false;
            boolean flag4 = false;
            do
            {
                String s2;
                if((s2 = bufferedreader.readLine()) == null)
                    break;
                if(s2.equals("[Show_Antenna]"))
                {
                    flag2 = true;
                    flag3 = false;
                    flag4 = false;
                } else
                if(s2.equals("[Hide_Radiator]"))
                {
                    flag2 = false;
                    flag3 = true;
                    flag4 = false;
                } else
                if(s2.equals("[Hide_WheelCover]"))
                {
                    flag2 = false;
                    flag3 = false;
                    flag4 = true;
                } else
                if(s2.equals(s))
                {
                    if(flag2)
                    {
                        hierMesh().chunkVisible("Wire1_D0", true);
                        hierMesh().chunkVisible("Wire2_D0", true);
                        hierMesh().chunkVisible("Wire3_D0", true);
                    }
                    if(flag3)
                    {
                        hierMesh().chunkVisible("Water_D0", false);
                        hierMesh().chunkVisible("FrontDisk_D0", false);
                        hierMesh().chunkVisible("Ring_D0", true);
                        FM.CT.setRadiatorControl(1.0F);
                        FM.CT.DamageRadiatorControl();
                    }
                    if(flag4)
                    {
                        hierMesh().chunkVisible("GearL7_D0", false);
                        hierMesh().chunkVisible("GearR7_D0", false);
                    }
                    customini = true;
                }
            } while(true);
            bufferedreader.close();
        }
        catch(Exception exception)
        {
            System.out.println(exception);
        }
    }

    public static String getSkinPrefix(String s, Regiment regiment)
    {
        if(regiment == null || regiment.country() == null)
            return "";
        else
            return "i153m63_";
    }

    private boolean customini;

    static 
    {
        Class class1 = com.maddox.il2.objects.air.I_153_M63.class;
        new NetAircraft.SPAWN(class1);
        Property.set(class1, "iconFar_shortClassName", "I-153");
        Property.set(class1, "meshName", "3DO/Plane/I-153/hier-M63.him");
        Property.set(class1, "PaintScheme", new PaintSchemeFMPar00());
        Property.set(class1, "yearService", 1939.2F);
        Property.set(class1, "yearExpired", 1944F);
        Property.set(class1, "FlightModel", "FlightModels/I-153-M63.fmd");
        Property.set(class1, "cockpitClass", com.maddox.il2.objects.air.CockpitI_153.class);
        Property.set(class1, "LOSElevation", 0.84305F);
        Aircraft.weaponTriggersRegister(class1, new int[] {
            0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 
            2, 2, 3, 3, 3, 3, 9, 9, 9, 9, 
            9, 9, 9, 9
        });
        Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_MGUN03", "_MGUN04", "_ExternalRock01", "_ExternalRock02", "_ExternalRock03", "_ExternalRock04", "_ExternalRock05", "_ExternalRock06", 
            "_ExternalRock07", "_ExternalRock08", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb04", "_ExternalDev01", "_ExternalDev02", "_ExternalDev03", "_ExternalDev04", 
            "_ExternalDev05", "_ExternalDev06", "_ExternalDev07", "_ExternalDev08"
        });
        Aircraft.weaponsRegister(class1, "default", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, null, null, null, null, null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xAO10", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xAO10_2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, null, null, "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, null, null, "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50_2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "8xRS82", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", 
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", 
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null, 
            null, null, null, null, null, null, null, null, null, null, 
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS_8xRS82", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", 
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", 
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "none", new String[] {
            null, null, null, null, null, null, null, null, null, null, 
            null, null, null, null, null, null, null, null, null, null, 
            null, null, null, null
        });
    }
}
Что я делаю не так? ©
__________________
deSAD вне форума   Ответить с цитированием