示例#1
0
    public override float GetAxis(GameAxis axis)
    {
        switch (axis)
        {
        case GameAxis.X_MOVEMENT:
            return(Input.GetAxis(xAxisName));

        case GameAxis.Y_MOVEMENT:
            return(Input.GetAxis(yAxisName));
        }

        return(0.0f);
    }
示例#2
0
    public static bool UnbindAxis(string gameAxisID, string inputAxisDescr)
    {
        if (gameAxisBindings.ContainsKey(gameAxisID)) //Game action exists
        {
            GameAxis gameAxis = gameAxisBindings[gameAxisID];
            bool     success  = gameAxis.UnbindInputAxis(inputAxisDescr);
            if (success && !gameAxis.HasBoundInputAxes())
            {
                gameAxisBindings.Remove(gameAxisID);
            }
            return(success);
        }

        return(false);
    }
示例#3
0
    static GameInput()
    {
#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
        Shoot       = XGameButton.LeftTrigger;
        UseWeapon   = XGameButton.RightTrigger;
        Submit      = XGameButton.A;
        Cancel      = XGameButton.B;
        StartButton = XGameButton.Start;
        Swipe       = XGameButton.RightBumper;

        axisButtons = new GameButton[] { Shoot, UseWeapon, Submit, Cancel, StartButton, Swipe };

        Horizontal      = XGameAxis.LeftStickHorizonal;
        Vertical        = XGameAxis.LeftStickVertical;
        RightHorizontal = XGameAxis.RightStickHorizontal;
        RightVertical   = XGameAxis.RightStickVertical;

        gameAxes = new GameAxis[] { Horizontal, Vertical, RightHorizontal, RightVertical };
#endif
    }
示例#4
0
    public float GetAxis(GameAxis axis, int player = -1)
    {
        if (player < 0)
        {
            if (!globalInputEnabled)
            {
                return(0.0f);
            }
            float sum = 0.0f;
            foreach (InputPlayer pl in players)
            {
                sum += pl.GetAxis(axis);
            }
            if (sum > 1.0f)
            {
                sum = 1.0f;
            }
            else if (sum < -1.0f)
            {
                sum = -1.0f;
            }

            return(sum);
        }
        else
        {
            if (players.Count > player && players[player].inputEnabled)
            {
                return(players[player].GetAxis(axis));
            }
            else
            {
                return(0.0f);
            }
        }
    }
示例#5
0
 public virtual float GetAxis(GameAxis axis)
 {
     return(0.0f);
 }
示例#6
0
 /*
  * Returns the cumulative value of an axis from all Update frames since the last FixedUpdate.
  */
 public static float CumulativeValue(GameAxis axis)
 {
     return m_isMuted ? 0 : m_axis[axis].CumulativeValue();
 }
示例#7
0
 /*
  * Returns the average value of an axis from all Update frames since the last FixedUpdate.
  */
 public static float AverageValue(GameAxis axis)
 {
     return m_isMuted ? 0 : m_axis[axis].AverageValue();
 }