|
|
|
#11 | |
|
Звичайна людина на Землі
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,365
|
Цитата:
Мне уже давали замечание про САХ. Я опять лохонулся в терминологии - конечно проценты а не сам САХ. Вот сам код от 2009 года для Мустанга - работает отлично. При попытке потянуть ручку порезче - Конь брыкается и сваливается в штопор. Код:
private void petrole()
{
float petrole = FM.M.fuel;
float cg = (petrole - 593F) / 591.28F;
if(cg < 0.0F)
cg = 0.0F;
float reverse = FM.getAOA();
reverse = (cg * reverse) / 11.9F;
if(reverse <= 0.0F)
reverse = 1E-005F;
FM.SensPitch += reverse;
if(FM.CT.Weapons[3] != null && FM.CT.Weapons[3][0] != null && FM.CT.Weapons[3][FM.CT.Weapons[3].length - 1].haveBullets())
FM.setGCenter(0.007F - cg - reverse);
else
FM.setGCenter(0.015F - cg - reverse);
for(int l = 0; l < FM.CT.Weapons.length; l++)
if(FM.CT.Weapons[l] != null)
{
for(int j1 = 0; j1 < FM.CT.Weapons[l].length; j1 += 2)
if((FM.CT.Weapons[l][j1] instanceof FuelTankGun) && FM.CT.Weapons[l][j1].haveBullets())
FM.setGCenter(0.007F - cg - reverse);
else
FM.setGCenter(0.015F - cg - reverse);
}
}
private void calcg()
{
G = FM.getOverload();
limite = 36800F / FM.M.mass;
if(limite < G)
FM.SensPitch = FM.SensPitch - G / 91F;
if((double)G > (double)limite * 1.1040000000000001D)
{
FM.VmaxAllowed = FM.getSpeed() - 30F;
FM.SensPitch = FM.SensPitch + G / 91F;
} else
if(FM.CT.cockpitDoorControl != 0.9F)
FM.SensPitch = 0.496F - G / 91F;
else
FM.SensPitch = 0.496F - G / 91F;
}
Последний раз редактировалось Vasya; 27.07.2021 в 02:36. Причина: дописка текста |
|
|
|
|
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|