AviaSkins.Forums

Вернуться   AviaSkins.Forums > Основные разделы > Вопросы Новичка8

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.02.2010, 12:09   #21
"Sotka"
вечный истребитель
 
Аватар для "Sotka"
 
Регистрация: 24.07.2009
Адрес: г. Челябинск
Сообщений: 1,067
По умолчанию

М... Ну, это очень хорошо, но не можешь ли ты их заставить доехать до точки филда? Ибо то, что ты сейчас сделал, легко создаётся при помощи тестовых ВПП в толстом редакторе.
__________________
"Sotka" вне форума   Ответить с цитированием
Старый 14.02.2010, 14:46   #22
Novichok8
Местный
 
Регистрация: 24.12.2007
Адрес: Россия(СССР)
Сообщений: 987
Отправить сообщение для Novichok8 с помощью ICQ Отправить сообщение для Novichok8 с помощью Skype™
По умолчанию

не едут они как не пробывал.
тестовая впп перегрождает обычную и они врезаються да и ставить 20 штук не удобно.
Novichok8 вне форума   Ответить с цитированием
Старый 14.02.2010, 14:48   #23
Novichok8
Местный
 
Регистрация: 24.12.2007
Адрес: Россия(СССР)
Сообщений: 987
Отправить сообщение для Novichok8 с помощью ICQ Отправить сообщение для Novichok8 с помощью Skype™
По умолчанию

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 снесло в море.
Novichok8 вне форума   Ответить с цитированием
Старый 14.02.2010, 14:50   #24
Novichok8
Местный
 
Регистрация: 24.12.2007
Адрес: Россия(СССР)
Сообщений: 987
Отправить сообщение для Novichok8 с помощью ICQ Отправить сообщение для Novichok8 с помощью Skype™
По умолчанию

public static final int PT_RUNWAY = 1;
public static final int PT_TAXI = 2;
public static final int PT_STAY = 4;
вот эти переменные как вообще использовать? что они есть что их нет все одно.
Novichok8 вне форума   Ответить с цитированием
Старый 19.02.2010, 15:05   #25
Novichok8
Местный
 
Регистрация: 24.12.2007
Адрес: Россия(СССР)
Сообщений: 987
Отправить сообщение для Novichok8 с помощью ICQ Отправить сообщение для Novichok8 с помощью Skype™
По умолчанию

case 26: // '\032'
float f9 = Alt;
float f18 = 0.4F;
if(Actor.isAlive(AP.way.takeoffAirport) && (AP.way.takeoffAirport instanceof AirportCarrier))
{
f9 -= ((AirportCarrier)AP.way.takeoffAirport).height();
f18 = 0.95F;
if(Alt < 9F && Vwld.z < 0.0D)
Vwld.z *= 0.84999999999999998D;
if(CT.bHasCockpitDoorControl)
AS.setCockpitDoor(actor, 1);
}
if(first)
{
setCheckGround(false);
CT.BrakeControl = 1.0F;
CT.GearControl = 1.0F;
CT.PowerControl = 0.0F;
if(CT.bHasArrestorControl)
AS.setArrestor(actor, 0);
setSpeedMode(8);
if(f9 > 7.21F && AP.way.Cur() == 0)
{
EI.setEngineRunning();
Aircraft.debugprintln(actor, "in the air - engines running!.");
}
if(!Actor.isAlive(AP.way.takeoffAirport))
direction = actor.pos.getAbsOrient().getAzimut();
if(actor instanceof HE_LERCHE3)
{
maneuver = 69;
break;
}
}
if(Gears.onGround())
{
if(EI.engines[0].getStage() == 0)
{
CT.PowerControl = 0.0F;
setSpeedMode(8);
if(World.Rnd().nextFloat() < 0.05F && mn_time > 1.0F || mn_time > 8F)
{
push();
push(64);
submaneuver = 0;
maneuver = 0;
safe_pop();
break;
}
} else
{
Po.set(Loc);
Vpl.set(60D, 0.0D, 0.0D);
Or.transform(Vpl);
Po.add(Vpl);
pd.set(Po);




if(canTakeoff)
{
CT.PowerControl = 1.1F;
setSpeedMode(11);

} else
{
setSpeedMode(8);
CT.BrakeControl = 1.0F;
boolean flag3 = true;
if(mn_time < 8F)
flag3 = false;
if(actor != War.getNearestFriendAtPoint(Pd, (Aircraft)actor, 70F))
if(actor instanceof G4M2E)
{
if(War.getNearestFriendAtPoint(Pd, (Aircraft)actor, 70F) !=

((G4M2E)actor).typeDockableGetDrone())
flag3 = false;
} else
{
flag3 = false;
}
if(Actor.isAlive(AP.way.takeoffAirport) && AP.way.takeoffAirport.takeoffRequest > 0)
flag3 = false;
if(flag3)
{
canTakeoff = true;
if(Actor.isAlive(AP.way.takeoffAirport))
AP.way.takeoffAirport.takeoffRequest = 300;
}
}
}
if(EI.engines[0].getStage() == 6 && CT.bHasWingControl && CT.getWing() > 0.001F)
AS.setWingFold(actor, 0);
} else
if(canTakeoff)
{
CT.PowerControl = 1.1F;
setSpeedMode(11);
}
if(CT.FlapsControl == 0.0F && CT.getWing() < 0.001F)
CT.FlapsControl = 0.4F;
if(EI.engines[0].getStage() == 6 && CT.getPower() > f18)
{
CT.BrakeControl = 0.0F;
brakeShoe = false;
float f22 = (Vmin * M.getFullMass()) / M.massEmpty;
float f24 = 12F * (getSpeed() / f22 - 0.2F);
if(Gears.bIsSail)
f24 *= 2.0F;
if(Gears.bFrontWheel)
f24 = Gears.Pitch + 4F;
if(f24 < 1.0F)
f24 = 1.0F;
if(f24 > 10F)
f24 = 10F;
float f27 = 1.5F;
if(Actor.isAlive(AP.way.takeoffAirport) && (AP.way.takeoffAirport instanceof AirportCarrier) &&

!Gears.isUnderDeck())
{
CT.GearControl = 0.0F;
if(f9 < 0.0F)
{
f24 = 18F;
f27 = 0.05F;
} else
{
f24 = 14F;
f27 = 0.3F;
}
}
if(Or.getTangage() < f24)
dA = -0.7F * (Or.getTangage() - f24) + f27 * (float)getW().y + 0.5F * (float)getAW().y;
else
dA = -0.1F * (Or.getTangage() - f24) + f27 * (float)getW().y + 0.5F * (float)getAW().y;
CT.ElevatorControl += (dA - CT.ElevatorControl) * 3F * f;
} else
{
CT.ElevatorControl = 1.0F;
}
AFo.setDeg(Or.getAzimut(), direction);
double d1 = AFo.getDiffRad();
if(EI.engines[0].getStage() == 6)
{
CT.RudderControl = 8F * (float)d1;
if(d1 > -1D && d1 < 1.0D)
{
if(Actor.isAlive(AP.way.takeoffAirport) && CT.getPower() > 0.3F)
{
double d2 = AP.way.takeoffAirport.ShiftFromLine(this);
double d3 = 3D - 3D * Math.abs(d1);
if(d3 > 1.0D)
d3 = 1.0D;
double d5 = 0.25D * d2 * d3;
if(d5 > 1.5D)
d5 = 1.5D;
if(d5 < -1.5D)
d5 = -1.5D;
CT.RudderControl += (float)d5;
}
} else
{
CT.BrakeControl = 1.0F;
}
}
CT.AileronControl = -0.05F * Or.getKren() + 0.3F * (float)getW().y;
if(f9 > 5F && !Gears.isUnderDeck())
CT.GearControl = 0.0F;
float f28 = 1.0F;
if(hasBombs())
f28 *= 1.7F;
if(f9 > 120F * f28 || getSpeed() > Vmin * 1.8F * f28 || f9 > 80F * f28 && getSpeed() > Vmin * 1.6F *

f28 || f9 > 40F * f28 && getSpeed() > Vmin * 1.3F * f28 && mn_time > 60F + (float)((Aircraft)actor).aircIndex() *

3F)
{
CT.FlapsControl = 0.0F;
CT.GearControl = 0.0F;
rwLoc = null;
if(actor instanceof TypeGlider)
push(24);
maneuver = 0;
brakeShoe = false;
turnOffCollisions = false;
if(CT.bHasCockpitDoorControl)
AS.setCockpitDoor(actor, 0);
pop();
}
if(actor instanceof TypeGlider)
{
CT.BrakeControl = 0.0F;
CT.ElevatorControl = 0.05F;
canTakeoff = true;
}
break;
вот сам код взлета
Novichok8 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 14:18. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Рейтинг@Mail.ru