Показать сообщение отдельно
Старый 22.12.2015, 19:38   #239
Vasya
Звичайна людина на Землі
 
Аватар для Vasya
 
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,085
Радость

Вот кто граммотный - найдите пожалуйста одну с половинкой ошибки в классе Мессера с хвостом бабочкой(скачивал на САС)!!!
Конечно, с ними самолёт грузиться, но лучше бы их не было для оргнунга и нормальной работы самолёта.
Вот:
Цитата:
// Decompiled by DJ v3.10.10.93 Copyright 2007 Atanas Neshkov Date: 22.12.2015 18:02:03
// Home Page: http://members.fortunecity.com/neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: BF_109V48.java

package com.maddox.il2.objects.air;

import com.maddox.JGP.Vector3d;
import com.maddox.il2.ai.Wing;
import com.maddox.il2.ai.World;
import com.maddox.il2.engine.HierMesh;
import com.maddox.il2.fm.*;
import com.maddox.il2.game.Main3D;
import com.maddox.il2.objects.Wreckage;
import com.maddox.rts.Property;

// Referenced classes of package com.maddox.il2.objects.air:
// BF_109, CockpitBF_109W, PaintSchemeFMPar03, Aircraft,
// NetAircraft

public class BF_109V48 extends BF_109
{
public BF_109V48()
{
kangle = 0.0F;
flapps = 0.0F;
fMaxKMHSpeedForOpenCanopy = 250F;
bHasBlister = true;
}

public void moveCockpitDoor(float f)
{
hierMesh().chunkSetAngles("Blister1_D0", 0.0F, 80F * f, 0.0F);
}

protected void moveRudder(float f)
{
hierMesh().chunkSetAngles("Rudder1_D0", 0.0F, 20F * f, 0.0F);
hierMesh().chunkSetAngles("Rudder2_D0", 0.0F, 20F * f, 0.0F);
}

protected void moveElevator(float f)
{
hierMesh().chunkSetAngles("VatorL_D0", 0.0F, -20F * f, 0.0F);
hierMesh().chunkSetAngles("VatorR_D0", 0.0F, -20F * f, 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);
}
if(Math.abs(flapps - kangle) > 0.01F)
{
flapps = kangle;
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);
if(FM.CT.getCockpitDoor() > 0.2F && bHasBlister && FM.getSpeedKMH() > fMaxKMHSpeedForOpenCanopy && hierMesh().chunkFindCheck("Blister1_D0") != -1)
{
try
{
if(this == World.getPlayerAircraft())
((CockpitBF_109W)Main3D.cur3D().cockpitCur).remove Canopy();
}
catch(Exception exception) { }
hierMesh().hideSubTrees("Blister1_D0");
Wreckage wreckage = new Wreckage(this, hierMesh().chunkFind("Blister1_D0"));
wreckage.collide(true);
Vector3d vector3d = new Vector3d();
vector3d.set(FM.Vwld);
wreckage.setSpeed(vector3d);
bHasBlister = false;
FM.CT.bHasCockpitDoorControl = false;
FM.setGCenter(-0.5F);
}
}

public static void moveGearOld(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 moveGearOld(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 static void moveGear(HierMesh hiermesh, float f, float f1, float f2, boolean flag)
{
if(flag)
hiermesh.chunkSetAngles("GearC3_D0", smoothCvt(f2, 0.725F, 0.925F, 0.0F, 70F), 0.0F, 0.0F);
else
hiermesh.chunkSetAngles("GearC3_D0", smoothCvt(f2, 0.01F, 0.2F, 0.0F, 70F), 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearL2_D0", smoothCvt(f, 0.01F, 0.6F, 0.0F, -33.5F), 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearL3_D0", 0.0F, smoothCvt(f, 0.01F, 0.6F, 0.0F, -77.5F), 0.0F);
hiermesh.chunkSetAngles("GearR2_D0", smoothCvt(f1, 0.3F, 0.9F, 0.0F, 33.5F), 0.0F, 0.0F);
hiermesh.chunkSetAngles("GearR3_D0", 0.0F, smoothCvt(f1, 0.3F, 0.9F, 0.0F, 77.5F), 0.0F);
}

public static void moveGear(HierMesh hiermesh, float f, float f1, float f2)
{
moveGear(hiermesh, f, f1, f2, true);
}

protected void moveGear(float f, float f1, float f2)
{
moveGear(hierMesh(), f, f1, f2, FM.CT.GearControl > 0.5F);
}

public static void moveGear(HierMesh hiermesh, float f, boolean flag)
{
moveGear(hiermesh, f, f, f, flag);
}

public static void moveGear(HierMesh hiermesh, float f)
{
moveGear(hiermesh, f, f, f, true);
}

protected void moveGear(float f)
{
moveGear(hierMesh(), f, FM.CT.GearControl > 0.5F);
}

private static float smoothCvt(float f, float f1, float f2, float f3, float f4)
{
f = Math.min(Math.max(f, f1), f2);
return f3 + (f4 - f3) * (-0.5F * (float)Math.cos((double)((f - f1) / (f2 - f1)) * 3.1415926535897931D) + 0.5F);
}

public void moveSteering(float f)
{
if(FM.CT.getGear() >= 0.98F)
hierMesh().chunkSetAngles("GearC2_D0", 0.0F, -f, 0.0F);
}

private float kangle;
private float flapps;
private float fMaxKMHSpeedForOpenCanopy;
public boolean bHasBlister;

static
{
Class class1 = com.maddox.il2.objects.air.BF_109V48.class;
new NetAircraft.SPAWN(class1);
Property.set(class1, "iconFar_shortClassName", "Bf109V48");
Property.set(class1, "meshName", "3DO/Plane/Bf-109V48/hier.him");
Property.set(class1, "PaintScheme", new PaintSchemeFMPar03());
Property.set(class1, "yearService", 1942F);
Property.set(class1, "yearExpired", 1945.5F);
Property.set(class1, "FlightModel", "FlightModels/Bf-109V48.fmd:Bf109_ODDS_FM");
Property.set(class1, "cockpitClass", new Class[] {
com.maddox.il2.objects.air.CockpitBF_109V.class
});
Property.set(class1, "LOSElevation", 0.7498F);
Aircraft.weaponTriggersRegister(class1, new int[] {
0, 0, 0, 1, 1, 1, 1, 1, 9, 9,
9, 9, 3, 3, 3, 3, 3
});
Aircraft.weaponHooksRegister(class1, new String[] {
"_MGUN01", "_MGUN02", "_CANNON01", "_CANNON01", "_CANNON02", "_CANNON03", "_CANNON04", "_CANNON05", "_ExternalDev01", "_ExternalDev01",
"_ExternalDev02", "_ExternalDev03", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb04", "_ExternalBomb05"
});
}
}
Не в упрёк автору мода - потому как мы все люди.
П.С. Там ещё капец с фм было в моде с этими самолётами:
Bf-109V-48
Bf-109G2-CRP
Bf-109W2
Берут просто фм от Г-2 и вписуют другие моторы, да ещё фм старая от девятки, где нет значений по перегрузке. А другие изменения что нужно внести в фм просто похерили. Как так можно.

Последний раз редактировалось Vasya; 22.12.2015 в 23:33.
Vasya вне форума   Ответить с цитированием