Показать сообщение отдельно
Старый 02.03.2019, 12:33   #15
Asura
Модератор
 
Аватар для Asura
 
Регистрация: 28.02.2007
Адрес: Тула, Россия
Сообщений: 1,805
По умолчанию

Цитата:
Сообщение от Dimas1999 Посмотреть сообщение
Если в классе не вносились изменения между версиями, то они будут работать между версиями.
Не факт, если с связанные классы вносились изменения то даже не измененный класс не заработает.

Чтобы было проще разбираться с поведением ИИ - за это в основном отвечает класс com\maddox\il2\ai\air\Maneuver.java.

В нем прописаны действия для каждой ситуации. Примерно так:

Код:
    case SPIRAL_UP:
      if(first) {
          if(!isCapableOfACM()) {
              if(Skill>ROOKIE) pop();
              if(Skill>NORMAL) setReadyToReturn(true);
          }
	    	}
      setSpeedMode (MAX_SPEED);
      tmpOr.setYPR(Or.getYaw(), 0.0f, 0.0f);
      if (Or.getKren() > 0.0f) Ve.set(100.0f, -8.0f, 10.0f);
      else Ve.set(100.0f, 8.0f, 10.0f);
      tmpOr.transform(Ve);
      Or.transformInv(Ve);
      Ve.normalize();
      farTurnToDirection();
      if((Alt>250.0f && mn_time>8.0f) || mn_time>120.0f) pop();
      break;
Если разобрать этот класс то изменение ИИ вполне реально.

И в нем всего 11166 строк кода
__________________
Их восемь — нас двое. Расклад перед боем
Не наш, но мы будем играть!
Серёжа! Держись, нам не светит с тобою,
Но козыри надо равнять.

© В. Высоцкий
__________________

Asura вне форума   Ответить с цитированием