ПС: все эти косяки с турелями из-за радиста...
Он вообще нужен на этом самолёте?..
В принципе, это рудимент аж от Ил-4.. Пытаются его разными образами впихнуть во все турели...
PHP код:
public void onAircraftLoaded()
{
super.onAircraftLoaded();
setRadist(0, 0);
setRadist(1, 0);
setRadist(2, 0);
hierMesh().chunkVisible("Turret3a_D0", false);
}
PHP код:
public void update(float f)
{
if(Time.current() > tme)
{
tme = Time.current() + World.Rnd().nextLong(1000L, 5000L);
if(FM.turret.length != 0)
{
Object obj = null;
if(FM.turret[0].bIsOperable != (radist[1] == 0))
{
Actor actor = FM.turret[0].target;
if(actor != null)
{
setRadist(1, 1);
} else
{
Actor actor1 = FM.turret[1].target;
if(actor1 == null)
actor1 = FM.turret[2].target;
if(actor1 != null)
{
setRadist(1, 1);
FM.turret[0].target = actor1;
} else
{
setRadist(1, 0);
}
}
}
if(FM.turret[1].bIsOperable)
{
Actor actor2 = FM.turret[1].target;
if(actor2 != null && Actor.isValid(actor2))
{
pos.getAbs(tmpLoc2);
actor2.pos.getAbs(tmpLoc3);
tmpLoc2.transformInv(tmpLoc3.getPoint());
if(tmpLoc3.getPoint().z < 0.0D)
setRadist(2, 1);
}
} else
if(FM.turret[2].bIsOperable)
{
Actor actor3 = FM.turret[2].target;
if(actor3 != null && Actor.isValid(actor3))
{
pos.getAbs(tmpLoc2);
actor3.pos.getAbs(tmpLoc3);
tmpLoc2.transformInv(tmpLoc3.getPoint());
if(tmpLoc3.getPoint().z > 0.0D)
setRadist(2, 0);
}
}
}
}
super.update(f);
}
PHP код:
private void setRadist(int i, int j)
{
radist[i] = j;
if(FM.AS.astatePilotStates[i] > 90)
return;
switch(i)
{
default:
break;
case 1: // '\001'
hierMesh().chunkVisible("Pilot2_D0", false);
hierMesh().chunkVisible("Pilot2a_D0", false);
hierMesh().chunkVisible("HMask2_D0", false);
hierMesh().chunkVisible("HMask2a_D0", false);
FM.turret[0].bIsOperable = false;
switch(j)
{
case 0: // '\0'
hierMesh().chunkVisible("Pilot2_D0", true);
hierMesh().chunkVisible("HMask2_D0", FM.Loc.z > 3000D);
break;
case 1: // '\001'
hierMesh().chunkVisible("Pilot2a_D0", true);
hierMesh().chunkVisible("HMask2a_D0", FM.Loc.z > 3000D);
FM.turret[0].bIsOperable = true;
break;
}
break;
case 2: // '\002'
hierMesh().chunkVisible("Pilot3_D0", false);
hierMesh().chunkVisible("Pilot3a_D0", false);
hierMesh().chunkVisible("HMask3_D0", false);
hierMesh().chunkVisible("HMask3a_D0", false);
FM.turret[1].bIsOperable = false;
FM.turret[2].bIsOperable = false;
switch(j)
{
case 0: // '\0'
hierMesh().chunkVisible("Pilot3_D0", true);
hierMesh().chunkVisible("HMask3_D0", FM.Loc.z > 3000D);
FM.turret[1].bIsOperable = true;
break;
case 1: // '\001'
hierMesh().chunkVisible("Pilot3a_D0", true);
hierMesh().chunkVisible("HMask3a_D0", FM.Loc.z > 3000D);
FM.turret[2].bIsOperable = true;
break;
}
break;
}
}
Не доходит до меня, на кой это всё нужно...
Но можно считать, что проблема решена.
Эти элементы я удалю из класса, мне лишь интересно, кто будет против.
Спасибо за внимание.