Пример #1
0
        public IEnumerator ResetPlayer(GameObject player)
        {
//            print("static time: " + renderTextureTime);
            if (currentRestartCount < maxRestartCount)
            {
                OnSoundPlayOneShot?.Invoke(audioLib.TVStatic);

                RatbagSpawner selected = SelectAVent();

                PlayerTransformToSpawner(selected, player.transform);

                gm.GetService <CameraPostProcessingRenderTextureOverride>().SetCameraOverride(materialOverride, textureOverride, renderTextureTime);
                PlayerReset?.Invoke();

                yield return(new WaitForSeconds(.5f));

                selected.OpenVent();

                TurnOnLightsTimer(spawningLightsTimer);

                currentRestartCount++;
            }
            else
            {
                ReloadScene();
            }
        }
Пример #2
0
        public override void OnStateEnter()
        {
            OnSoundPlayOneShot?.Invoke(audioLib.HingeSqueek);

            LockRotation?.Invoke(false);

            ratBrain.SetAnimationState(ratBrain.AvailableAnimationStates[typeof(AnimationStates.Tripping)]);

            GravityEnabled?.Invoke(true);
        }
Пример #3
0
        public override void OnStateEnter()
        {
            SetTimerToDefault();

            CheckIfStuckInGround();

            CheckRotation();

            CheckConstraints();

            ratBrain.SetAnimationState(ratBrain.AvailableAnimationStates[typeof(AnimationStates.Floored)]);

            OnSoundPlayOneShot?.Invoke(audioLib.ratbag_Floored);
        }
Пример #4
0
        private void KnockingTheTarget(GameObject target)
        {
            StartCoroutine(gm.GetService <DamageEffects>().PauseGameAndInvertColours());

            Rigidbody2D targetRb = target.GetComponentInParent <Rigidbody2D>() ?? throw new ArgumentNullException("target.GetComponentInParent<Rigidbody2D>()");

            if (playerRb.velocity.magnitude != 0)
            {
                AddForce_WhenPlayerMoving(targetRb);
            }
            else
            {
                AddForce_WhenPlayerStill(targetRb);
            }

            OnSoundPlayOneShot?.Invoke(audioLib.ratbag_Hitting);
        }
Пример #5
0
 public override void OnStateExit()
 {
     OnSoundPlayOneShot?.Invoke(audioLib.ratbag_feetLanded);
 }