void CWeaponKnife::OnAnimationEnd(u32 state) { switch (state) { case eHiding: SwitchState(eHidden); break; case eFire: case eFire2: { if(m_attackStart) { m_attackStart = false; if(GetState()==eFire) m_pHUD->animPlay(random_anim(mhud_attack_e), TRUE, this, GetState()); else m_pHUD->animPlay(random_anim(mhud_attack2_e), TRUE, this, GetState()); Fvector p1, d; p1.set(get_LastFP()); d.set(get_LastFD()); if(H_Parent()) smart_cast<CEntity*>(H_Parent())->g_fireParams(this, p1,d); else break; KnifeStrike(p1,d); } else SwitchState(eIdle); }break; case eShowing: case eIdle: SwitchState(eIdle); break; } }
void CWeaponKnife::switch2_Attacking (u32 state) { if(m_bPending) return; if(state==eFire) m_pHUD->animPlay(random_anim(mhud_attack), FALSE, this, state); else //eFire2 m_pHUD->animPlay(random_anim(mhud_attack2), FALSE, this, state); m_attackStart = true; m_bPending = true; }
void CWeaponPistol::PlayAnimReload () { VERIFY(GetState()==eReload); if(m_opened){ CWeaponPistol::WWPMotions& m = wwpm_current(); m_pHUD->animPlay(random_anim(m.mhud_reload_empty), TRUE, this, GetState()); }else{ CWeaponMagazined::SWMmotions& m = swm_current(); m_pHUD->animPlay(random_anim(m.mhud_reload), TRUE, this, GetState()); } m_opened = false; }
void CWeaponPistol::PlayAnimIdle () { VERIFY(GetState()==eIdle); if(m_opened){ CWeaponPistol::WWPMotions& m = wwpm_current(); m_pHUD->animPlay(random_anim(m.mhud_empty), TRUE, NULL, GetState()); }else{ CActor* A = smart_cast<CActor*>(H_Parent()); if(A && A->Holder()){ MotionSVec* m = (IsZoomed())?&wm_mhud_r.mhud_idle_aim:&wm_mhud_r.mhud_idle; m_pHUD->animPlay(random_anim(*m), TRUE, NULL, GetState()); }else inherited::PlayAnimIdle (); } }
void CWeaponPistol::PlayAnimShoot () { VERIFY(GetState()==eFire || GetState()==eFire2); if(iAmmoElapsed > 1) { CWeaponMagazined::SWMmotions& m = swm_current(); m_pHUD->animPlay (random_anim(m.mhud_shots), FALSE, this, GetState()); m_opened = false; } else { CWeaponPistol::WWPMotions& m = wwpm_current(); m_pHUD->animPlay (random_anim(m.mhud_shot_l), FALSE, this, GetState()); m_opened = true; } }
void CWeaponPistol::PlayAnimShow () { VERIFY(GetState()==eShowing); if(iAmmoElapsed >= 1) m_opened = false; else m_opened = true; if(m_opened){ CWeaponPistol::WWPMotions& m = wwpm_current(); m_pHUD->animPlay(random_anim(m.mhud_show_empty),FALSE, this, GetState()); }else{ CWeaponMagazined::SWMmotions& m = swm_current(); m_pHUD->animPlay(random_anim(m.mhud_show),FALSE, this, GetState()); } }
void CWeaponKnife::switch2_Hiding () { FireEnd (); VERIFY(GetState()==eHiding); m_pHUD->animPlay (random_anim(mhud_hide), TRUE, this, GetState()); // m_bPending = true; }
void CWeaponKnife::switch2_Idle () { VERIFY(GetState()==eIdle); m_pHUD->animPlay(random_anim(mhud_idle), TRUE, this, GetState()); m_bPending = false; }
void CWeaponKnife::onMovementChanged(ACTOR_DEFS::EMoveCommand cmd) { if (g_actor->get_state() & mcSprint) { SetState(eIdle); m_pHUD->animPlay(random_anim(mhud_idle_sprint), TRUE, this, eIdle); } else SwitchState(GetState() ); }
void CWeaponPistol::PlayAnimHide() { VERIFY(GetState()==eHiding); if(m_opened) { PlaySound (sndClose,get_LastFP()); CWeaponPistol::WWPMotions& m = wwpm_current(); m_pHUD->animPlay (random_anim(m.mhud_close), TRUE, this, GetState()); } else inherited::PlayAnimHide(); }
void CArtefact::OnStateSwitch (u32 S) { inherited::OnStateSwitch (S); switch(S){ case eShowing: { m_pHUD->animPlay(random_anim(m_anim_show), FALSE, this, S); }break; case eHiding: { m_pHUD->animPlay(random_anim(m_anim_hide), FALSE, this, S); }break; case eActivating: { m_pHUD->animPlay(random_anim(m_anim_activate), FALSE, this, S); }break; case eIdle: { PlayAnimIdle(); }break; }; }
void CWeaponMagazined::PlayAnimIdle() { MotionSVec* m = NULL; if (IsZoomed()) { m = &mhud.mhud_idle_aim; } else{ m = &mhud.mhud_idle; if (TryPlayAnimIdle()) return; } VERIFY(GetState() == eIdle); m_pHUD->animPlay(random_anim(*m), TRUE, NULL, GetState()); }
bool CWeaponMagazined::TryPlayAnimIdle() { VERIFY(GetState() == eIdle); if (!IsZoomed()){ CActor* pActor = smart_cast<CActor*>(H_Parent()); if (pActor) { CEntity::SEntityState st; pActor->g_State(st); if (st.bSprint && mhud.mhud_idle_sprint.size()) { m_pHUD->animPlay(random_anim(mhud.mhud_idle_sprint), TRUE, NULL, GetState()); return true; } } } return false; }
void CWeaponMagazined::PlayAnimShoot() { VERIFY(GetState() == eFire || GetState() == eFire2); m_pHUD->animPlay(random_anim(mhud.mhud_shots), TRUE, this, GetState()); }
void CWeaponMagazined::PlayAnimReload() { VERIFY(GetState() == eReload); m_pHUD->animPlay(random_anim(mhud.mhud_reload), TRUE, this, GetState()); }
void CWeaponMagazined::PlayAnimHide() { VERIFY(GetState() == eHiding); m_pHUD->animPlay(random_anim(mhud.mhud_hide), TRUE, this, GetState()); }
//виртуальные функции для проигрывания анимации HUD void CWeaponMagazined::PlayAnimShow() { VERIFY(GetState() == eShowing); m_pHUD->animPlay(random_anim(mhud.mhud_show), FALSE, this, GetState()); }
void CWeaponKnife::switch2_Showing () { VERIFY(GetState()==eShowing); m_pHUD->animPlay (random_anim(mhud_show), FALSE, this, GetState()); // m_bPending = true; }
void CArtefact::PlayAnimIdle() { m_pHUD->animPlay(random_anim(m_anim_idle), FALSE, NULL, eIdle); }