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

◆ SetSutableMagazines()

void WeaponManager::SetSutableMagazines ( )
inlineprivate

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

1269 {
1270 m_SuitableMagazines.Clear();
1271 int i;
1272
1273 if (m_WeaponInHand)
1274 {
1275 int mi = m_WeaponInHand.GetCurrentMuzzle();
1276
1277 for (i = 0; i < m_MagazineStorageInInventory.Count(); i++ )
1278 {
1279 MagazineStorage s_mag = m_MagazineStorageInInventory[i];
1280
1281 if (!s_mag)
1282 {
1283 m_MagazineStorageInInventory.RemoveOrdered(i);
1284 i--;
1285 continue;
1286 }
1287
1288 if ( m_WeaponInHand.TestAttachMagazine(mi, s_mag, false, true))
1289 m_SuitableMagazines.Insert(s_mag);
1290 }
1291
1292 for (i = 0; i < m_MagazinePilesInInventory.Count(); i++ )
1293 {
1294 Magazine mag = m_MagazinePilesInInventory[i];
1295 if (!mag)
1296 {
1297 m_MagazinePilesInInventory.RemoveOrdered(i);
1298 i--;
1299 continue;
1300 }
1301
1302 if (m_WeaponInHand.CanChamberFromMag(mi, mag))
1303 m_SuitableMagazines.Insert(mag);
1304 }
1305//TODO m_MagazineStorageInInventory and m_MagazinePilesInInventory always sort
1306 }
1307 else if (m_MagazineInHand)
1308 {
1309 for (i = 0; i < m_MagazinePilesInInventory.Count(); i++ )
1310 {
1311 Magazine m_mag = m_MagazinePilesInInventory[i];
1312 if (!m_mag)
1313 {
1314 m_MagazinePilesInInventory.RemoveOrdered(i);
1315 i--;
1316 continue;
1317 }
1318 if (m_MagazineInHand.IsCompatiableAmmo( m_mag ))
1319 m_SuitableMagazines.Insert(m_mag);
1320 }
1321 }
1322 else
1323 {
1324 m_PreparedMagazine = null;
1325 }
1326
1327 }
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().