Skip to content

Секция BornPlace Aircrafts

Alexander Oblovatniy edited this page Aug 31, 2014 · 9 revisions
Note: English version

Класс il2fb.parsers.mission.parsers.BornPlaceAircraftsParser отвечает за разбор секции 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

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

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

Описание:

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

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

Bf-109F-4

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

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

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

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

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

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

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

Путь: weapon_limits
Тип: list
Значение: список строк