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

◆ CanChangeThrowingStance()

bool DayZPlayerImplementThrowing::CanChangeThrowingStance ( HumanInputController pHic)
inlineprivate

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

154 {
155 // basic stance has priority
156 if( pHic.IsStanceChange() )
157 return false;
158
159 // don't change mode in raise
160 if( pHic.IsWeaponRaised() )
161 return false;
162
163 // check if it's not a heavy item
164 HumanItemBehaviorCfg itemCfg = m_Player.GetItemAccessor().GetItemInHandsBehaviourCfg();
165 if( itemCfg && itemCfg.m_iType == ItemBehaviorType.HEAVY )
166 return false;
167
168/* HumanMovementState movementState = new HumanMovementState();
169 m_Player.GetMovementState(movementState);
170 if( movementState.IsInProne() )
171 return false;*/
172
173 PlayerBase playerPB = PlayerBase.Cast(m_Player);
174 if( playerPB )
175 {
176 if( playerPB.GetEmoteManager().IsEmotePlaying() )
177 return false;
178
179 if( playerPB.GetActionManager().GetRunningAction() != NULL )
180 return false;
181
182 if( playerPB.IsRestrained() || playerPB.IsItemsToDelete())
183 return false;
184
185 if( playerPB.GetDayZPlayerInventory().IsProcessing() )
186 return false;
187
188 if( playerPB.GetWeaponManager().IsRunning() )
189 return false;
190 }
191
192 if (!CheckFreeSpace() )
193 return false;
194
195 return true;
196 }
proto native bool IsWeaponRaised()
returns true if weapon is raised
proto native bool IsStanceChange()
stance change button was pressed
int m_iType
Определения humanitems.c:15

Перекрестные ссылки CheckFreeSpace(), HumanInputController::IsStanceChange(), HumanInputController::IsWeaponRaised(), HumanItemBehaviorCfg::m_iType и m_Player.

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