| Core/GameEngine/Model/Player/PlayerDatas.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/GameActor/GA_Hero.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/GameActor/GA_Player.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/GameActor/GActorPlayerBase.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -533,6 +533,7 @@ if (hero != null) { hero.SwitchSuit(); hero.ReqLingGenEffect((int)(baseData.equipShowSwitch / 1000 % 1000)); } break; case PlayerDataType.LuckValue: Fight/GameActor/GA_Hero.cs
@@ -242,6 +242,13 @@ m_CalculAutoFightTime = Time.realtimeSinceStartup; m_LastSyncTickTime = Time.realtimeSinceStartup; ModelCenter.Instance.GetModel<ReikiRootModel>().onReikiRootEffectRefresh += OnReikiEffectRefresh; } private void OnReikiEffectRefresh() { ReqLingGenEffect((int)(PlayerDatas.Instance.baseData.equipShowSwitch / 1000 % 1000)); } private List<SFXController> m_SuitEffectList = new List<SFXController>(); @@ -316,7 +323,7 @@ protected sealed override void OnUnit() { Object.Destroy(m_BhvFindEnemy); UnityEngine.Object.Destroy(m_BhvFindEnemy); m_BhvFindEnemy = null; RlsSuitEffect(); OnPathFinding -= MapTransferUtility.Instance.OnHeroPathFinding; @@ -559,6 +566,8 @@ UpdateAutoStartFight(); } protected sealed override void OnPutonClothes(uint clothesItemID, GameObject clothed) { clothed.layer = LayerUtility.Hero; @@ -571,6 +580,8 @@ StopRush(); Behaviour.StopKillUntilDieAI(); ReqLingGenEffect((int)(PlayerDatas.Instance.baseData.equipShowSwitch / 1000 % 1000)); } protected sealed override void OnPutonSecondary(uint secondaryItemID, GameObject secondary) @@ -850,7 +861,7 @@ ReleaseLight(); if (PlayerDatas.Instance.baseData.MapID == 31160) { m_Light = Object.Instantiate(BuiltInLoader.LoadPrefab("Zhujiao_Pointlight")); m_Light = UnityEngine.Object.Instantiate(BuiltInLoader.LoadPrefab("Zhujiao_Pointlight")); m_Light.transform.SetParent(MP_Name); m_Light.transform.localPosition = Vector3.zero; m_Light.transform.localScale = Vector3.one; @@ -862,7 +873,7 @@ { if (m_Light) { Object.Destroy(m_Light); UnityEngine.Object.Destroy(m_Light); m_Light = null; } } @@ -1242,7 +1253,7 @@ if (m_ArrowEffect) { FaceTargetXZ _f = m_ArrowEffect.GetComponent<FaceTargetXZ>(); Object.Destroy(_f); UnityEngine.Object.Destroy(_f); SFXPlayUtility.Instance.Release(m_ArrowEffect); m_ArrowEffect = null; } Fight/GameActor/GA_Player.cs
@@ -450,7 +450,7 @@ { case PlayerDataType.EquipShowSwitch: m_H0434.EquipShowSwitch = data.Value; ReqLingGenEffect((int)(m_H0434.EquipShowSwitch / 1000 % 1000)); break; } } @@ -462,6 +462,9 @@ SkinnedMeshRenderer _renderer = clothed.GetComponentInChildren<SkinnedMeshRenderer>(); _renderer.gameObject.SetLayer(LayerUtility.Player, false); MaterialUtility.SwitchXrayShader(m_Material, false); ReqLingGenEffect((int)(m_H0434.EquipShowSwitch / 1000 % 1000)); SyncSuitEffect((m_H0434.EquipShowSwitch % 10) > 0); } protected sealed override void OnPutonSecondary(uint secondaryItemID, GameObject secondary) Fight/GameActor/GActorPlayerBase.cs
@@ -488,6 +488,11 @@ protected override void OnLateUpdate() { UpdateRush(); if (LingGenNode) { LingGenNode.transform.position = Root.transform.position; } } public void CheckAncientHeadUp() @@ -2968,4 +2973,36 @@ } } } private List<SFXController> lingGenEffectList = new List<SFXController>(); private GameObject LingGenNode; private void RlsLingGenEffect() { if (lingGenEffectList.Count > 0) { for (int i = 0; i < lingGenEffectList.Count; ++i) { SFXPlayUtility.Instance.Release(lingGenEffectList[i]); } } lingGenEffectList.Clear(); UnityEngine.Object.Destroy(LingGenNode); LingGenNode = null; } public void ReqLingGenEffect(int id) { RlsLingGenEffect(); if (!LingGenNode) { LingGenNode = new GameObject(); GameObject.DontDestroyOnLoad(LingGenNode); } var _config = ReikiRootEffectConfig.Get(id); var _sfx = SFXPlayUtility.Instance.PlayBattleEffect(_config.effect, LingGenNode.transform, 1); lingGenEffectList.Add(_sfx); } }