| Core/GameEngine/Model/Config/ActorShowConfig.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/Model/Config/ActorShowConfig.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/BossShow/BossShowModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/BossShow/BossShowWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/BossShow/ShowActor.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Config/ActorShowConfig.cs
@@ -1,6 +1,6 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Tuesday, June 12, 2018 // [ Date ]: Monday, November 05, 2018 //-------------------------------------------------------- using UnityEngine; @@ -9,8 +9,8 @@ namespace TableConfig { public partial class ActorShowConfig : ConfigBase { public partial class ActorShowConfig : ConfigBase { public int ID { get ; private set ; } public int NpcID { get ; private set ; } public int MapID { get ; private set ; } @@ -34,15 +34,16 @@ public int Dialogue { get ; private set ; } public int soundId { get ; private set ; } public int soundTime { get ; private set ; } public int step { get ; private set ; } public override string getKey() { return ID.ToString(); public override string getKey() { return ID.ToString(); } public override void Parse() { try { try { ID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; NpcID=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0; @@ -118,10 +119,12 @@ soundId=IsNumeric(rawContents[21]) ? int.Parse(rawContents[21]):0; soundTime=IsNumeric(rawContents[22]) ? int.Parse(rawContents[22]):0; } catch (Exception ex) { DebugEx.Log(ex); step=IsNumeric(rawContents[23]) ? int.Parse(rawContents[23]):0; } catch (Exception ex) { DebugEx.Log(ex); } } Core/GameEngine/Model/Config/ActorShowConfig.cs.meta
@@ -1,6 +1,6 @@ fileFormatVersion: 2 guid: bda508e995d835441ae75633251ca0d2 timeCreated: 1528814998 timeCreated: 1541416287 licenseType: Pro MonoImporter: serializedVersion: 2 System/BossShow/BossShowModel.cs
@@ -33,6 +33,7 @@ public List<ShowActor> showTargetList { get; private set; } public bool BossShowing { get; private set; } public Camera showCamera { get; private set; } public bool satisfyStep { get; private set; } private bool serverNotify = false; private int cacheMapId = 0; private const string BOSS_SHOW_KEY = "BossShow"; @@ -48,6 +49,8 @@ { return; } satisfyStep = SatisfyBossShowStep(actorShowModel); SaveBossShowStep(actorShowModel); if (actorShowModel.BindMissionID != 0) { MissionDetailDates missionDetailDates = null; @@ -179,6 +182,12 @@ _hero.Behaviour.StartHandupAI(); } } TimeMgr.Instance.UnRegister(TimeMgr.SyntonyType.BossShow); TimeMgr.Instance.UnRegister(TimeMgr.SyntonyType.BossShowName); TimeMgr.Instance.UnRegister(TimeMgr.SyntonyType.BossShowDialogue); TimeMgr.Instance.UnRegister(TimeMgr.SyntonyType.BossShowSound); if (bossShowCompletedEvent != null) { bossShowCompletedEvent(); @@ -457,20 +466,20 @@ cacheMapId = PlayerDatas.Instance.baseData.MapID; var dic = Config.Instance.GetAllValues<ActorShowConfig>(); var list = Config.Instance.GetAllValues<ActorShowConfig>(); ActorShowConfig _showModel = null; foreach (var cfg in dic) foreach (var config in list) { if (cfg.MapID == PlayerDatas.Instance.baseData.MapID && (cfg.line == 1000 || cfg.line == reqDungeonLineId) && cfg.type == 2) if (config.MapID == PlayerDatas.Instance.baseData.MapID && (config.line == 1000 || config.line == reqDungeonLineId) && config.type == 2) { _showModel = cfg; _showModel = config; break; } else if (cfg.MapID == PlayerDatas.Instance.baseData.MapID && cfg.type == 3) else if (config.MapID == PlayerDatas.Instance.baseData.MapID && config.type == 3) { SnxxzGame.Instance.StartCoroutine(Co_StartSceneShow(cfg)); SnxxzGame.Instance.StartCoroutine(Co_StartSceneShow(config)); return; } } @@ -602,6 +611,26 @@ DemonJar = 201, FairyLand = 202, } private void SaveBossShowStep(ActorShowConfig config, bool value = true) { if (config.step == 0) { return; } var playerId = PlayerDatas.Instance.baseData.PlayerID; LocalSave.SetBool(StringUtility.Contact("BossShowStep_", playerId, "_", config.MapID, "_", config.NpcID), value); } private bool SatisfyBossShowStep(ActorShowConfig config) { if (config.step == 0) { return false; } var playerId = PlayerDatas.Instance.baseData.PlayerID; return LocalSave.GetBool(StringUtility.Contact("BossShowStep_", playerId, "_", config.MapID, "_", config.NpcID)); } } } System/BossShow/BossShowWin.cs
@@ -1,76 +1,77 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, November 15, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class BossShowWin : Window { [SerializeField] UIEffect bossNameEffect; [SerializeField] Button skipBtn; #region Built-in protected override void BindController() { } protected override void AddListeners() { skipBtn.onClick.AddListener(OnSkipBtn); } private void OnSkipBtn() { BossShowModel.Instance.StopBossShow(); } protected override void OnPreOpen() { BossShowModel.Instance.OnBossNameEvent += OnBossNameEvent; } private void OnBossNameEvent() { ActorShowConfig actorShowModel = null; if (ActorShowConfig.GetActorShowModel(PlayerDatas.Instance.baseData.MapID, BossShowModel.Instance.NpcID, out actorShowModel)) { bossNameEffect.effect = actorShowModel.uieffect; bossNameEffect.keep = true; bossNameEffect.Play(); bossNameEffect.SetLayer(LayerUtility.UILayer); return; } } protected override void OnAfterOpen() { } protected override void OnPreClose() { BossShowModel.Instance.OnBossNameEvent -= OnBossNameEvent; bossNameEffect.StopImediatly(); } protected override void OnAfterClose() { } #endregion } } //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, November 15, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class BossShowWin : Window { [SerializeField] UIEffect bossNameEffect; [SerializeField] Button skipBtn; #region Built-in protected override void BindController() { } protected override void AddListeners() { skipBtn.onClick.AddListener(OnSkipBtn); } private void OnSkipBtn() { BossShowModel.Instance.StopBossShow(); } protected override void OnPreOpen() { BossShowModel.Instance.OnBossNameEvent += OnBossNameEvent; skipBtn.gameObject.SetActive(BossShowModel.Instance.satisfyStep); } private void OnBossNameEvent() { ActorShowConfig actorShowModel = null; if (ActorShowConfig.GetActorShowModel(PlayerDatas.Instance.baseData.MapID, BossShowModel.Instance.NpcID, out actorShowModel)) { bossNameEffect.effect = actorShowModel.uieffect; bossNameEffect.keep = true; bossNameEffect.Play(); bossNameEffect.SetLayer(LayerUtility.UILayer); return; } } protected override void OnAfterOpen() { } protected override void OnPreClose() { BossShowModel.Instance.OnBossNameEvent -= OnBossNameEvent; bossNameEffect.StopImediatly(); } protected override void OnAfterClose() { } #endregion } } System/BossShow/ShowActor.cs
@@ -94,6 +94,7 @@ if (m_Animator != null) { m_Animator.enabled = true; m_Animator.Play(Animator.StringToHash("Show"), 0, 0); nextAction = GAStaticDefine.Act_Show; } }