public static void ChangePlayerState(PlayerMovement.PlayerState state) { PlayerMovement player; if (IsLoaded) { player = CurrentPlayer.GetComponent <PlayerMovement>(); } else { player = GameObject.FindWithTag("Player").GetComponent <PlayerMovement>(); } player.ChangeState(state); }
private void OnTriggerEnter(Collider other) { if (other.gameObject.name.Equals("Obstacle")) { EventManager.Instance.IsCollideObstacle(); } if (other.gameObject.layer == brickLayer) { wallStrength = other.transform.parent.gameObject.GetComponent <WallScript>().Strength; playerState = gameObject.GetComponent <PlayerMovement>().state; playerSpeed = gameObject.GetComponent <PlayerMovement>().speed; maxPlayerSpeed = gameObject.GetComponent <PlayerMovement>().maxSpeed; GameObject wall = other.transform.parent.gameObject; rb = other.gameObject.GetComponent <Rigidbody>(); if (isObjectInteractedBefore(rb)) { return; } if (playerState != PlayerMovement.PlayerState.Flying && flag2 == 0) { flag2 = 1; EventManager.Instance.WallCollider(); return; } ShakeCamera(); SetChildObjectsMoveable(wall); ExplodeWall(rb); EventManager.Instance.OnPlayerSmashedWall(); playerSpeed += 5; } else if (other.tag.Equals("NextLevel")) { EventManager.Instance.LevelTriggered(); flag = 1; } }