Ejemplo n.º 1
0
 void Update()
 {
     if (VfigInput.GetButtonDown(playerNum - 1, VfigInput.Button.A))
     {
         jumpPressed = true;
     }
 }
Ejemplo n.º 2
0
    public void FixedUpdate()
    {
        caterpillar.ax  = caterpillar.speed * VfigInput.GetAxis(caterpillar.playerNum - 1, VfigInput.Axis.LeftStickX);
        caterpillar.vx += caterpillar.ax * Time.deltaTime;
        caterpillar.vx *= caterpillar.friction;

        //Left and right collisions?
        caterpillar.SideCollisionLeft();
        caterpillar.SideCollisionRight();

        caterpillar.vy -= caterpillar.gravity * Time.deltaTime;
        if (caterpillar.vy < -caterpillar.maxDropSpeed * Time.deltaTime)
        {
            caterpillar.vy = -caterpillar.maxDropSpeed * Time.deltaTime;
        }

        if (caterpillar.vy < 0)
        {
            if (caterpillar.GroundCollision())
            {
                onGroundTimer = caterpillar.onGroundLeeway;
            }
        }
        else
        {
            caterpillar.CollisionTop();
            onGroundTimer = 0;
        }

        if (onGroundTimer > 0 && caterpillar.jumpPressed)
        {
            caterpillar.jumpPressed = false;
            caterpillar.vy          = caterpillar.jumpVelocity * Time.deltaTime;

            caterpillar.ChangeState(new JumpingState(caterpillar));
            return;
        }

        onGroundTimer -= Time.deltaTime;
        caterpillar.transform.Translate(caterpillar.vx * Time.deltaTime, caterpillar.vy * Time.deltaTime, 0);
    }
Ejemplo n.º 3
0
    private void Update()
    {
        var newAimDir = new Vector2(VfigInput.GetAxis(playerNum - 1, VfigInput.Axis.RightStickX), -VfigInput.GetAxis(playerNum - 1, VfigInput.Axis.RightStickY));

        if (newAimDir.magnitude > 0)
        {
            currentAimDir = Vector2.Lerp(currentAimDir, newAimDir.normalized, 0.25f);
        }

        aim.SetAim(currentAimDir, currentThrowPower, maxThrowPower);

        if (beginFiring)
        {
            currentThrowPower = Mathf.Clamp(currentThrowPower + throwGrowthSpeed * Time.deltaTime, 0, maxThrowPower);
        }

        float fireAxis = VfigInput.GetAxis(playerNum - 1, VfigInput.Axis.RightTrigger);

        if (fireAxis > 0 && !beginFiring && !animateFiring)
        {
            beginFiring       = true;
            currentThrowPower = initialThrowPower;
        }
        else if (fireAxis == 0 && beginFiring && !animateFiring)
        {
            beginFiring   = false;
            animateFiring = true;
            Vector2 aimDir     = currentAimDir;
            float   throwPower = currentThrowPower;
            itsAliiiiiive.StartThrow(
                // throwing point of animation
                () => { Throw(aimDir, throwPower); },
                // animation finished
                () => { animateFiring = false; }
                );
            currentThrowPower = initialThrowPower;
        }
    }
Ejemplo n.º 4
0
    public void FixedUpdate()
    {
        caterpillar.ax = caterpillar.speed * VfigInput.GetAxis(caterpillar.playerNum - 1, VfigInput.Axis.LeftStickX);

        caterpillar.vx += caterpillar.ax * Time.fixedDeltaTime;
        caterpillar.vx *= caterpillar.friction;

        caterpillar.vy *= caterpillar.jumpArcFriction;

        jumpTimer -= Time.fixedDeltaTime;

        if (jumpTimer <= 0 || !VfigInput.GetButton(caterpillar.playerNum - 1, VfigInput.Button.A))
        {
            caterpillar.ChangeState(new WalkingState(caterpillar));
            return;
        }

        caterpillar.SideCollisionLeft();
        caterpillar.SideCollisionRight();

        if (caterpillar.vy < 0 && caterpillar.GroundCollision())
        {
            Debug.Log("ground or low vy");
            caterpillar.ChangeState(new WalkingState(caterpillar));
            return;
        }

        if (caterpillar.vy >= 0 && caterpillar.CollisionTop())
        {
            Debug.Log("Top collision");
            caterpillar.vy = 0;
            caterpillar.ChangeState(new WalkingState(caterpillar));
            return;
        }

        caterpillar.transform.Translate(caterpillar.vx * Time.deltaTime, caterpillar.vy * Time.deltaTime, 0);
    }
Ejemplo n.º 5
0
 public bool GetButtonUp(VfigInput.Button button)
 {
     return(VfigInput.GetButtonUp((int)_gamepadAssignment, button));
 }
Ejemplo n.º 6
0
 public float GetAxis(VfigInput.Axis axis)
 {
     return(VfigInput.GetAxis((int)_gamepadAssignment, axis));
 }