public static void make(ArrayList arraylist, Point2f[][] point2fs,
Point2f[][] point2fs_0_, Point2f[][] point2fs_1_) {
if (arraylist != null) {
ArrayList arraylist_2_ = new ArrayList();
double d = 4000000.0;
if (arraylist.size() == 4)
d = 2890000.0;
while (arraylist.size() > 0) {
Loc loc = (Loc) arraylist.remove(0);
boolean bool = false;
AirportStatic airportstatic = null;
for (int i = 0; i < arraylist_2_.size(); i++) {
airportstatic = (AirportStatic) arraylist_2_.get(i);
if (airportstatic.oppositeRunway(loc) != null) {
bool = true;
break;
}
}
if (bool) {
airportstatic.runway.add(new Runway(loc));
int i = airportstatic.runway.size();
p3d.set(0.0, 0.0, 0.0);
for (int i_3_ = 0; i_3_ < i; i_3_++) {
loc = ((Runway) airportstatic.runway.get(i_3_)).loc;
p3d.x += loc.getPoint().x;
p3d.y += loc.getPoint().y;
p3d.z += loc.getPoint().z;
}
p3d.x /= (double) i;
p3d.y /= (double) i;
p3d.z /= (double) i;
airportstatic.pos.setAbs(p3d);
} else {
if (Engine.cur.land.isWater(loc.getPoint().x,
loc.getPoint().y))
airportstatic = new AirportMaritime();
else
airportstatic = new AirportGround();
airportstatic.pos = new ActorPosStatic(airportstatic, loc);
airportstatic.runway.add(new Runway(loc));
arraylist_2_.add(airportstatic);
}
}
}
}
вот стандартный код этого.
p3d.set(0.0, 0.0, 0.0); тут я значения увеличил и они взлетают хоть откуда но содяться на 1 впп почему то 2 снесло в море.
|