// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov Date: 03.09.2007 8:58:37
// Home Page :
http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: BF_109F2.java
package com.maddox.il2.objects.air;
import com.maddox.il2.ai.Wing;
import com.maddox.il2.engine.HierMesh;
import com.maddox.il2.fm.*;
import com.maddox.rts.Property;
// Referenced classes of package com.maddox.il2.objects.air:
// BF_109, PaintSchemeFMPar03, Aircraft, NetAircraft
public class BF_109F2 extends BF_109
{
public BF_109F2()
{
kangle = 0.0F;
}
public void update(float f)
{
if(FM.getSpeed() > 5F)
{
hierMesh().chunkSetAngles("SlatL_D0", 0.0F, Aircraft.cvt(FM.getAOA(), 6.8F, 11F, 0.0F, 1.5F), 0.0F);
hierMesh().chunkSetAngles("SlatR_D0", 0.0F, Aircraft.cvt(FM.getAOA(), 6.8F, 11F, 0.0F, 1.5F), 0.0F);
}
hierMesh().chunkSetAngles("Flap01L_D0", 0.0F, -16F * kangle, 0.0F);
hierMesh().chunkSetAngles("Flap01U_D0", 0.0F, 16F * kangle, 0.0F);
hierMesh().chunkSetAngles("Flap02L_D0", 0.0F, -16F * kangle, 0.0F);
hierMesh().chunkSetAngles("Flap02U_D0", 0.0F, 16F * kangle, 0.0F);
kangle = 0.95F * kangle + 0.05F * FM.EI.engines[0].getControlRadiator();
if(kangle > 1.0F)
kangle = 1.0F;
super.update(f);
}
public static void moveGear(HierMesh hiermesh, float f)
{
float f1 = 0.8F;
float f2 = -0.5F * (float)Math.cos((double)(f / f1) * 3.1415926535897931D) + 0.5F;
if(f <= f1 || f == 1.0F)
{
hiermesh.chunkSetAngles("GearL3_D0", 0.0F, -77.5F * f2, 0.0F);
hiermesh.chunkSetAngles("GearL2_D0", -33.5F * f2, 0.0F, 0.0F);
}
f2 = -0.5F * (float)Math.cos((double)((f - (1.0F - f1)) / f1) * 3.1415926535897931D) + 0.5F;
if(f >= 1.0F - f1)
{
hiermesh.chunkSetAngles("GearR3_D0", 0.0F, 77.5F * f2, 0.0F);
hiermesh.chunkSetAngles("GearR2_D0", 33.5F * f2, 0.0F, 0.0F);
}
hiermesh.chunkSetAngles("GearC3_D0", 70F * f, 0.0F, 0.0F);
if(f > 0.99F)
{
hiermesh.chunkSetAngles("GearL3_D0", 0.0F, -77.5F, 0.0F);
hiermesh.chunkSetAngles("GearL2_D0", -33.5F, 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearR3_D0", 0.0F, 77.5F, 0.0F);
hiermesh.chunkSetAngles("GearR2_D0", 33.5F, 0.0F, 0.0F);
}
if(f < 0.01F)
{
hiermesh.chunkSetAngles("GearL3_D0", 0.0F, 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearL2_D0", 0.0F, 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearR3_D0", 0.0F, 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearR2_D0", 0.0F, 0.0F, 0.0F);
}
}
protected void moveGear(float f)
{
float f1 = 0.9F - (float)((Wing)getOwner()).aircIndex(this) * 0.1F;
float f2 = -0.5F * (float)Math.cos((double)(f / f1) * 3.1415926535897931D) + 0.5F;
if(f <= f1 || f == 1.0F)
{
hierMesh().chunkSetAngles("GearL3_D0", 0.0F, -77.5F * f2, 0.0F);
hierMesh().chunkSetAngles("GearL2_D0", -33.5F * f2, 0.0F, 0.0F);
}
f2 = -0.5F * (float)Math.cos((double)((f - (1.0F - f1)) / f1) * 3.1415926535897931D) + 0.5F;
if(f >= 1.0F - f1)
{
hierMesh().chunkSetAngles("GearR3_D0", 0.0F, 77.5F * f2, 0.0F);
hierMesh().chunkSetAngles("GearR2_D0", 33.5F * f2, 0.0F, 0.0F);
}
hierMesh().chunkSetAngles("GearC3_D0", 70F * f, 0.0F, 0.0F);
if(f > 0.99F)
{
hierMesh().chunkSetAngles("GearL3_D0", 0.0F, -77.5F, 0.0F);
hierMesh().chunkSetAngles("GearL2_D0", -33.5F, 0.0F, 0.0F);
hierMesh().chunkSetAngles("GearR3_D0", 0.0F, 77.5F, 0.0F);
hierMesh().chunkSetAngles("GearR2_D0", 33.5F, 0.0F, 0.0F);
}
}
public void moveSteering(float f)
{
if(FM.CT.getGear() < 0.98F)
{
return;
} else
{
hierMesh().chunkSetAngles("GearC2_D0", 0.0F, -f, 0.0F);
return;
}
}
static Class _mthclass$(String s)
{
return Class.forName(s);
ClassNotFoundException classnotfoundexception;
classnotfoundexception;
throw new NoClassDefFoundError(classnotfoundexception.getMes sage());
}
private float kangle;
static
{
Class class1 = com.maddox.il2.objects.air.BF_109F2.class;
new NetAircraft.SPAWN(class1);
Property.set(class1, "iconFar_shortClassName", "Bf109");
Property.set(class1, "meshName", "3DO/Plane/Bf-109F-2/hier.him");
Property.set(class1, "PaintScheme", new PaintSchemeFMPar03());
Property.set(class1, "meshName_hu", "3DO/Plane/Bf-109F-2(hu)/hier.him");
Property.set(class1, "PaintScheme_hu", new PaintSchemeFMPar03());
Property.set(class1, "yearService", 1941F);
Property.set(class1, "yearExpired", 1944.5F);
Property.set(class1, "FlightModel", "FlightModels/Bf-109F-2.fmd");
Property.set(class1, "cockpitClass", com.maddox.il2.objects.air.CockpitBF_109F2.class);
Property.set(class1, "LOSElevation", 0.74205F);
Aircraft.weaponTriggersRegister(class1, new int[] {
0, 0, 1
});
Aircraft.weaponHooksRegister(class1, new String[] {
"_MGUN01", "_MGUN02", "_CANNON01"
});
Aircraft.weaponsRegister(class1, "default", new String[] {
"MGunMG17si 500", "MGunMG17si 500", "MGunMG151ki 200"
});
Aircraft.weaponsRegister(class1, "none", new String[] {
null, null, null
});
}
}