params ["_vic"]; private _title = []; private _image = []; private _info = []; private _capacity = []; // Excluded 2024-02-01 // private _weapons = []; // private _pylonWeapons = []; // private _inventory = []; private _vicConfig = configOf _vic; private _class = configName _vicConfig; private _objType = (_vic call BIS_fnc_objectType) select 1; private _dispName = getText(_vicConfig >> 'displayName'); // "debug_console" callExtension (format["VehicleName = %1", _dispName] + "#0110"); private _cat = getText(_vicConfig >> 'category'); private _fac = getText(_vicConfig >> 'faction'); private _side = [getNumber(_vicConfig >> 'side')] call BIS_fnc_sideName; private _canFloat = (_vicConfig >> "canFloat") call BIS_fnc_getCfgDataBool; private _totalSeats = [_class, true] call BIS_fnc_crewCount; // Number of total seats: crew + non-FFV cargo/passengers + FFV cargo/passengers private _crewSeats = [_class, false] call BIS_fnc_crewCount; // Number of crew seats only private _driverSeats = fullcrew [_vic, "driver", true]; private _gunnerSeats = fullCrew [_vic, "gunner", true]; private _commanderSeats = fullCrew [_vic, "commander", true]; // _cargoSeats = fullCrew [_vic, "cargo", true]; private _cargoSeats = _totalSeats - _crewSeats; // Number of total cargo/passenger seats: non-FFV + FFV private _turretSeatsRaw = fullCrew [_vic, "turret", true]; private _turretSeats = _turretSeatsRaw select {(_x # 4) isEqualTo false}; private _ffvSeats = _turretSeatsRaw select {(_x # 4) isEqualTo true}; private _pylons = getAllPylonsInfo _vic; /////////////////////////////////////////////// // WRITE TITLE /////////////////////////////////////////////// _title pushBack format["%1", _dispName]; /////////////////////////////////////////////// // WRITE IMAGE /////////////////////////////////////////////// // Editor preview image _image pushBack format["", getText(_vicConfig >> 'editorPreview')]; _image pushBack linebreak; // Thumbnail image // _image pushBack format["", getText(_vicConfig >> 'picture')]; // _image pushBack linebreak; /////////////////////////////////////////////// // WRITE INFO /////////////////////////////////////////////// _info pushBack format["INFO"]; _info pushBack format[" Classname: %1", _class]; _info pushBack format[" Side: %1", _side]; _info pushBack format[" Category: %1", _objType]; _info pushBack format[" Faction: %1", _fac]; _info pushBack format[" Can Float: %1", _canFloat]; /////////////////////////////////////////////// // WRITE CAPACITY /////////////////////////////////////////////// _capacity pushBack format["CAPACITY: %1", _totalSeats]; _capacity pushBack format[" Driver Seats: %1", count _driverSeats]; _capacity pushBack format[" Gunner Seats: %1", count _gunnerSeats]; _capacity pushBack format[" Commander Seats: %1", count _commanderSeats]; _capacity pushBack format[" Turret Seats: %1", count _turretSeats]; _capacity pushBack format[" Cargo Seats: %1", _cargoSeats]; _capacity pushBack format[" FFV Seats: %1", count _ffvSeats]; /////////////////////////////////////////////// // GATHER WEAPONS AVAILABLE TO SEATS AND TURRETS // EXCLUDED 2024-02-01 /////////////////////////////////////////////// // _weapons pushBack format["WEAPONS"]; // // DRIVER // [_driverSeats apply {_x # 3}, "DRIVER/PILOT", _weapons] call milsim_fbcb2_assets_fnc_getWeaponry; // //GUNNER // [_gunnerSeats apply {_x # 3}, "GUNNER/COPILOT", _weapons] call milsim_fbcb2_assets_fnc_getWeaponry; // // COMMANDER // // "debug_console" callExtension ("COMMANDER" + "#1100"); // [_commanderSeats apply {_x # 3}, "COMMANDER", _weapons] call milsim_fbcb2_assets_fnc_getWeaponry; // // TURRETS // [_turretSeats apply {_x # 3}, "TURRET", _weapons] call milsim_fbcb2_assets_fnc_getWeaponry; /////////////////////////////////////////////// // GATHER PYLON WEAPONS WITH AMMO // EXCLUDED 2024-02-01 /////////////////////////////////////////////// // _pilotWeps = []; // _otherWeps = []; // _parsePylonWeapons = { // params ["_input"]; // _input params ["_index", "_name", "_turretPath", "_magazine","_ammoCount","_id"]; // // "debug_console" callExtension (str _turretPath + "~0000"); // _magName = getText(configFile >> "CfgMagazines" >> _magazine >> "displayName"); // if (_magName isEqualTo "") exitWith {}; // if (_turretPath isEqualTo [-1]) then { // _pilotWeps pushBack format[ // " %1 | %2 rounds", // _magName, // _ammoCount // ]; // } else { // _otherWeps pushBack format[ // " %1 | %2 rounds", // _magName, // _ammoCount // ]; // }; // }; /////////////////////////////////////////////// // WRITE PYLON WEAPONS /////////////////////////////////////////////// // if (count _pylons > 0) then { // _pylonWeapons pushBack format["PYLON WEAPONS"]; // { // [_x] call _parsePylonWeapons; // } forEach _pylons; // _pylonWeapons pushBack format[" PILOT"]; // { // _pylonWeapons pushBack _x; // } forEach _pilotWeps; // _pylonWeapons pushBack format[" GUNNER"]; // { // _pylonWeapons pushBack _x; // } forEach _otherWeps; // }; /////////////////////////////////////////////// // GATHER INVENTORY // EXCLUDED 2024-02-01 /////////////////////////////////////////////// // _invLines = [_vic] call milsim_fbcb2_assets_fnc_getInventory; // if (count _invLines > 0) then { // _inventory pushBack format["INVENTORY"]; // _inventory append _invLines; // }; /////////////////////////////////////////////// // CLOSE AND RETURN /////////////////////////////////////////////// [_vicConfig, _dispName, [ _title joinString "
", _image joinString "
", _info joinString "
", _capacity joinString "
" // _weapons joinString "
", // _pylonWeapons joinString "
", // _inventory joinString "
" ]];