コード例 #1
0
    private void Update()
    {
        // If left joycon, inverse the up down direction
        var gryo = JoyConInputManager.GetJoyConGyro(false);

        acc = JoyConInputManager.GetJoyConAccel(false);
        transform.localRotation = JoyConInputManager.GetJoyConOrientation(false);
        //var rotZ = TransformUtils.GetInspectorRotation(transform).z;
        //if (rotZ < 0 && Mathf.Abs(rotZ + 90.0f) > 22) return;
        //if (rotZ > 0 && Mathf.Abs(rotZ - 90.0f) > 22) return;
        //roundAccX = Mathf.Round(acc.x * 10.0f) / 10.0f;
        //transform.position = new Vector3(transform.position.x, transform.position.y + roundAccX * 12.0f * Time.deltaTime, transform.position.z);
        //Debug.Log(gryo);
        //Vector3 presentAcc = JoyConInputManager.GetJoyConAccel(false);
        //transform.Translate((prevAcc - presentAcc) * Time.deltaTime * speed);
        //prevAcc = presentAcc;
    }
コード例 #2
0
    private void getGyro()
    {
        var getGyroy = JoyConInputManager.GetJoyConGyro(isUsingLeftJoyCon).y;

        if (Outputcount > 0)
        {
            if (getGyroy < -2 || getGyroy > 2)
            {
                count       += Mathf.Abs(getGyroy);
                Outputcount  = countdown - (int)(count / 100.0f);
                Counter.text = "" + Outputcount;
                Debug.Log(count);
            }
        }
        else
        {
            Counter.enabled = false;
            //MarathonPlayer.isDown = false;
            ShouldRotate = false;
            player.transform.localRotation = Quaternion.identity;
            JoyConInputManager.Recenter(isUsingLeftJoyCon);
            Destroy(this.gameObject);
        }
    }
コード例 #3
0
    /// <summary>
    ///
    /// </summary>
    /// <returns>Is used joyCon for input?</returns>
    private bool HandlePlayerJoyConInput()
    {
        if (!PlayerBalloon)
        {
            return(false);
        }
        if (!isUseLeftJoycon && !JoyConInputManager.IsUsingRightJoyCon())
        {
            return(false);
        }
        else if (isUseLeftJoycon && !JoyConInputManager.IsUsingLeftJoyCon())
        {
            return(false);
        }

        /// Handle release balloon
        var gyroInfo = JoyConInputManager.GetJoyConGyro(isUseLeftJoycon);

        if (gyroInfo.y < joyConReleaseSensitivity ||
            JoyConInputManager.GetJoyConButtonDown(Joycon.Button.SHOULDER_2))
        {
            if (PlayerBalloon.State != Balloon.BalloonStatus.Normal)
            {
                JoyConInputManager.TriggerRumble(false, 180.0f, 360.0f, 0.3f, 200);
                ReleaseBalloon(true);
            }
            return(true);
        }

        /// Handle inflate balloon and animation
        if (Mathf.Abs(gyroInfo.y) > Mathf.Abs(joyConReleaseSensitivity))
        {
            return(false);
        }
        Vector3 joyAccel   = JoyConInputManager.GetJoyConAccel(isUseLeftJoycon);
        float   accelDelta = joyAccel.sqrMagnitude - joyConInputSensitivity;

        if (accelDelta < 0.0f)
        {
            player.ResetInflateAnimationSpeed();
            return(false);
        }

        float newAir = accelDelta * joyConInflateSpeed * Time.deltaTime;

        if (newAir == 0.0f)
        {
            return(false);
        }
        playerJoyConInputSpeed = newAir * joyConInflateAniSpeedMultiplier;
        player.SetInflateAnimationSpeed(playerJoyConInputSpeed);
        inflatedAirVolume += newAir;
        if (PlayerBalloon.Inflate(newAir, newAir * joyConInputPitchMultiplier))
        {
            // Process after balloon boomed
            JoyConInputManager.TriggerRumble(false, 360.0f, 180.0f, 0.7f, 400);
            PlayerBalloon = null;
            Invoke("SpawnPlayerBalloon", failFreezeTime);
            IsPlayerFreezing = true;
            player.StartDizzy();
            player.ResetInflateAnimationSpeed();
        }
        return(true);
    }