|
|
|
|
using System.Collections;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
using SiegeSong;
|
|
|
|
|
using Gaia;
|
|
|
|
|
|
|
|
|
|
namespace SiegeSong
|
|
|
|
|
{
|
|
|
|
|
public class RuntimeManager : MonoBehaviour
|
|
|
|
|
{
|
|
|
|
|
public LoadingCellManager LoadingCellManager;
|
|
|
|
|
public CameraManager CameraManager;
|
|
|
|
|
public SaveFileLoader SaveFileLoader;
|
|
|
|
|
public InputManager PlayerInputManager;
|
|
|
|
|
public GameObject PlayerActorInstance;
|
|
|
|
|
public GaiaScenePlayer GaiaPlayer;
|
|
|
|
|
public GaiaGlobal GaiaGlobalSettings;
|
|
|
|
|
public Suimono.Core.SuimonoObject WaterSurface;
|
|
|
|
|
public Suimono.Core.SuimonoModule WaterModule;
|
|
|
|
|
//public EnviroSky EnviroSky;
|
|
|
|
|
public Calendar Calendar;
|
|
|
|
|
|
|
|
|
|
public void PopulateReferences()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
if (WaterSurface != null)
|
|
|
|
|
WaterSurface.gameObject.SetActive(true);
|
|
|
|
|
|
|
|
|
|
if (EnviroSkyMgr.instance != null)
|
|
|
|
|
{
|
|
|
|
|
EnviroSkyMgr.instance.Player = PlayerActorInstance;
|
|
|
|
|
EnviroSkyMgr.instance.Camera = CameraManager.ActiveCamera.GetComponentInChildren<Camera>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (PlayerInputManager != null)
|
|
|
|
|
{
|
|
|
|
|
PlayerInputManager.Motor = PlayerActorInstance.GetComponent<Motor>();
|
|
|
|
|
PlayerInputManager.InventoryManager = PlayerActorInstance.GetComponentInChildren<InventoryManager>();
|
|
|
|
|
PlayerInputManager.Selector = PlayerActorInstance.GetComponentInChildren<Selector>();
|
|
|
|
|
//for (var i = 0; i < PlayerActorInstance.transform.childCount; i++)
|
|
|
|
|
//{
|
|
|
|
|
// var child = PlayerActorInstance.transform.GetChild(i).gameObject;
|
|
|
|
|
// if (child.name == "PlayerAgent")
|
|
|
|
|
// {
|
|
|
|
|
// PlayerInputManager.CameraManager = CameraManager;
|
|
|
|
|
// PlayerInputManager.InventoryManager = PlayerActorInstance.GetComponentInChildren<InventoryManager>();
|
|
|
|
|
// PlayerInputManager.Selector = PlayerActorInstance.GetComponentInChildren<Selector>();
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (GaiaPlayer != null)
|
|
|
|
|
{
|
|
|
|
|
GaiaPlayer.transform.parent = PlayerActorInstance.transform;
|
|
|
|
|
GaiaPlayer.transform.position = Vector3.zero;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (PlayerActorInstance != null)
|
|
|
|
|
{
|
|
|
|
|
if (CameraManager != null
|
|
|
|
|
&& CameraManager.ActiveCamera != null
|
|
|
|
|
&& CameraManager.ActiveCamera.transform.childCount > 0)
|
|
|
|
|
{
|
|
|
|
|
var cameraGameObject = CameraManager.ActiveCamera.transform.GetChild(0);
|
|
|
|
|
var camera = CameraManager.ActiveCamera.GetComponentInChildren<Camera>();
|
|
|
|
|
if (WaterModule != null)
|
|
|
|
|
{
|
|
|
|
|
WaterModule.gameObject.SetActive(true);
|
|
|
|
|
WaterModule.setCamera = CameraManager.ActiveCamera.transform.GetChild(0);
|
|
|
|
|
WaterModule.mainCamera = CameraManager.ActiveCamera.transform.GetChild(0);
|
|
|
|
|
WaterModule.manualCamera = CameraManager.ActiveCamera.transform.GetChild(0);
|
|
|
|
|
WaterModule.setTrack = PlayerActorInstance.transform;
|
|
|
|
|
WaterModule.playSounds = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (GaiaGlobalSettings != null)
|
|
|
|
|
GaiaGlobalSettings.m_mainCamera = CameraManager.ActiveCamera.GetComponentInChildren<Camera>();
|
|
|
|
|
}
|
|
|
|
|
PlayerActorInstance.SetActive(true);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void DePopulateReferences()
|
|
|
|
|
{
|
|
|
|
|
if (PlayerActorInstance != null)
|
|
|
|
|
PlayerActorInstance.SetActive(false);
|
|
|
|
|
|
|
|
|
|
if (EnviroSkyMgr.instance != null)
|
|
|
|
|
{
|
|
|
|
|
EnviroSkyMgr.instance.Player = null;
|
|
|
|
|
EnviroSkyMgr.instance.Camera = null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (WaterModule != null)
|
|
|
|
|
{
|
|
|
|
|
WaterModule.gameObject.SetActive(false);
|
|
|
|
|
WaterModule.playSounds = false;
|
|
|
|
|
WaterModule.setCamera = null;
|
|
|
|
|
WaterModule.mainCamera = null;
|
|
|
|
|
WaterModule.manualCamera = null;
|
|
|
|
|
WaterModule.setTrack = null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (PlayerInputManager != null)
|
|
|
|
|
{
|
|
|
|
|
PlayerInputManager.Motor = null;
|
|
|
|
|
PlayerInputManager.CameraManager = null;
|
|
|
|
|
PlayerInputManager.InventoryManager = null;
|
|
|
|
|
PlayerInputManager.Selector = null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (GaiaPlayer != null)
|
|
|
|
|
{
|
|
|
|
|
GaiaPlayer.transform.parent = null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (GaiaGlobalSettings != null)
|
|
|
|
|
GaiaGlobalSettings.m_mainCamera = null;
|
|
|
|
|
|
|
|
|
|
if (WaterSurface != null)
|
|
|
|
|
WaterSurface.gameObject.SetActive(false);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Start() { }
|
|
|
|
|
|
|
|
|
|
void Update() { }
|
|
|
|
|
}
|
|
|
|
|
}
|