119 lines
2.9 KiB
C#
119 lines
2.9 KiB
C#
|
|
using System.Collections;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using UnityEngine;
|
|||
|
|
using UnityEngine.Networking;
|
|||
|
|
using UnityEngine.SceneManagement;
|
|||
|
|
using UnityEngine.UI;
|
|||
|
|
using System.Linq;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public class XMZJ : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
public static XMZJ Instance;
|
|||
|
|
|
|||
|
|
private void Awake()
|
|||
|
|
{
|
|||
|
|
Instance = this;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><>Ҫ<EFBFBD><D2AA><EFBFBD>صĶ<D8B5><C4B6><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public GameObject[] objsToHide;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD>ذ<EFBFBD>ť
|
|||
|
|
/// </summary>
|
|||
|
|
public GameObject objReturn;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD>պ<EFBFBD><D5BA>ӣ<EFBFBD><D3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD>պ<EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public Material[] skyboxs;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>Ϊ0<CEAA><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
int currentXMZJIndex;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ
|
|||
|
|
/// </summary>
|
|||
|
|
string xmzjScenePre = "XMZJ_Scene";
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public void ReturnToMain()
|
|||
|
|
{
|
|||
|
|
foreach (var obj in objsToHide)
|
|||
|
|
{
|
|||
|
|
obj.SetActive(true);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
objReturn.SetActive(false);
|
|||
|
|
RenderSettings.skybox = skyboxs[0];
|
|||
|
|
SceneLoader.Instance.SetCameraPosition(new Vector3(20, 0.515f, 48), new Vector3(0, -10, 0));
|
|||
|
|
|
|||
|
|
BundleLoader.Instance.UnLoadCurrentScene();
|
|||
|
|
|
|||
|
|
currentXMZJIndex = 0;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="index"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
|
public void LoadXMZJ(int index)
|
|||
|
|
{
|
|||
|
|
if (currentXMZJIndex != index)
|
|||
|
|
{
|
|||
|
|
BaseController.CanControl = false;
|
|||
|
|
currentXMZJIndex = index;
|
|||
|
|
string sceneName = xmzjScenePre + currentXMZJIndex;
|
|||
|
|
BundleLoader.Instance.LoadScene(Application.isEditor ? sceneName + "_win" : sceneName, sceneName, XMZJLoaded);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
void XMZJLoaded()
|
|||
|
|
{
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>պ<EFBFBD>
|
|||
|
|
RenderSettings.skybox = skyboxs[currentXMZJIndex];
|
|||
|
|
|
|||
|
|
foreach (var obj in objsToHide)
|
|||
|
|
{
|
|||
|
|
obj.SetActive(false);
|
|||
|
|
}
|
|||
|
|
objReturn.SetActive(true);
|
|||
|
|
|
|||
|
|
|
|||
|
|
// ж<>ؾɳ<D8BE><C9B3><EFBFBD><EFBFBD><EFBFBD>Դ
|
|||
|
|
BundleLoader.Instance.UnLoadOldScene();
|
|||
|
|
|
|||
|
|
SetCameraPosition();
|
|||
|
|
|
|||
|
|
SceneManager.SetActiveScene(SceneManager.GetSceneByName(xmzjScenePre + currentXMZJIndex));
|
|||
|
|
|
|||
|
|
BaseController.CanControl = true;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㼣<EFBFBD><E3BCA3><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>Ĭ<EFBFBD><C4AC>λ<EFBFBD><CEBB>
|
|||
|
|
/// </summary>
|
|||
|
|
void SetCameraPosition()
|
|||
|
|
{
|
|||
|
|
GameObject objSP = GameObject.Find("StartPosition" + currentXMZJIndex);
|
|||
|
|
if (objSP != null)
|
|||
|
|
{
|
|||
|
|
CommonData.MainCamera.gameObject.SetActive(false);
|
|||
|
|
CommonData.MainCamera.transform.position = objSP.transform.position;
|
|||
|
|
CommonData.MainCamera.transform.rotation = objSP.transform.rotation;
|
|||
|
|
CommonData.MainCamera.gameObject.SetActive(true);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|