Skip to content

Секция BornPlace Aircrafts

Alexander Oblovatniy edited this page Jan 5, 2016 · 9 revisions
Note: English version

Класс il2fb.parsers.mission.sections.born_place.BornPlaceAircraftsSectionParser отвечает за разбор секции BornPlaceN, где N — порядковый номер авиабазы. Эта секция описывает самолеты, которые доступны на авиабазе №N.

Каждая строка в этой секции описывает параметры отдельного типа самолета. Строки, которые начинаются со знака +, являются продолжением предыдущей строки. Максимальная длина строки равна примерно 210-220 символам.

Пример секции:

[BornPlace1]
  Bf-109F-4 -1 1sc250 4sc50
  Bf-109G-6_Late 0
  Ju-88A-4 10 28xSC50 28xSC50_2xSC250 28xSC50_4xSC250
  + 2xSC1800 2xSC2000

Пример разбора:

{
    'home_base_aircrafts_1': [
        {
            'code': 'Bf-109F-4',
            'limit': None,
            'weapon_limitations': [
                '1sc250',
                '4sc50',
            ],
        },
        {
            'code': 'Bf-109G-6_Late',
            'limit': 0,
            'weapon_limitations': [],
        },
        {
            'code': 'Ju-88A-4',
            'limit': 10,
            'weapon_limitations': [
                '28xSC50',
                '28xSC50_2xSC250',
                '28xSC50_4xSC250',
                '2xSC1800',
                '2xSC2000',
            ],
        },
    ],
}

Описание:

Конечным результатом работы парсера является словарь с элементом home_base_aircrafts_N, где N — исходный номер авиабазы. Этот элемент список словарей, где каждый словарь описывает параметры отдельного типа самолета.

Рассмотрим первую строку.

Bf-109F-4

Кодовое название самолета.

Путь: code
Тип: str
Значение: исходная строка
0

Количество доступных самолетов. Значение этого параметра имеет смысл только тогда, когда на авиабазе включено ограничение по самолетам.

-1 означает, что количество самолетов неограничено.

0 означает, что самолет даже не будет находиться в списке доступных самолетов в брифинге.

Путь: limit
Тип: int
Значение: None, если -1, иначе исходное значение, преобразованное в целое число (всегда None для старых версий игры)
1sc250 4sc50

Список кодовых названий доступных вооружений для данного самолета. Элементы в списке разделяются пробелом. Эта часть необязательна: если она отсутствует, то для самолета будет разрешено всё доступное вооружение.

Путь: weapon_limitations
Тип: list
Значение: список строк (список всегда пуст для старых версий игры)