Ejemplo n.º 1
0
 public void forceOffWall(EWallDirection direction)
 {
     if (direction == EWallDirection.Left)
     {
         onLeftWallTimer       = float.MinValue;
         forceOffLeftWallTimer = Time.fixedTime;
     }
     else
     {
         onRightWallTimer       = float.MinValue;
         forceOffRightWallTimer = Time.fixedTime;
     }
 }
Ejemplo n.º 2
0
    public bool isOnWall(EWallDirection direction)
    {
        // If the last time we were on a wall was roughly 2 frames ago, we are still on the wall
        if (direction == EWallDirection.Left)
        {
            if (forceOffLeftWallTimer != float.MinValue)
            {
                if (forceOffLeftWallTimer + Time.fixedDeltaTime > Time.fixedTime)
                {
                    return(false);
                }
                else
                {
                    forceOffLeftWallTimer = float.MinValue;
                    return(true);
                }
            }

            return(onLeftWallTimer + 2 * Time.fixedDeltaTime > Time.fixedTime);
        }
        else
        {
            if (forceOffRightWallTimer != float.MinValue)
            {
                if (forceOffRightWallTimer + Time.fixedDeltaTime > Time.fixedTime)
                {
                    return(false);
                }
                else
                {
                    forceOffRightWallTimer = float.MinValue;
                    return(true);
                }
            }

            return(onRightWallTimer + 2 * Time.fixedDeltaTime > Time.fixedTime);
        }
    }