void OnParrySuccess(BaseEventParameters baseParams) { IncreaseSuperGauge(m_Config.m_SuperGaugeParrySuccessBonus); m_ParryState = EParryState.Counter; m_HasTouched = true; // Set it to true in order to allow unblock attack and cancelling this one by another one if needed (parry success is considered as a regular attack hit) if (PlayerGuardCrushTriggerAttackLogic.GetTriggerPointStatus(GetPlayerIndex()) == PlayerGuardCrushTriggerAttackLogic.ETriggerPointStatus.Inactive) { PlayerGuardCrushTriggerAttackLogic.SetTriggerPointStatus(m_InfoComponent, PlayerGuardCrushTriggerAttackLogic.ETriggerPointStatus.Active); // Successfully parrying a hit activate the trigger } m_Animator.Play(K_PARRY_COUNTER_ANIM, 0, 0); ChronicleManager.AddChronicle(m_Owner, EChronicleCategory.Attack, "ParrySuccess: Freeze time"); m_TimeScaleManager.FreezeTime(m_Animator); }
private void Start() { PlayerGuardCrushTriggerAttackLogic.OnTriggerPointStatusChanged[(int)m_Target] += OnTriggerPointStatusChanged; PlayerGuardCrushTriggerAttackLogic.ETriggerPointStatus triggerPointStatusAtStart = PlayerGuardCrushTriggerAttackLogic.GetTriggerPointStatus((int)m_Target); OnTriggerPointStatusChanged(triggerPointStatusAtStart); }