From 78bfe524ea4776c47f6314e56e97f39970b00fce Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期二, 25 九月 2018 15:07:07 +0800
Subject: [PATCH] Merge branch 'master' into 1871天赋功能

---
 UI/Common/UI3DModelExhibition.cs |  213 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 129 insertions(+), 84 deletions(-)

diff --git a/UI/Common/UI3DModelExhibition.cs b/UI/Common/UI3DModelExhibition.cs
index 571b2d7..4a54afd 100644
--- a/UI/Common/UI3DModelExhibition.cs
+++ b/UI/Common/UI3DModelExhibition.cs
@@ -26,12 +26,8 @@
         [SerializeField] ColorCorrectionCurves m_CameraColor;
 
         public bool interactable {
-            get {
-                return m_Interactable;
-            }
-            set {
-                m_Interactable = value;
-            }
+            get { return m_Interactable; }
+            set { m_Interactable = value; }
         }
 
         UI3DShowHero playerModel = new UI3DShowHero();
@@ -47,13 +43,10 @@
         GameObject npcModel = null;
         SFXController m_NpcEffect;
         public GameObject NpcModelPet {
-            get {
-                return npcModel;
-            }
-            set {
-                npcModel = value;
-            }
+            get { return npcModel; }
+            set { npcModel = value; }
         }
+
         int m_WingModelId = 0;
         GameObject wingModel = null;
 
@@ -70,13 +63,12 @@
 
         PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
 
-        public static UI3DModelExhibition Instance {
-            get; set;
-        }
+        public static UI3DModelExhibition Instance { get; private set; }
 
         public static void CreateStage()
         {
-            var gameObject = GameObject.Instantiate(Resources.Load<GameObject>("UI/Prefabs/UI3DModelExhibitionStage"));
+            var prefab = Resources.Load<GameObject>("UI/Prefabs/UI3DModelExhibitionStage");
+            var gameObject = GameObject.Instantiate(prefab);
             Instance = gameObject.GetComponent<UI3DModelExhibition>();
             Instance.transform.position = new Vector3(1000, 2000, 3000);
             Instance.name = "UI3DModelExhibitionStage";
@@ -85,14 +77,15 @@
             DontDestroyOnLoad(gameObject);
         }
 
-        public void BeginShowLoginPlayer(RawImage _rawImage, int _job)
+        public void ShowLoginPlayer(RawImage _rawImage, int _job)
         {
             var clothesItemId = 0;
             var weaponItemId = 0;
             var wingsItemId = 0;
             var secondaryItemId = 0;
-            var _suitLevel = 0;
+            var suitLevel = 0;
             var equipInfos = PlayerDatas.Instance.loginInfo.EquipInfo;
+
             for (int i = 0; i < equipInfos.Length; i++)
             {
                 var equipInfo = equipInfos[i];
@@ -106,10 +99,10 @@
 
                         if (equipInfo.IsSuite == 1)
                         {
-                            Dictionary<int, List<int>> _userDataDict = ConfigParse.Analysis(equipInfo.UserData);
-                            if (_userDataDict.ContainsKey(30))
+                            var userDataDict = ConfigParse.Analysis(equipInfo.UserData);
+                            if (userDataDict.ContainsKey(30))
                             {
-                                _suitLevel = _userDataDict[30][0];
+                                suitLevel = userDataDict[30][0];
                             }
                         }
                         break;
@@ -122,10 +115,21 @@
                 }
             }
 
-            BeginShowPlayer(_rawImage, _job, clothesItemId, _suitLevel, weaponItemId, wingsItemId, secondaryItemId, false);
+            var data = new UI3DPlayerExhibitionData
+            {
+                job = _job,
+                clothesId = clothesItemId,
+                suitLevel = suitLevel,
+                weaponId = weaponItemId,
+                wingsId = wingsItemId,
+                secondaryId = secondaryItemId,
+                isDialogue = false,
+            };
+
+            ShowPlayer(_rawImage, data);
         }
 
-        public void BeginShowPlayer(RawImage _rawImage, int _job, bool _isDialogue = false)
+        public void ShowPlayer(RawImage _rawImage, int _job, bool _isDialogue = false)
         {
             var clothes = playerPack.GetItemModelByIndex(PackType.rptEquip, (int)RoleEquipType.retClothes);
             var clothesId = clothes == null ? 0 : (int)clothes.itemInfo.ItemID;
@@ -152,10 +156,21 @@
                 }
             }
 
-            BeginShowPlayer(_rawImage, _job, clothesId, _suitLevel, weaponId, wingsId, secondaryId, _isDialogue);
+            var data = new UI3DPlayerExhibitionData
+            {
+                job = _job,
+                clothesId = clothesId,
+                suitLevel = _suitLevel,
+                weaponId = weaponId,
+                wingsId = wingsId,
+                secondaryId = secondaryId,
+                isDialogue = _isDialogue,
+            };
+
+            ShowPlayer(_rawImage, data);
         }
 
-        public void BeginShowPlayer(RawImage _rawImage, int _job, RoleEquipType _exceptEquip)
+        public void ShowPlayer(RawImage _rawImage, int _job, RoleEquipType _exceptEquip)
         {
             var clothes = _exceptEquip == RoleEquipType.retClothes ?
                 null : playerPack.GetItemModelByIndex(PackType.rptEquip, (int)RoleEquipType.retClothes);
@@ -186,19 +201,38 @@
                 }
             }
 
-            BeginShowPlayer(_rawImage, _job, clothesId, _suitLevel, weaponId, wingsId, secondaryId, false);
+            var data = new UI3DPlayerExhibitionData
+            {
+                job = _job,
+                clothesId = clothesId,
+                suitLevel = _suitLevel,
+                weaponId = weaponId,
+                wingsId = wingsId,
+                secondaryId = secondaryId,
+                isDialogue = false,
+            };
+
+            ShowPlayer(_rawImage, data);
         }
 
-        public void BeginShowPlayer(RawImage _rawImage, int _job, int _clothesId, int suitLevel, int _weaponId, int _wingsId, int _secondaryId, bool _isDialogue = false)
+        public void ShowPlayer(RawImage _rawImage, UI3DPlayerExhibitionData data)
         {
             StopShow();
 
-            var instance = playerModel.Show(_job, _clothesId, suitLevel, _weaponId, _wingsId, _secondaryId, _isDialogue ? m_DialogPoint : m_PlayerShowPoint);
+            var job = data.job;
+            var clothesId = data.clothesId;
+            var suitLevel = data.suitLevel;
+            var weaponId = data.weaponId;
+            var wingsId = data.wingsId;
+            var secondaryId = data.secondaryId;
+            var isDialogue = data.isDialogue;
 
-            interactable = !_isDialogue;
+            var instance = playerModel.Show(job, clothesId, suitLevel, weaponId, wingsId, secondaryId, isDialogue ? m_DialogPoint : m_PlayerShowPoint);
+
+            interactable = !isDialogue;
             m_PlayerShowPoint.localEulerAngles = Vector3.zero;
 
-            if (_isDialogue)
+            if (isDialogue)
             {
                 instance.transform.localPosition = GeneralConfig.Instance.heroDialogueOffset;
                 instance.transform.localEulerAngles = GeneralConfig.Instance.heroDialogueRotation;
@@ -216,20 +250,29 @@
 
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
         }
 
-        public void BeginShowOtherPlayer(RawImage _rawImage, int _job, int _clothesId, int suitEffect, int _weaponId, int _wingsId, int _secondaryId)
+        public void ShowOtherPlayer(RawImage _rawImage, UI3DPlayerExhibitionData data)
         {
             StopShow();
 
-            playerModel.Show(_job, _clothesId, suitEffect, _weaponId, _wingsId, _secondaryId, m_PlayerShowPoint);
+            var job = data.job;
+            var clothesId = data.clothesId;
+            var suitLevel = data.suitLevel;
+            var weaponId = data.weaponId;
+            var wingsId = data.wingsId;
+            var secondaryId = data.secondaryId;
+
+            playerModel.Show(job, clothesId, suitLevel, weaponId, wingsId, secondaryId, m_PlayerShowPoint);
             playerModel.UnloadClothedEffect();
-            playerModel.PutOnEffect(suitEffect);
+            playerModel.PutOnEffect(suitLevel);
 
             interactable = true;
             m_PlayerShowPoint.localEulerAngles = Vector3.zero;
@@ -244,38 +287,37 @@
 
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
         }
 
-        public void BeginShowSitDownPlayer(RawImage _rawImage, int _job)
+        public void ShowSitDownPlayer(RawImage _rawImage, int _job)
         {
-            BeginShowPlayer(_rawImage, _job);
+            ShowPlayer(_rawImage, _job);
             if (playerModel != null)
             {
                 playerModel.SitDown();
             }
         }
 
-        public void StopShowPlayer()
-        {
-            StopShow();
-        }
-
-        public void BeginShowHourse(int _modelId, RawImage _rawImage)
+        public void ShowHourse(int _modelId, RawImage _rawImage)
         {
             StopShow();
             m_ShowCamera.enabled = true;
 
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
 
             var instance = UI3DModelFactory.LoadUIHorse(_modelId);
@@ -291,19 +333,18 @@
             horseModel = instance;
 
             m_HorseShowPoint.rotation = Quaternion.identity;
+
             var modelConfig = Config.Instance.Get<ModelResConfig>(_modelId);
-            instance.transform.SetParentEx(m_HorseShowPoint, modelConfig.UIOffset, modelConfig.UIRotation, Vector3.one * modelConfig.UIScale);
+            var position = modelConfig.UIOffset;
+            var rotation = modelConfig.UIRotation;
+            var scale = Vector3.one * modelConfig.UIScale;
+            instance.transform.SetParentEx(m_HorseShowPoint, position, rotation, scale);
             instance.SetActive(true);
             ResetCameraColor();
         }
 
-        public void StopShowHourse()
-        {
-            StopShow();
-        }
-
         private GameObject ObjEquipment;
-        public void BeginShowEquipment(int _modelId, Vector3 _localEulerAngles, RawImage _rawImage)
+        public void ShowEquipment(int _modelId, Vector3 _localEulerAngles, RawImage _rawImage)
         {
             var instance = UI3DModelFactory.LoadUIWing(_modelId);
             ObjEquipment = instance;
@@ -324,29 +365,27 @@
             ResetCameraColor();
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
         }
 
-        public void StopShowEquipment()
+        public void ShowWing(int _modelId, Vector3 _localEulerAngles, RawImage _rawImage)
         {
             StopShow();
-        }
-
-        public void BeginShowWing(int _modelId, Vector3 _localEulerAngles, RawImage _rawImage)
-        {
-            StopShow();
-            m_ShowCamera.enabled = true;
 
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
 
             var instance = UI3DModelFactory.LoadUIWing(_modelId);
@@ -355,6 +394,7 @@
                 return;
             }
 
+            m_ShowCamera.enabled = true;
             isShowWing = true;
             interactable = true;
 
@@ -363,7 +403,11 @@
 
             m_WingShowPoint.rotation = Quaternion.identity;
             var modelConfig = Config.Instance.Get<ModelResConfig>(_modelId);
-            instance.transform.SetParentEx(m_WingShowPoint, modelConfig.UIOffset, modelConfig.UIRotation, Vector3.one * modelConfig.UIScale);
+            var position = modelConfig.UIOffset;
+            var rotation = modelConfig.UIRotation;
+            var scale = Vector3.one * modelConfig.UIScale;
+            instance.transform.SetParentEx(m_WingShowPoint, position, rotation, scale);
+
             instance.SetActive(true);
             ResetCameraColor();
             var animator = instance.GetComponent<Animator>();
@@ -373,27 +417,24 @@
             }
         }
 
-        public void StopShowWing()
+        public void ShowNPC(int _npcId, Vector3 _localEulerAngles, RawImage _rawImage, bool _gray = false, bool _isDialogue = false)
         {
-            StopShow();
+            ShowNPC(_npcId, Vector3.zero, _localEulerAngles, _rawImage, _gray, _isDialogue);
         }
 
-        public void BeginShowNPC(int _npcId, Vector3 _localEulerAngles, RawImage _rawImage, bool _gray = false, bool _isDialogue = false)
-        {
-            BeginShowNPC(_npcId, Vector3.zero, _localEulerAngles, _rawImage, _gray, _isDialogue);
-        }
-
-        public void BeginShowNPC(int _npcId, Vector3 _offset, Vector3 _localEulerAngles, RawImage _rawImage, bool _gray = false, bool _isDialogue = false)
+        public void ShowNPC(int _npcId, Vector3 _offset, Vector3 _localEulerAngles, RawImage _rawImage, bool _gray = false, bool _isDialogue = false)
         {
             StopShow();
             m_ShowCamera.enabled = true;
 
             if (_rawImage != null)
             {
-                _rawImage.rectTransform.sizeDelta = new Vector2(_rawImage.rectTransform.rect.height * 4f / 3, _rawImage.rectTransform.rect.height);
-                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
+                var x = _rawImage.rectTransform.rect.height * 4f / 3;
+                var y = _rawImage.rectTransform.rect.height;
+                _rawImage.rectTransform.sizeDelta = new Vector2(x, y);
                 _rawImage.texture = m_ShowCamera.targetTexture;
                 _rawImage.material = MaterialUtility.GetGUIRenderTextureMaterial();
+                m_InteractProcessor.rectTransform = _rawImage.rectTransform;
             }
 
             var instance = UI3DModelFactory.LoadUINPC(_npcId);
@@ -434,11 +475,6 @@
             ResetCameraColor(_gray);
             m_CameraColor.saturation = _gray ? 0.08f : 1f;
 
-        }
-
-        public void StopShowNPC()
-        {
-            StopShow();
         }
 
         public void StopShow()
@@ -535,11 +571,11 @@
         {
             if (isShowinEquipment && ObjEquipment != null)
             {
-                if (WindowCenter.Instance.CheckOpen<FirstTimeRechargeWin>())
+                if (WindowCenter.Instance.CheckOpen("FirstTimeRechargeWin"))
                 {
                     ObjEquipment.transform.Rotate(WindowCenter.Instance.Get<FirstTimeRechargeWin>().RotateVector * 1f, Space.Self);
                 }
-                if (WindowCenter.Instance.CheckOpen<FirstChargeTrialWin>())
+                if (WindowCenter.Instance.CheckOpen("FirstChargeTrialWin"))
                 {
                     ObjEquipment.transform.Rotate(WindowCenter.Instance.Get<FirstChargeTrialWin>().RotateVector * 1f, Space.Self);
                 }
@@ -596,9 +632,18 @@
             {
                 return;
             }
-
         }
 
+        public struct UI3DPlayerExhibitionData
+        {
+            public int job;
+            public int clothesId;
+            public int suitLevel;
+            public int weaponId;
+            public int wingsId;
+            public int secondaryId;
+            public bool isDialogue;
+        }
     }
 
 }

--
Gitblit v1.8.0