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

◆ CanChangeThrowingStance()

bool DayZPlayerImplementThrowing::CanChangeThrowingStance ( HumanInputController pHic)
inlineprivate

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

176 {
177 // basic stance has priority
178 if( pHic.IsStanceChange() )
179 return false;
180
181 // don't change mode in raise
182 if( pHic.IsWeaponRaised() )
183 return false;
184
185 // check if it's not a heavy item
186 HumanItemBehaviorCfg itemCfg = m_Player.GetItemAccessor().GetItemInHandsBehaviourCfg();
187 if( itemCfg && itemCfg.m_iType == ItemBehaviorType.HEAVY )
188 return false;
189
190/* HumanMovementState movementState = new HumanMovementState();
191 m_Player.GetMovementState(movementState);
192 if( movementState.IsInProne() )
193 return false;*/
194
195 PlayerBase playerPB = PlayerBase.Cast(m_Player);
196 if( playerPB )
197 {
198 if( playerPB.GetEmoteManager().IsEmotePlaying() )
199 return false;
200
201 if( playerPB.GetActionManager().GetRunningAction() != NULL )
202 return false;
203
204 if( playerPB.IsRestrained() || playerPB.IsItemsToDelete())
205 return false;
206
207 if( playerPB.GetDayZPlayerInventory().IsProcessing() )
208 return false;
209
210 if( playerPB.GetWeaponManager().IsRunning() )
211 return false;
212 }
213
214 if (!CheckFreeSpace() )
215 return false;
216
217 return true;
218 }
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().