DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ SetSutableMagazines()

void WeaponManager::SetSutableMagazines ( )
inlineprivate

См. определение в файле WeaponManager.c строка 1264

1265 {
1266 m_SuitableMagazines.Clear();
1267 int i;
1268
1269 if (m_WeaponInHand)
1270 {
1271 int mi = m_WeaponInHand.GetCurrentMuzzle();
1272
1273 for (i = 0; i < m_MagazineStorageInInventory.Count(); i++ )
1274 {
1275 MagazineStorage s_mag = m_MagazineStorageInInventory[i];
1276
1277 if (!s_mag)
1278 {
1279 m_MagazineStorageInInventory.RemoveOrdered(i);
1280 i--;
1281 continue;
1282 }
1283
1284 if ( m_WeaponInHand.TestAttachMagazine(mi, s_mag, false, true))
1285 m_SuitableMagazines.Insert(s_mag);
1286 }
1287
1288 for (i = 0; i < m_MagazinePilesInInventory.Count(); i++ )
1289 {
1290 Magazine mag = m_MagazinePilesInInventory[i];
1291 if (!mag)
1292 {
1293 m_MagazinePilesInInventory.RemoveOrdered(i);
1294 i--;
1295 continue;
1296 }
1297
1298 if (m_WeaponInHand.CanChamberFromMag(mi, mag))
1299 m_SuitableMagazines.Insert(mag);
1300 }
1301//TODO m_MagazineStorageInInventory and m_MagazinePilesInInventory always sort
1302 }
1303 else if (m_MagazineInHand)
1304 {
1305 for (i = 0; i < m_MagazinePilesInInventory.Count(); i++ )
1306 {
1307 Magazine m_mag = m_MagazinePilesInInventory[i];
1308 if (!m_mag)
1309 {
1310 m_MagazinePilesInInventory.RemoveOrdered(i);
1311 i--;
1312 continue;
1313 }
1314 if (m_MagazineInHand.IsCompatiableAmmo( m_mag ))
1315 m_SuitableMagazines.Insert(m_mag);
1316 }
1317 }
1318 else
1319 {
1320 m_PreparedMagazine = null;
1321 }
1322
1323 }
ref array< Magazine > m_MagazinePilesInInventory
Определения WeaponManager.c:33
ref array< Magazine > m_SuitableMagazines
Определения WeaponManager.c:35
Weapon_Base m_WeaponInHand
Определения WeaponManager.c:23
ref array< MagazineStorage > m_MagazineStorageInInventory
Определения WeaponManager.c:34
Magazine m_PreparedMagazine
Определения WeaponManager.c:36
MagazineStorage m_MagazineInHand
Определения WeaponManager.c:24

Перекрестные ссылки m_MagazineInHand, m_MagazinePilesInInventory, m_MagazineStorageInInventory, m_PreparedMagazine, m_SuitableMagazines и m_WeaponInHand.

Используется в OnMagazineInventoryEnter(), SortMagazineAfterLoad() и Update().