Модули и загрузки и так не показываются, если не доступны. С типами сложнее. Сделать можно, но не желательно. Слишком много придется тянуть из базы за раз. Если сейчас подтягивается список техники: Пример ответа {
"header": {
"statusCode": 200,
"error": null
},
"result": [
{
"id": "2e8de23d-486a-4bfd-9a98-bc94b89d8135",
"name": "Bf 109 E-4",
"typeLog": "Bf 109 E-4",
"typeEntity": 1
},
{
"id": "d61e5e73-7602-4a11-8363-334a6ca1403d",
"name": "Bf 109 E-7",
"typeLog": "Bf 109 E-7",
"typeEntity": 1
},
{
"id": "2ee958e9-e66e-41fd-9181-873a5bb7d5df",
"name": "Bf 109 F-2",
"typeLog": "Bf 109 F-2",
"typeEntity": 1
},
{
"id": "4946795b-593d-4c53-908d-5e7389a393c2",
"name": "Bf 109 F-4",
"typeLog": "Bf 109 F-4",
"typeEntity": 1
},
{
"id": "d487aae7-f384-4b52-a926-e4a531d3f102",
"name": "Bf 109 G-2",
"typeLog": "Bf 109 G-2",
"typeEntity": 1
},
{
"id": "e0890fbc-3304-4144-aa92-0ac571387ed3",
"name": "Bf 109 G-4",
"typeLog": "Bf 109 G-4",
"typeEntity": 1
},
{
"id": "c2c8e50c-789d-4581-9a95-d05b0f78861e",
"name": "Bf 110 E-2",
"typeLog": "Bf 110 E-2",
"typeEntity": 1
},
{
"id": "9dd085c5-bbb5-44ef-83ec-f64e184f8ac9",
"name": "Bf 110 G-2",
"typeLog": "Bf 110 G-2",
"typeEntity": 1
},
{
"id": "45cdf688-1bca-4427-8145-bfc77d54bb52",
"name": "Fw 190 A-3",
"typeLog": "Fw 190 A-3",
"typeEntity": 1
},
{
"id": "71708156-598a-446c-88cb-1da3b6ff5f29",
"name": "He 111 H-16",
"typeLog": "He 111 H-16",
"typeEntity": 1
},
{
"id": "a87e8d5b-f450-4daf-bd42-a4255b06f7a9",
"name": "He 111 H-6",
"typeLog": "He 111 H-6",
"typeEntity": 1
},
{
"id": "18c4f806-b9b6-47fb-8d88-c55941bc50fe",
"name": "Hs 129 B-2",
"typeLog": "Hs 129 B-2",
"typeEntity": 1
},
{
"id": "404cacf2-d961-4d5f-842b-248d7d63d595",
"name": "I.A.R. 80-A",
"typeLog": "I.A.R. 80-A",
"typeEntity": 1
},
{
"id": "65ca8d75-24a6-4064-9981-107f61a13804",
"name": "I.A.R. 80-B",
"typeLog": "I.A.R. 80-B",
"typeEntity": 1
},
{
"id": "b751059d-f9d9-4b6f-bd9c-bea393ceaefc",
"name": "Ju 52 3mg4e Ammo",
"typeLog": "Ju 52 3mg4e",
"typeEntity": 1
},
{
"id": "04f15c6d-1af7-4f7e-b88e-9cd5b3ad9337",
"name": "Ju 52 3mg4e Fuel",
"typeLog": "Ju 52 3mg4e",
"typeEntity": 1
},
{
"id": "8f1fe8a1-201e-4813-925f-dea44bdc3c33",
"name": "Ju 52 3mg4e Prov",
"typeLog": "Ju 52 3mg4e",
"typeEntity": 1
},
{
"id": "f66315b0-a923-4489-aeb6-17d8cdbc0a2a",
"name": "Ju 87 D-3",
"typeLog": "Ju 87 D-3",
"typeEntity": 1
},
{
"id": "102b6ee4-0d7d-4f6b-9d1f-7297641032d0",
"name": "Ju 88 A-4",
"typeLog": "Ju 88 A-4",
"typeEntity": 1
},
{
"id": "8fc998b3-2f0b-499d-9a33-6f83746feb12",
"name": "Ju 88 C-6",
"typeLog": "Ju 88 C-6",
"typeEntity": 1
},
{
"id": "04222769-c010-457f-a746-9e1bb9b9e243",
"name": "MC.202 ser.VIII",
"typeLog": "MC.202 ser.VIII",
"typeEntity": 1
}
]
}То к каждому объекту нужно будет добавить еще вот это: Пример ответа для одного типа: {
"header": {
"statusCode": 200,
"error": null
},
"result": {
"id": "8fc998b3-2f0b-499d-9a33-6f83746feb12",
"startDate": "1942-01-01T12:00:00Z",
"name": "Ju 88 C-6",
"typeLog": "ju 88 c-6",
"fuel": 0.5,
"coalition": 201,
"typeEntity": 1,
"consumptionFuel": 13,
"tankFuel": 1680,
"consumptionProv": 8315,
"consumptionProvKoef": 0.000554,
"setPrice": 1200,
"price": 1200,
"profit": 700,
"typeSpec": 3,
"points": 170,
"payloads": [
{
"payload": 0,
"name": "MG17-AP-2000 MG17-AP-800 MGFF-APHE-360",
"nameEn": "MG 17 machine gun (AP x2000, AP x800), MG FF cannon (AP-HE x360)",
"nameRu": "Пулемет MG 17 (ББ х 2000 шт., ББ х 800 шт.), Пушка MG FF (ББ-ОФ х 360 шт.)",
"price": 0,
"rank": 1,
"unlockMaskRequired": 0,
"unlockMaskForbidden": 616,
"composition": [
{
"name": "MG17-AP-2000 MG17-AP-800",
"nameEn": "AP 7.92x57мм Mauser rounds",
"nameRu": "ББ патроны 7.92x57мм Mauser",
"typeRes": "Ammo",
"weight": 0.02505,
"koefConsumpFuel": 1,
"number": 2800,
"typeItem": "BUL"
},
{
"name": "MGFF",
"nameEn": "MG FF cannon",
"nameRu": "пушка MG FF",
"typeRes": "Ammo",
"weight": 28,
"koefConsumpFuel": 1,
"number": 3,
"typeItem": "None"
},
{
"name": "MG17",
"nameEn": "MG 17 machine gun",
"nameRu": "пулемет MG 17",
"typeRes": "Ammo",
"weight": 10.7,
"koefConsumpFuel": 1,
"number": 3,
"typeItem": "None"
},
{
"name": "MGFF-APHE-360",
"nameEn": "AP-HE 20x80мм RB shells",
"nameRu": "ББ-ОФ снаряды 20x80мм RB",
"typeRes": "Ammo",
"weight": 0.092,
"koefConsumpFuel": 1,
"number": 360,
"typeItem": "SH"
}
]
}
],
"unlocks": [
{
"index": 0,
"name": "Default",
"nameEn": "Default",
"nameRu": "Стандарт",
"consumption": 0,
"typeConsumption": "Prov",
"koefConsumpFuel": 1,
"date": "1941-06-21T12:00:00Z",
"price": 0,
"rank": 1,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "Ly84Qg=="
},
{
"index": 1,
"name": "Additional Armor",
"nameEn": "Additional armor",
"nameRu": "Дополнительная броня",
"consumption": 30,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.1,
"date": "1941-06-21T12:00:00Z",
"price": 100,
"rank": 2,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "Ly84Qg=="
},
{
"index": 2,
"name": "Exhaust flame Suppressors",
"nameEn": "Exhaust flame suppressors",
"nameRu": "Пламегасители выхлопных газов",
"consumption": 4,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.2,
"date": "1941-06-21T12:00:00Z",
"price": 100,
"rank": 1,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "Ly84Qg=="
},
{
"index": 3,
"name": "20mm MG151/20",
"nameEn": "20mm MG 151/20 cannon",
"nameRu": "20мм пушка MG 151/20",
"consumption": 46,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.3,
"date": "1941-06-21T12:00:00Z",
"price": 100,
"rank": 4,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "QXY0PQ=="
},
{
"index": 4,
"name": "13mm MG131 Turret",
"nameEn": "13mm MG 131 Turret",
"nameRu": "Турель с 13мм пулеметом MG 131",
"consumption": 70,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.4,
"date": "1941-06-21T12:00:00Z",
"price": 100,
"rank": 3,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "Ly84Qg=="
},
{
"index": 5,
"name": "10 x SC 50 bombs",
"nameEn": "10 x SC 50 bombs",
"nameRu": "10 x бомб SC 50",
"consumption": 50,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.7,
"date": "1941-06-21T12:00:00Z",
"price": 151,
"rank": 5,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "eE9NPQ=="
},
{
"index": 6,
"name": "Underwing Bombs",
"nameEn": "Underwing bomb racks",
"nameRu": "Подкрыльевые бомбодержатели",
"consumption": 100,
"typeConsumption": "Prov",
"koefConsumpFuel": 1.7,
"date": "1941-06-21T12:00:00Z",
"price": 151,
"rank": 1,
"unlockMaskForbidden": 0,
"payloadMaskBase64": "K1AwPQ=="
}
]
}
}И это еще не самое большое количество загрузок, композиций и модификаций. Плохая практика, короче.