private void Update()
    {
        for (int i = 0; i < _playerManager.Players.Count; i++)
        {
            if (_buttons[i].color.a == 0.0f)
            {
                _buttons[i].color = new Color(1, 1, 1, 1); // player is connected so show button!
            }
            PlayerInformation tPlayerInfo = _playerManager.Players[i];
            Sprite            tSprite;
            switch (_buttonType[i])
            {
            case ButtonType.BUTTON_A:
                tSprite = Resources.Load <Sprite>(SpritePaths.SpritePath[SpriteType.BUTTON_A_RELEASED]);
                break;

            case ButtonType.BUTTON_B:
                tSprite = Resources.Load <Sprite>(SpritePaths.SpritePath[SpriteType.BUTTON_B_RELEASED]);
                break;

            default:
                tSprite = Resources.Load <Sprite>(SpritePaths.SpritePath[SpriteType.BUTTON_A_RELEASED]);
                break;
            }
            if (_xboxControllerManager.GetButtonPressed(tPlayerInfo, _buttonType[i]))
            {
                _buttonPressed[i] = true;
                switch (_buttonType[i])
                {
                case ButtonType.BUTTON_A:
                    tSprite = Resources.Load <Sprite>(SpritePaths.SpritePath[SpriteType.BUTTON_A_PRESSED]);
                    break;

                case ButtonType.BUTTON_B:
                    tSprite = Resources.Load <Sprite>(SpritePaths.SpritePath[SpriteType.BUTTON_B_PRESSED]);
                    break;
                }
            }
            else if (!_xboxControllerManager.GetButtonPressed(tPlayerInfo, _buttonType[i]))
            {
                if (_buttonPressed[i])
                {
                    if (_buttonType[i].Equals(ButtonType.BUTTON_A))
                    {
                        _buttonClicked[i] = _aClicked;
                        _buttonType[i]    = ButtonType.BUTTON_B;
                    }
                    else if (_buttonType[i].Equals(ButtonType.BUTTON_B))
                    {
                        _buttonClicked[i] = _bClicked;
                        _buttonType[i]    = ButtonType.BUTTON_A;
                    }
                    _buttonPressed[i] = false;
                }
            }

            _buttons[i].sprite = tSprite;
        }
    }
Пример #2
0
    void Update()
    {
        _playerManager.UpdatePlayerList();

        for (int i = 0; i < _playerManager.Players.Count; i++)
        {
            if (_xboxController.GetButtonPressed(_playerManager.Players[i], ButtonType.BUTTON_A))
            {
                GoToThisScene(1);
            }
        }
    }
Пример #3
0
 /// <summary>
 /// Removes the loading screen if the scene is done loading
 /// </summary>
 private void Update()
 {
     if (_destroyable)
     {
         for (int i = 0; i < _playerManager.Players.Count; i++)
         {
             if (_xboxControllerManager.GetButtonPressed(_playerManager.Players[i], ButtonType.BUTTON_A))
             {
                 Time.timeScale = 1;
                 Destroy(transform.parent.gameObject);
             }
         }
     }
 }
    void Update()
    {
        //TODO: if using anvil/wood do animation
        if (_xboxController.GetButtonPressed(pPlayerInformation, _itemController.InteractButton))
        {
            if (!_itemController.amIHoldingAnItem)
            {
                if (_animCount < 2)
                {
                    SetAnimation(CharacterAnimationState.GRAB);
                    _animCount++;
                    return;
                }
            }
        }
        else
        {
            _animCount = 0;
        }

        if (_movement.IsDashing)
        {
            SetAnimation(CharacterAnimationState.DASH);
            return; // return so no other animation is possible
        }
        else if (_movement.Velocity.magnitude > 0)
        {
            if (_itemController.amIHoldingAnItem)
            {
                SetAnimation(CharacterAnimationState.WALK_HELD_ITEM);
            }
            else
            {
                SetAnimation(CharacterAnimationState.WALK);
            }
        }
        else
        {
            if (_itemController.amIHoldingAnItem)
            {
                SetAnimation(CharacterAnimationState.IDLE_HELD_ITEM);
            }
            else
            {
                SetAnimation(CharacterAnimationState.IDLE);
            }
        }
    }
Пример #5
0
 /// <summary>
 /// checks if the A button on a controller is clicked and then goes to the next scene or resets the current one
 /// </summary>
 public void Update()
 {
     if (_canContinue)
     {
         for (int i = 0; i < _playerManager.Players.Count; i++)
         {
             if (_xboxControllerManager.GetButtonPressed(_playerManager.Players[i], ButtonType.BUTTON_A))
             {
                 Debug.Log("works " + GameInfoTracker.Instance.CurrentRound);
                 if (GameInfoTracker.Instance.CurrentRound < 3)
                 {
                     Instantiate(_loadingScreen);
                 }
                 else
                 {
                     GameInfoTracker.Instance.ResetScore();
                     gameObject.AddComponent <GoToScene>().GoToThisScene(2);
                 }
             }
         }
     }
 }
Пример #6
0
    private void Update()
    {
        _playerManager.UpdatePlayerList(); // update players list
        CheckAllPlayersSelected();

#if UNITY_EDITOR
        if (Input.GetKey(KeyCode.Space))
        {
            SceneManager.LoadScene(2);                              // load scene only in editor mode
        }
#endif
        // check input from all players
        for (int i = 0; i < _playerManager.Players.Count; i++)
        {
            PlayerInformation tPlayerInfo = _playerManager.Players[i]; // input found
#if UNITY_EDITOR
            if (_xboxControllerManager.GetButtonPressed(tPlayerInfo, ButtonType.BUTTON_START))
            {
                SceneManager.LoadScene(2);                                                                                // load scene only in editor mode
            }
#endif
            if (_playerHasSelected[i])                                          // check if already selected a character
            {
                if (_selectionButtons.GetButtonClicked(ButtonType.BUTTON_B, i)) // check if back button has been clicked
                {
                    Sprite tCurrentSprite = _playerImages[i].sprite;
                    _playerHasSelected[i] = false;
                    _sprites.Add(tCurrentSprite);
                    _playerImages[i].color = new Color(_deselectedBlackness, _deselectedBlackness, _deselectedBlackness, 1f);
                    _playerSpriteIndex[i]  = _sprites.Count - 1;
                }
                else
                {
                    continue; // next 'i' index when not.
                }
            }

            //character next/previous selection
            if (_xboxControllerManager.GetLeftStickAxis(tPlayerInfo).x > _selectSensitivity)
            {
                if (_playerHasSwitchedCharacter[i])
                {
                    break;                                 // prevent fast player switching
                }
                _playerHasSwitchedCharacter[i] = true;
                if (_playerSpriteIndex[i] >= _sprites.Count - 1)
                {
                    _playerSpriteIndex[i] = 0;
                }
                else
                {
                    _playerSpriteIndex[i]++;
                }
            }
            else if (_xboxControllerManager.GetLeftStickAxis(tPlayerInfo).x < -_selectSensitivity)
            {
                if (_playerHasSwitchedCharacter[i])
                {
                    break;                                 // prevent fast player switching
                }
                _playerHasSwitchedCharacter[i] = true;
                if (_playerSpriteIndex[i] == 0)
                {
                    _playerSpriteIndex[i] = _sprites.Count - 1;
                }
                else
                {
                    _playerSpriteIndex[i]--;
                }
            }
            else
            {
                _playerHasSwitchedCharacter[i] = false;
            }
            if (_playerSpriteIndex[i] > _sprites.Count - 1)
            {
                _playerSpriteIndex[i] = 0;                                             // check index to prevent errors
            }
            Sprite tSprite = _sprites[_playerSpriteIndex[i]];

            //select character
            if (_selectionButtons.GetButtonClicked(ButtonType.BUTTON_A, i))
            {
                _playerHasSelected[i] = true;
                _sprites.Remove(tSprite);
                _playerImages[i].color = new Color(_selectedBlackness, _selectedBlackness, _selectedBlackness, 1);
                tPlayerInfo.SetSelectedCharacterPath(_characterPrefabReferences[tSprite]);
                for (int j = 0; j < _playerImages.Length; j++)
                {
                    if (j == i)
                    {
                        break;
                    }
                    if (_playerImages[j].sprite.Equals(tSprite))
                    {
                        _playerImages[j].sprite = _sprites[0];
                    }
                }
            }

            _playerImages[i].sprite = tSprite;
        }
    }
Пример #7
0
    void Update()
    {
        for (int i = 0; i < _playerManager.Players.Count; i++)
        {
            if (_xboxControllerManager.GetButtonPressed(_playerManager.Players[i], ButtonType.BUTTON_START))
            {
                if (!_pressedButton[i])
                {
                    PressPauseButton();
                    _pressedButton[i] = true;
                }
            }
            else if (_pressedButton[i])
            {
                _pressedButton[i] = false;
            }
            if (_pauseScreen.activeInHierarchy)
            {
                if (_xboxControllerManager.GetButtonPressed(_playerManager.Players[i], ButtonType.BUTTON_A))
                {
                    if (_selectedButton == 0)
                    {
                        ResumeGame();
                    }
                    else if (_selectedButton == 1)
                    {
                        RetryButton();
                    }
                    else
                    {
                        QuitGame();
                    }
                }

                if (_changedButton[i])
                {
                    if (_xboxControllerManager.GetLeftStickAxis(_playerManager.Players[i]).z > _sensitivity)
                    {
                        if (!_changedButton[i])
                        {
                            _changedButton[i] = true;
                            _selectedButton--;
                            if (_selectedButton == -1)
                            {
                                _selectedButton = _buttonImages.Count - 1;
                            }
                        }
                    }
                    else if (_xboxControllerManager.GetLeftStickAxis(_playerManager.Players[i]).z < -_sensitivity)
                    {
                        if (!_changedButton[i])
                        {
                            _changedButton[i] = true;
                            _selectedButton++;
                            if (_selectedButton >= _buttonImages.Count)
                            {
                                _selectedButton = 0;
                            }
                        }
                    }
                    else
                    {
                        _changedButton[i] = false;
                    }
                    for (int j = 0; j < _buttonImages.Count; j++)
                    {
                        if (_selectedButton != j)
                        {
                            _buttonImages[j].color = Color.grey;
                        }
                        else
                        {
                            _buttonImages[j].color = Color.white;
                        }
                    }
                }
            }
        }
    }