Ejemplo n.º 1
0
    public static void SetTriggerPointStatus(PlayerInfoComponent infoComponent, ETriggerPointStatus status)
    {
        if (status == ETriggerPointStatus.Inactive)
        {
            if (m_TriggerPointStatus[infoComponent.GetPlayerIndex()] == ETriggerPointStatus.Triggered)
            {
                infoComponent.ResetDefaultAndCurrentPalette();
            }

            if (infoComponent.GetPlayerSettings().TriggerPointAlwaysActive)
            {
                status = ETriggerPointStatus.Active;
            }
        }

        m_TriggerPointStatus[infoComponent.GetPlayerIndex()] = status;
        OnTriggerPointStatusChanged[infoComponent.GetPlayerIndex()]?.Invoke(status);
    }
Ejemplo n.º 2
0
    void OnGrabbed(BaseEventParameters baseParams)
    {
        if (IsDead())
        {
            return;
        }

#if UNITY_EDITOR || DEBUG_DISPLAY
        if (m_DEBUG_BreakOnGrabbed)
        {
            Debug.Break();
        }
#endif
        GrabbedEventParameters grabbedParams   = (GrabbedEventParameters)baseParams;
        PlayerBaseAttackLogic  grabAttackLogic = grabbedParams.m_AttackLogic;

        ChronicleManager.AddChronicle(gameObject, EChronicleCategory.Health, "On grabbed by : " + grabAttackLogic.GetAttack().m_Name);
        m_StunInfoSC.StartStun(grabAttackLogic, EAttackResult.Hit);
        PlayHitAnimation(grabAttackLogic);
        m_AudioManager.PlayHitSFX(m_InfoComponent.GetPlayerIndex(), EAttackSFXType.Hit_Throw, false);
    }
Ejemplo n.º 3
0
    void DisplayInputs()
    {
        InputManager.GetAttackInputList(m_PlayerInfoComponentToDisplay.GetPlayerIndex(), m_PlayerMovementComponentToDisplay.IsLeftSide(), ref m_AttackInputs);
        if (m_AttackInputs.Count > 0)
        {
            // LB is not assigned
            m_AttackInputs.RemoveAll(input => input.GetInputKey() == PlayerGamePad.K_DEFAULT_UNASSIGNED_INPUT);
        }

        if (m_AttackInputs.Count > 0)
        {
            m_TriggeredInputs.Add(new List <GameInput>(m_AttackInputs));
            if (m_TriggeredInputs.Count > m_GameInputList.transform.childCount)
            {
                m_TriggeredInputs.RemoveRange(0, (int)(m_TriggeredInputs.Count - m_GameInputList.transform.childCount));
            }

            int triggeredInputIndex;
            for (int i = 0; i < m_TriggeredInputs.Count; i++)
            {
                triggeredInputIndex = (m_TriggeredInputs.Count - 1) - i;
                Transform gameInputs = m_GameInputList.transform.GetChild(i);
                for (int j = 0; j < gameInputs.childCount; j++)
                {
                    if (j < m_TriggeredInputs[triggeredInputIndex].Count)
                    {
                        if (m_TriggeredInputs[triggeredInputIndex][j].GetInputKey() == EInputKey.LT)
                        {
                            // Check that it remains at least 2 gameinputs image to fill, else stop now
                            if (j < m_GameInputsImage[i].Count - 2)
                            {
                                InputUIInfo inputInfoA = UIConfig.Instance.GetAssociatedInputUIInfo(EInputKey.B);
                                m_GameInputsImage[i][j].sprite  = inputInfoA.m_GameSprite;
                                m_GameInputsImage[i][j].enabled = true;

                                j++;
                                InputUIInfo inputInfoB = UIConfig.Instance.GetAssociatedInputUIInfo(EInputKey.A);
                                m_GameInputsImage[i][j].sprite  = inputInfoB.m_GameSprite;
                                m_GameInputsImage[i][j].enabled = true;
                            }
                            else
                            {
                                break;
                            }
                        }
                        else if (m_TriggeredInputs[triggeredInputIndex][j].GetInputKey() == EInputKey.RT)
                        {
                            // Check that it remains at least 2 gameinputs image to fill, else stop now
                            if (j < m_GameInputsImage[i].Count - 2)
                            {
                                InputUIInfo inputInfoY = UIConfig.Instance.GetAssociatedInputUIInfo(EInputKey.Y);
                                m_GameInputsImage[i][j].sprite  = inputInfoY.m_GameSprite;
                                m_GameInputsImage[i][j].enabled = true;

                                j++;
                                InputUIInfo inputInfoX = UIConfig.Instance.GetAssociatedInputUIInfo(EInputKey.X);
                                m_GameInputsImage[i][j].sprite  = inputInfoX.m_GameSprite;
                                m_GameInputsImage[i][j].enabled = true;
                            }
                            else
                            {
                                break;
                            }
                        }
                        else
                        {
                            InputUIInfo inputInfo = UIConfig.Instance.GetAssociatedInputUIInfo(m_TriggeredInputs[triggeredInputIndex][j].GetInputKey());
                            if (inputInfo != null)
                            {
                                m_GameInputsImage[i][j].sprite  = inputInfo.m_GameSprite;
                                m_GameInputsImage[i][j].enabled = true;
                            }
                        }
                    }
                    else
                    {
                        m_GameInputsImage[i][j].enabled = false;
                    }
                }
            }

#if UNITY_EDITOR
            if (m_TextToDisplayInputs != null)
            {
                m_TextToDisplayInputs.text = string.Empty;
                for (int i = 0; i < m_TriggeredInputs.Count; i++)
                {
                    for (int j = 0; j < m_TriggeredInputs[i].Count; j++)
                    {
                        m_TextToDisplayInputs.text += m_TriggeredInputs[i][j].GetInputString();
                    }
                }
            }

            if (m_TextToDisplayInputsAttack != null)
            {
                m_TextToDisplayInputsAttack.text = m_PlayerAttackComponentToDisplay.GetTriggeredInputsString();
            }
#endif
        }
    }
Ejemplo n.º 4
0
 public void SpawnHitFX(EHitFXType hitFXType)
 {
     m_FXManager.SpawnHitFX(m_PlayerInfoComponent.GetPlayerIndex(), hitFXType, m_FXHook.position, m_FXHook.localRotation, m_FXHook.lossyScale.x < 0);
 }
Ejemplo n.º 5
0
 public int GetPlayerIndex()
 {
     return(m_InfoComponent.GetPlayerIndex());
 }
Ejemplo n.º 6
0
 void Start()
 {
     m_Enemy      = GameObject.FindGameObjectWithTag(Utils.GetEnemyTag(gameObject)).transform.root;
     m_IsLeftSide = (m_InfoComponent.GetPlayerIndex() == 0) ? true : false;
 }