From 39ec1562198212d8c2071c8169cca09f8e5d1109 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期五, 19 四月 2019 14:04:50 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/SelectRole/SelectRoleBehaviour.cs | 65 +++++++++++++++++++-------------
1 files changed, 39 insertions(+), 26 deletions(-)
diff --git a/System/SelectRole/SelectRoleBehaviour.cs b/System/SelectRole/SelectRoleBehaviour.cs
index 59f124b..c81539f 100644
--- a/System/SelectRole/SelectRoleBehaviour.cs
+++ b/System/SelectRole/SelectRoleBehaviour.cs
@@ -3,18 +3,19 @@
using UnityEngine;
using Snxxz.UI;
-public class SelectRoleBehaviour : MonoBehaviour
+public class SelectRoleBehaviour
{
-
- [SerializeField] Camera m_CreateRoleCamera;
- [SerializeField] CreateRoleHeroPlatform m_HeroPlatform;
- [SerializeField] ActorShadowCaster m_Shadow;
+ GameObject behaviour;
+ Camera ceateRoleCamera;
+ CreateRoleHeroPlatform platform;
+ ActorShadowCaster shadow;
UI3DShowHero playerModel = new UI3DShowHero();
public void Show()
{
- Dispose();
+ LoadAssets(CreateRoleScriptableObject.GetJobParams(PlayerDatas.Instance.loginInfo.Job));
+ playerModel.Dispose();
var fashionClothes = 0;
var fashionWeapon = 0;
@@ -69,33 +70,45 @@
secondaryId = secondaryItemId,
};
- m_CreateRoleCamera.gameObject.SetActive(true);
- var model = playerModel.Show(data, m_HeroPlatform.transform);
+ ceateRoleCamera.gameObject.SetActive(true);
+ var model = playerModel.Show(data, platform.transform);
playerModel.StandUp();
- m_Shadow.gameObject.SetActive(true);
- m_Shadow.Cast(model.transform);
+ shadow.gameObject.SetActive(true);
+ shadow.Cast(model.transform);
+ }
+
+ public void Hide()
+ {
+ if (ceateRoleCamera != null)
+ {
+ ceateRoleCamera.gameObject.SetActive(false);
+ }
+
+ if (shadow != null)
+ {
+ shadow.gameObject.SetActive(false);
+ }
}
public void Dispose()
{
- m_CreateRoleCamera.gameObject.SetActive(false);
- m_Shadow.gameObject.SetActive(false);
- playerModel.Dispose();
+ behaviour = null;
+ ceateRoleCamera = null;
+ platform = null;
+ shadow = null;
+ playerModel = null;
}
- private void Awake()
+ private void LoadAssets(CreateRoleScriptableObject.RoleShowParams showParams)
{
- m_CreateRoleCamera.gameObject.SetActive(false);
- m_Shadow.gameObject.SetActive(false);
+ if (behaviour == null)
+ {
+ var prefab = SceneLoader.LoadCreateRole(showParams.platformPrefabName);
+ behaviour = GameObject.Instantiate(prefab, showParams.platformPosition, Quaternion.identity);
+ behaviour.name = showParams.platformPrefabName;
+ shadow = behaviour.GetComponentInChildren<ActorShadowCaster>();
+ platform = behaviour.GetComponentInChildren<CreateRoleHeroPlatform>();
+ ceateRoleCamera = behaviour.GetComponentInChildren<Camera>();
+ }
}
-
- private void OnEnable()
- {
- }
-
- private void OnDestroy()
- {
- StopAllCoroutines();
- }
-
}
--
Gitblit v1.8.0