Add scene transitions, lose sanity points
This commit is contained in:
@@ -9,7 +9,7 @@ namespace Scampz.GameJam
|
||||
|
||||
public void FadeAnimation()
|
||||
{
|
||||
//animator.SetTrigger("FadeOut");
|
||||
animator.SetTrigger("Start");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Scampz.GameJam.Assets.Scripts
|
||||
{
|
||||
@@ -9,15 +10,13 @@ namespace Scampz.GameJam.Assets.Scripts
|
||||
|
||||
private void OnTriggerEnter(Collider collider)
|
||||
{
|
||||
var allCamerasInCurrentScene = FindObjectsOfType<Camera>();
|
||||
foreach (var sceneCamera in allCamerasInCurrentScene)
|
||||
sceneCamera.enabled = false;
|
||||
|
||||
if (collider.CompareTag("Player"))
|
||||
{
|
||||
foreach (var camera in cameras)
|
||||
camera.enabled = true;
|
||||
}
|
||||
StartCoroutine(ActivateCameras());
|
||||
}
|
||||
|
||||
private IEnumerator ActivateCameras()
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,27 +4,16 @@ namespace Scampz.GameJam
|
||||
{
|
||||
public class CameraFollow : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private Transform targetObject;
|
||||
[SerializeField]
|
||||
private Vector3 cameraOffset;
|
||||
[SerializeField]
|
||||
private float smoothFactor = 0.5f;
|
||||
[SerializeField]
|
||||
private bool lookAtTarget = false;
|
||||
[SerializeField]
|
||||
private float _cameraYPosition = 45f;
|
||||
|
||||
private void Start()
|
||||
private void FixedUpdate()
|
||||
{
|
||||
transform.position = targetObject.transform.position - cameraOffset;
|
||||
}
|
||||
|
||||
private void LateUpdate()
|
||||
{
|
||||
var lockedInYPosition = new Vector3(targetObject.transform.position.x - cameraOffset.x, _cameraYPosition, targetObject.transform.position.z - cameraOffset.z);
|
||||
var player = GameObject.FindGameObjectWithTag("Player");
|
||||
var lockedInYPosition = new Vector3(player.transform.position.x - cameraOffset.x, _cameraYPosition, player.transform.position.z - cameraOffset.z);
|
||||
transform.position = lockedInYPosition;
|
||||
transform.LookAt(transform);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ namespace Scampz.GameJam
|
||||
public class GameManager : MonoBehaviour
|
||||
{
|
||||
public static GameManager Instance;
|
||||
//private LevelChanger _levelChanger;
|
||||
private LevelChanger _levelChanger;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@@ -18,7 +18,7 @@ namespace Scampz.GameJam
|
||||
}
|
||||
|
||||
Instance = this;
|
||||
//_levelChanger = GetComponentInChildren<LevelChanger>();
|
||||
_levelChanger = GetComponentInChildren<LevelChanger>();
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,9 @@ namespace Scampz.GameJam
|
||||
|
||||
private IEnumerator LoadSceneAsync(string sceneName, LoadSceneMode loadSceneMode)
|
||||
{
|
||||
yield return null;
|
||||
_levelChanger.FadeAnimation();
|
||||
yield return new WaitForSecondsRealtime(3f);
|
||||
|
||||
var loadSceneOperation = SceneManager.LoadSceneAsync(sceneName, loadSceneMode);
|
||||
loadSceneOperation.allowSceneActivation = false;
|
||||
while (!loadSceneOperation.isDone)
|
||||
|
||||
@@ -13,7 +13,6 @@ public class PlayerSpawnController : MonoBehaviour
|
||||
Player = Instantiate(_playerPrefab);
|
||||
Player.transform.position = _spawnLocation.transform.position;
|
||||
Player.transform.rotation = _spawnLocation.transform.rotation;
|
||||
DontDestroyOnLoad(Player);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace Scampz.GameJam.Assets.Scripts
|
||||
{
|
||||
public class UseGroundChecking : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private bool useGroundChecking;
|
||||
|
||||
private void OnTriggerEnter(Collider collider)
|
||||
{
|
||||
if (collider.CompareTag("Player"))
|
||||
{
|
||||
var playerSpawnController = FindObjectOfType<PlayerSpawnController>();
|
||||
var player = playerSpawnController.Player;
|
||||
var rayCaster = player.GetComponent<RayCaster>();
|
||||
rayCaster.enabled = useGroundChecking;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e569519f096090547aafb2a539705467
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,4 +1,5 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Scampz.GameJam.Assets.Scripts.SceneManagement
|
||||
{
|
||||
@@ -6,18 +7,38 @@ namespace Scampz.GameJam.Assets.Scripts.SceneManagement
|
||||
{
|
||||
[SerializeField]
|
||||
private Transform _spawnPoint;
|
||||
[SerializeField]
|
||||
private Camera[] camerasToActivate;
|
||||
|
||||
private void OnTriggerEnter(Collider collider)
|
||||
{
|
||||
if (collider.CompareTag("Player"))
|
||||
{
|
||||
var player = GameObject.FindGameObjectWithTag("Player");
|
||||
var cc = player.GetComponent<CharacterController>();
|
||||
cc.enabled = false;
|
||||
player.transform.position = _spawnPoint.position;
|
||||
player.transform.rotation = _spawnPoint.rotation;
|
||||
cc.enabled = true;
|
||||
StartCoroutine(LoadNextLevel());
|
||||
}
|
||||
}
|
||||
|
||||
private IEnumerator LoadNextLevel()
|
||||
{
|
||||
var levelChanger = FindObjectOfType<LevelChanger>();
|
||||
levelChanger.FadeAnimation();
|
||||
yield return null;
|
||||
yield return new WaitForSeconds(3.0f);
|
||||
var player = GameObject.FindGameObjectWithTag("Player");
|
||||
player.SetActive(false);
|
||||
var cc = player.GetComponent<CharacterController>();
|
||||
cc.enabled = false;
|
||||
player.transform.position = _spawnPoint.position;
|
||||
player.transform.rotation = _spawnPoint.rotation;
|
||||
cc.enabled = true;
|
||||
yield return null;
|
||||
var allCamerasInCurrentScene = FindObjectsOfType<Camera>();
|
||||
foreach (var sceneCamera in allCamerasInCurrentScene)
|
||||
sceneCamera.enabled = false;
|
||||
foreach (var camera in camerasToActivate)
|
||||
camera.enabled = true;
|
||||
player.SetActive(true);
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user