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

◆ OnStageStart()

override void FirearmActionDetachMagazine::OnStageStart ( SequentialActionData action_data)
inlineprivate

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

283 {
284 if(action_data.m_ReciveEndInput)
285 {
286 End(action_data);
287 return;
288 }
289
290 super.OnStageStart(action_data);
291
292 AdvDetachMagActionData action_data_dm = AdvDetachMagActionData.Cast(action_data);
293
294 switch (action_data.m_Stage)
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 {
303 End(action_data);
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 {
312 InventoryMode invMode = InventoryMode.PREDICTIVE;
313
314 if (action_data.m_Player.NeedInventoryJunctureFromServer(mag, action_data.m_Player, action_data.m_Player) || action_data.m_Player.NeedInventoryJunctureFromServer(wpn, action_data.m_Player, action_data.m_Player))
315 invMode = InventoryMode.JUNCTURE;
316
317 action_data.m_Player.GetInventory().ForceSwapEntities(invMode, mag, wpn, action_data_dm.m_ilWeapon);
318 }
319
320 End(action_data);
321 break;
322 default:
323 End(action_data);
324 break;
325 }
326 }
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
DayZGame g_Game
Определения DayZGame.c:4074
proto static native void End()
Finalizes the testing process.
PlayerBase m_Player
Определения ActionBase.c:40
ref ActionTarget m_Target
Определения ActionBase.c:39
bool m_ReciveEndInput
Определения ActionBase.c:48
ItemBase m_MainItem
Определения ActionBase.c:35

Перекрестные ссылки End(), g_Game, ActionData::m_MainItem, ActionData::m_Player, ActionData::m_ReciveEndInput, SequentialActionData::m_Stage и ActionData::m_Target.