using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using Snxxz.UI;
|
|
public class CreateRoleProcessor : MonoBehaviour
|
{
|
[SerializeField] CreateRoleBehaviour m_Warrior;
|
[SerializeField] CreateRoleBehaviour m_Magic;
|
|
[SerializeField] CameraParams m_CameraParams;
|
|
Animator cameraAnimator;
|
Camera createRoleCamera;
|
|
public void LoadNecessaryResources()
|
{
|
if (cameraAnimator == null || createRoleCamera == null)
|
{
|
var prefab = SceneLoader.LoadCreateRole(m_CameraParams.prefabName);
|
var instance = GameObject.Instantiate(prefab);
|
cameraAnimator = instance.GetComponent<Animator>();
|
createRoleCamera = instance.GetComponentInChildren<Camera>(true);
|
}
|
}
|
|
public void DoEnterShow()
|
{
|
WindowCenter.Instance.Close<CreateRoleWin>();
|
cameraAnimator.Play(m_CameraParams.enterShow);
|
m_Warrior.gameObject.SetActive(true);
|
m_Warrior.DoEnterShow();
|
}
|
|
public void SwitchToWarrior()
|
{
|
WindowCenter.Instance.Close<CreateRoleWin>();
|
cameraAnimator.Play(m_CameraParams.magicToWarrior);
|
m_Magic.ReleaseEffects();
|
m_Warrior.ReleaseEffects();
|
|
StopCoroutine("Co_SwitchToWarrior");
|
StartCoroutine("Co_SwitchToWarrior");
|
}
|
|
public void SwitchToMagic()
|
{
|
WindowCenter.Instance.Close<CreateRoleWin>();
|
cameraAnimator.Play(m_CameraParams.warriorToMagic);
|
m_Magic.ReleaseEffects();
|
m_Warrior.ReleaseEffects();
|
|
StopCoroutine("Co_SwitchToMagic");
|
StartCoroutine("Co_SwitchToMagic");
|
}
|
|
IEnumerator Co_SwitchToWarrior()
|
{
|
m_Warrior.gameObject.SetActive(true);
|
yield return WaitingForSecondConst.WaitMS1000;
|
|
m_Magic.gameObject.SetActive(false);
|
m_Warrior.DoRoutineShow();
|
}
|
|
IEnumerator Co_SwitchToMagic()
|
{
|
yield return WaitingForSecondConst.WaitMS1000;
|
m_Warrior.gameObject.SetActive(false);
|
m_Magic.gameObject.SetActive(true);
|
m_Magic.DoRoutineShow();
|
}
|
|
public void Dispose()
|
{
|
m_Warrior.Dispose();
|
m_Magic.Dispose();
|
}
|
|
[System.Serializable]
|
public struct CameraParams
|
{
|
public string prefabName;
|
public string enterShow;
|
public string warriorToMagic;
|
public string magicToWarrior;
|
}
|
|
|
}
|