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

◆ OnMagazineInventoryEnter()

void WeaponManager::OnMagazineInventoryEnter ( Magazine mag)
inlineprivate

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

1118 {
1119 if (mag)
1120 {
1121 Weapon_Base weapon = Weapon_Base.Cast(mag.GetHierarchyParent());
1122
1123 if (weapon)
1124 return;
1125 }
1126
1127 int i;
1128 MagazineStorage sMag = MagazineStorage.Cast(mag);
1129 if(sMag)
1130 {
1131 for(i = 0; i < m_MagazineStorageInInventory.Count(); i++ )
1132 {
1133 MagazineStorage s_mag_i = m_MagazineStorageInInventory[i];
1134 if(!s_mag_i)
1135 {
1136 m_MagazineStorageInInventory.RemoveOrdered(i);
1137 i--;
1138 continue;
1139 }
1140
1141 if(CompareMagazinesSuitability(s_mag_i,sMag)<0)
1142 break;
1143 }
1144 m_MagazineStorageInInventory.InsertAt(sMag,i);
1145
1146 SetSutableMagazines(); //TODO optimalize
1147 return;
1148 }
1149
1150 if(mag)
1151 {
1152
1153 for(i = 0; i < m_MagazinePilesInInventory.Count(); i++ )
1154 {
1155 Magazine mag_i = m_MagazinePilesInInventory[i];
1156 if(!mag_i)
1157 {
1158 m_MagazinePilesInInventory.RemoveOrdered(i);
1159 i--;
1160 continue;
1161 }
1162
1163
1164 if(CompareMagazinesSuitability(mag_i,mag)<0)
1165 {
1166 break;
1167 }
1168 }
1169 m_MagazinePilesInInventory.InsertAt(mag,i);
1170 SetSutableMagazines(); //TODO optimalize
1171 }
1172
1173 }
void SetSutableMagazines()
Определения WeaponManager.c:1268
ref array< Magazine > m_MagazinePilesInInventory
Определения WeaponManager.c:33
ref array< MagazineStorage > m_MagazineStorageInInventory
Определения WeaponManager.c:34
int CompareMagazinesSuitability(Magazine mag1, Magazine mag2)
Определения WeaponManager.c:1202

Перекрестные ссылки CompareMagazinesSuitability(), m_MagazinePilesInInventory, m_MagazineStorageInInventory и SetSutableMagazines().

Используется в OnMagazineDetach().