| System/HazyRegion/ClientHazyGrassStage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HazyRegion/HazyDemonKingModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HazyRegion/HazyGrassDungeonWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HazyRegion/HazyRegionIncidentBehaviour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HazyRegion/HazyRegionModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/HazyRegion/ClientHazyGrassStage.cs
@@ -1,23 +1,28 @@ using System; using Snxxz.UI; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Snxxz.UI { public class ClientHazyGrassStage : DungeonStage { static readonly Vector3 PlayerBornPosition = new Vector3(17.25f, 5.12f, 3.70f); static readonly Vector3 PlayerBornPosition1 = new Vector3(17.25f, 5.12f, 3.70f); static readonly Vector3 PlayerBornPosition2 = new Vector3(17.25f, 5.12f, 3.70f); static List<HazyMapNpcScriptableObject.NpcInfo> s_NpcInfos = new List<HazyMapNpcScriptableObject.NpcInfo>(); static Dictionary<Vector3, GA_NpcClientCollect> s_CollectNpcs = new Dictionary<Vector3, GA_NpcClientCollect>(); static Dictionary<uint, Vector3> s_Sid2NpcPos = new Dictionary<uint, Vector3>(); static Dictionary<uint, int> s_Sid2NpcIds = new Dictionary<uint, int>(); static List<GA_NpcClientFightNorm> s_ClientFightNpcs = new List<GA_NpcClientFightNorm>(); static int grassRefreshCount = 0; bool mapLoadFinish = false; bool initedFightNpc = false; HazyRegionIncidentType incidentType; HazyGrassModel model { get { return ModelCenter.Instance.GetModel<HazyGrassModel>(); } } HazyRegionModel hazyRegionModel { get { return ModelCenter.Instance.GetModel<HazyRegionModel>(); } } public override void Initialize() { @@ -28,8 +33,15 @@ s_Sid2NpcPos.Clear(); mapLoadFinish = false; initedFightNpc = false; grassRefreshCount = 0; var config = HazyRegionConfig.Get(hazyRegionModel.processingIncidentId); if (config != null) { incidentType = (HazyRegionIncidentType)config.incidentType; } UnloadAllNpc(); @@ -45,6 +57,8 @@ InitialPlayer(); InitializeNpc(); initedFightNpc = true; } protected override void OnUpdate() @@ -106,7 +120,14 @@ void InitialPlayer() { var hero = PlayerDatas.Instance.hero; hero.Pos = PlayerBornPosition; if (incidentType == HazyRegionIncidentType.ReikiGrass) { hero.Pos = PlayerBornPosition1; } else if (incidentType == HazyRegionIncidentType.FairyGrass) { hero.Pos = PlayerBornPosition2; } CameraController.Instance.Apply(); } @@ -133,8 +154,27 @@ } } break; case E_NpcType.Fight: if (!initedFightNpc) { var fightNpc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightNorm>((uint)npcInfo.npcId, E_ActorGroup.Enemy); if (fightNpc != null) { fightNpc.Pos = npcInfo.position; fightNpc.OnAttacked -= OnAttackNpc; fightNpc.OnAttacked += OnAttackNpc; } s_ClientFightNpcs.Add(fightNpc); } break; } } } private void OnAttackNpc() { Debug.Log("攻击了宝箱怪"); } void UnloadAllNpc() @@ -149,6 +189,19 @@ GAMgr.Instance.Release(_npc); } } foreach (var _npc in s_ClientFightNpcs) { if (_npc != null) { _npc.OnAttacked -= OnAttackNpc; _npc.ActorInfo.serverDie = true; GAMgr.Instance.ServerDie(_npc.ServerInstID); GAMgr.Instance.Release(_npc); } } s_ClientFightNpcs.Clear(); s_CollectNpcs.Clear(); } @@ -161,6 +214,5 @@ } } #endif } } System/HazyRegion/HazyDemonKingModel.cs
@@ -159,7 +159,7 @@ var configs = HazyRegionConfig.GetValues(); foreach (var config in configs) { if (config.incidentType == (int)HazyRegionIncidentType.Boss if (config.incidentType == (int)HazyRegionIncidentType.DemonKing && config.dungeonId == mapId) { return true; System/HazyRegion/HazyGrassDungeonWin.cs
@@ -20,6 +20,9 @@ [SerializeField] Text m_BasicGrassRefreshTime; [SerializeField] Text m_FairyGrassRefreshTime; [SerializeField] Transform m_ContainerCollectSucc; [SerializeField] Text m_GainRemind; DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } HazyRegionModel hazyRegionModel { get { return ModelCenter.Instance.GetModel<HazyRegionModel>(); } } HazyGrassModel hazyGrassModel { get { return ModelCenter.Instance.GetModel<HazyGrassModel>(); } } @@ -34,6 +37,8 @@ protected override void OnPreOpen() { m_ContainerCollectSucc.gameObject.SetActive(false); Display(); GlobalTimeEvent.Instance.secondEvent += PerSecond; System/HazyRegion/HazyRegionIncidentBehaviour.cs
@@ -69,7 +69,7 @@ void DisplayBase() { var config = HazyRegionConfig.Get(incidentId); m_DepletionPoint.text = string.Format("消耗体力: ", config.point); m_DepletionPoint.text = string.Format("消耗体力: {0}", config.point); m_IncidentTitle.text = config.name; m_Icon.SetSprite(config.PortraitID); m_Icon.SetNativeSize(); @@ -99,9 +99,9 @@ void DisplayBoss() { m_ContainerBoss.gameObject.SetActive(incidentType == HazyRegionIncidentType.Boss); m_ContainerBoss.gameObject.SetActive(incidentType == HazyRegionIncidentType.DemonKing); var config = HazyRegionConfig.Get(incidentId); if (incidentType == HazyRegionIncidentType.Boss) if (incidentType == HazyRegionIncidentType.DemonKing) { var npcConfig = NPCConfig.Get(config.npcId); m_BossName.text = npcConfig.charName; System/HazyRegion/HazyRegionModel.cs
@@ -360,7 +360,7 @@ } } break; case HazyRegionIncidentType.Boss: case HazyRegionIncidentType.DemonKing: if (InFakeHazyRegion) { hazyDemonKingModel.RequestEnterClientDungeon(); @@ -517,7 +517,7 @@ Adventure, Precious, FairyGrass, Boss, DemonKing, ReikiGrass, } }