Пример #1
0
 public void ResetTimer()
 {
     if (SqueezeTimer != null)
     {
         SqueezeTimer.Reset();
     }
 }
Пример #2
0
        public void ForceFinishTimer(bool nullify = false)
        {
            if (nullify)
            {
                SqueezeTimer = null;
                return;
            }

            if (SqueezeTimer != null)
            {
                SqueezeTimer.Tick(float.MaxValue);
            }
        }
Пример #3
0
        protected virtual void Movement()
        {
            if (isEnded)
            {
                if (isSpinning)
                {
                    return;
                }
                isSpinning = true;
                IsGlowing  = true;
                soulMate.transform.localPosition = new Vector3(-20, 0, 0);
                transform.localPosition          = new Vector3(20, 0, 0);
            }
            else
            {
                if (Ammo == 1)
                {
                    SetScale(minimumSize);
                }
                else if (Ammo == 6)
                {
                    SetScale(maxSize);
                }
                else if (Ammo == 3)
                {
                    SetScale(mediumSize);
                }

                Rigidbody.velocity = GamepadHelper.LeftStick * speed;

                // Collider size change
                if (Input.GetKey(anotherCharacterInhaleKey) || GamepadHelper.IsSqueezing)
                {
                    if (!IsSqueezeTimerRunning)
                    {
                        SqueezeTimer        = new Timer(squeezeTime, OnTimerComplete);
                        SqueezeTimer.Update = OnTimerUpdate;
                    }

                    SqueezeTimer.Tick(Time.deltaTime);

                    if (!IsIgnited && IsSqueezeTimerRunning && IsGlowing)
                    {
                        isBig = true;
                    }

                    //TODO: This is probably going to run waaaaay tooo often
                    if (isBig && IsSqueezeTimerRunning)
                    {
                        SoulMate.Ammo = 1;
                        Ammo          = 6;
                        SoundFx.Exhale();
                    }
                }

                // Creator is big and player let go
                if (isBig && GamepadHelper.IsSquezzingReleased)
                {
                    isGlowing = isBig = false;
                }

                if (Input.GetKeyUp(anotherCharacterInhaleKey) || GamepadHelper.IsSquezzingReleased || !IsSqueezeTimerRunning)
                {
                    soulMate.GetComponent <Creator>().Ammo = 3;
                    Ammo = 3;
                }

                GamePadeCheck();
            }
        }