StepManager.cs 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEditor;
  4. using UnityEngine;
  5. public class StepManager : MonoBehaviour
  6. {
  7. public static StepManager Instance { get; private set; }
  8. /// <summary> 用户ID </summary>
  9. public static string userID;
  10. /// <summary> 时间戳 </summary>
  11. public static string timeStamp;
  12. /// <summary> 是否开始初始化步骤 </summary>
  13. public static bool isInit = true;
  14. /// <summary> 是否在捏脸换装界面 </summary>
  15. public static bool isFaceBuidling = false;
  16. /// <summary> 背包穿戴人物模型 </summary>
  17. public static GameObject player_dress;
  18. /// <summary> 漫游场景移动人物模型 </summary>
  19. public static GameObject player;
  20. /// <summary> 捏脸换装灯光 </summary>
  21. public static Light faceBuildLight;
  22. /// <summary> 穿戴人物初始旋转 </summary>
  23. public static Quaternion initRot;
  24. /// <summary> 请求状态枚举 </summary>
  25. public enum RequestState
  26. {
  27. Success,
  28. HashFaild,
  29. MacFaild,
  30. URLFaild
  31. }
  32. /// <summary> 当前请求状态 </summary>
  33. public static RequestState requestState=RequestState.URLFaild;
  34. private async void Start()
  35. {
  36. Instance = this;
  37. //await UIManager.Instance.ShowUI(WindowID.FaceBuildPanel);
  38. await UIManager.Instance.ShowUI(WindowID.DlgLogin);
  39. var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player_dress");
  40. player_dress = Instantiate(characterRender);
  41. player_dress.transform.position = new Vector3(7.3f, 1000.29f, 109.78f);
  42. initRot = player_dress.transform.rotation;
  43. CharacterManager.Inst.MatchCharacterRender(player_dress.GetComponent<CharacterRender>());
  44. faceBuildLight = GameObject.Find("FaceBuild Light").GetComponent<Light>();
  45. //Debug.Log(faceBuildLight);
  46. }
  47. public async void Init()
  48. {
  49. RenderSettings.skybox = await YooAssetManager.Instance.LoadAsset<Material>("Skybox Cubemap Extended Mat");
  50. var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player1");
  51. player = Instantiate(characterRender);
  52. player.transform.position = new Vector3(24.162f, 3f, 75.317f);
  53. player.transform.GetChild(0).GetComponent<MoveController>().camRoot = GameObject.Find("CamRoot").transform;
  54. CharacterDataReMatch();
  55. }
  56. private async void Update()
  57. {
  58. //if (Input.GetKeyDown(KeyCode.Q))
  59. //{
  60. // await UIManager.Instance.ShowUI(WindowID.FaceBuildPanel);
  61. // CharacterManager.UICam.gameObject.SetActive(true);
  62. //}
  63. }
  64. /// <summary>
  65. /// 重新赋值当前角色的捏脸和装扮数据/重置角色旋转
  66. /// </summary>
  67. public void CharacterDataReMatch()
  68. {
  69. if (player)
  70. {
  71. player_dress.transform.rotation= initRot;
  72. CharacterManager.Inst.CharacterClothReMatch(player.transform.GetChild(0).GetComponent<CharacterRender>());
  73. }
  74. }
  75. }