283 {
285 {
287 return;
288 }
289
290 super.OnStageStart(action_data);
291
292 AdvDetachMagActionData action_data_dm = AdvDetachMagActionData.Cast(action_data);
293
295 {
296 case 0:
297 action_data.
m_Player.GetWeaponManager().DetachMagazine(action_data_dm.m_ilMagazine,
this);
298 break;
299
300 case 1:
301 if (!action_data_dm.m_ilWeapon.IsValid())
302 {
304 break;
305 }
306
307 Weapon_Base wpn = Weapon_Base.Cast(action_data.
m_MainItem);
308 Magazine mag = Magazine.Cast(action_data.
m_Target.GetObject());
309
310 if (!
g_Game.IsDedicatedServer() && !mag.GetHierarchyParent())
311 {
313
316
317 action_data.
m_Player.GetInventory().ForceSwapEntities(invMode, mag, wpn, action_data_dm.m_ilWeapon);
318 }
319
321 break;
322 default:
324 break;
325 }
326 }
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
proto static native void End()
Finalizes the testing process.
ref ActionTarget m_Target