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

◆ TryUnlockLock()

void ActionCombinationLockUnlock::TryUnlockLock ( ActionData action_data)
inlineprivate

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

58 {
59 ConstructionActionData constructionActionData = action_data.m_Player.GetConstructionActionData();
60 CombinationLock combinationLock = constructionActionData.GetCombinationLock();
61 int facingSide = constructionActionData.GetCombinationLockSide();
62 if (!combinationLock || facingSide == -1)
63 return;
64
65 combinationLock.CheckLockedStateServer(facingSide);
66
67 // Check for unlock state
68 if (!combinationLock.IsLockedOnParent())
69 {
70 if (GetGame().IsMultiplayer())
71 ClearActionJuncture(action_data);
72 else
73 ClearInventoryReservationEx(action_data);
74
75 EntityAI targetEntity = EntityAI.Cast(action_data.m_Target.GetObject());
76 combinationLock.UnlockOnServer(action_data.m_Player, targetEntity.GetHierarchyParent(), facingSide);
77 }
78 else
79 {
80 combinationLock.StartItemSoundServer(SoundConstants.ITEM_COMBINATION_LOCK_WRONG_COMBINATION);
81 }
82 }
class LogManager EntityAI
void ClearInventoryReservationEx(ActionData action_data)
Определения ActionBase.c:1120
void ClearActionJuncture(ActionData action_data)
Определения ActionBase.c:1207
void CombinationLock()
Определения CombinationLock.c:55
PlayerBase m_Player
Определения ActionBase.c:40
ref ActionTarget m_Target
Определения ActionBase.c:39
CombinationLock GetCombinationLock()
Определения ConstructionActionData.c:396
int GetCombinationLockSide()
Определения ConstructionActionData.c:461
DayZGame GetGame()
Определения gameplay.c:636

Перекрестные ссылки ClearActionJuncture(), ClearInventoryReservationEx(), ConstructionActionData::GetCombinationLock(), ConstructionActionData::GetCombinationLockSide(), GetGame(), ActionData::m_Player и ActionData::m_Target.

Используется в OnExecute() и OnExecuteServer().