| Core/GameEngine/Model/Config/FairyGrabBossConfig.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/Model/Config/FairyGrabBossConfig.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/Model/ConfigManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossBehaviour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossBehaviour.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossModel.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FairyAu/FairyGrabBossWin.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FindPrecious/LootPreciousFrameWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/WindowBase/ModelCenter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Utility/EnumHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Config/FairyGrabBossConfig.cs
New file @@ -0,0 +1,41 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, August 27, 2018 //-------------------------------------------------------- using UnityEngine; using System; namespace TableConfig { public partial class FairyGrabBossConfig : ConfigBase { public int NPCID { get ; private set ; } public string PortraitID { get ; private set; } public override string getKey() { return NPCID.ToString(); } public override void Parse() { try { NPCID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; PortraitID = rawContents[1].Trim(); } catch (Exception ex) { DebugEx.Log(ex); } } } } Core/GameEngine/Model/Config/FairyGrabBossConfig.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 353bb58b84bc9d74b87bcdbb10330f00 timeCreated: 1535375170 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: Core/GameEngine/Model/ConfigManager.cs
@@ -187,6 +187,7 @@ AddAsyncTask<TrialExchangeConfig>(); AddAsyncTask<TrialRewardsConfig>(); AddAsyncTask<DogzEquipPlusConfig>(); AddAsyncTask<FairyGrabBossConfig>(); while (!AllCompleted()) { var completedCount = 0; System/FairyAu/FairyGrabBossBehaviour.cs
New file @@ -0,0 +1,79 @@ using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class FairyGrabBossBehaviour : ScrollItem { [SerializeField] AutoSelectCyclicScroll m_Scroll; [SerializeField] RectTransform m_CenterSign; [SerializeField] RectTransform m_ContainerSelect; [SerializeField] Image m_BossPortrait; [SerializeField] Text m_MapName; [SerializeField] Text m_BossName; [SerializeField] Text m_Progress; [SerializeField] Button m_Select; public int bossId { get; private set; } FairyGrabBossModel model { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } } private void Awake() { m_Select.AddListener(SelectBoss); } private void SelectBoss() { m_Scroll.TrySelectData(bossId); } public override void Display(object _data) { base.Display(_data); bossId = (int)_data; DrawBossBaseInfo(); OnSelected(model.selectBoss); model.bossSelectedEvent -= OnSelected; model.bossSelectedEvent += OnSelected; } public override void Dispose() { base.Dispose(); model.bossSelectedEvent -= OnSelected; } private void OnSelected(int _bossId) { m_ContainerSelect.gameObject.SetActive(model.selectBoss == bossId); } void DrawBossBaseInfo() { var config = Config.Instance.Get<FairyGrabBossConfig>(bossId); var bossInfoConfig = Config.Instance.Get<BossInfoConfig>(bossId); var mapConfig = Config.Instance.Get<MapConfig>(bossInfoConfig.MapID); var npcConfig = Config.Instance.Get<NPCConfig>(bossId); m_BossPortrait.SetSprite(config.PortraitID); m_MapName.text = mapConfig.Name; m_BossName.text = npcConfig.charName; } protected virtual void LateUpdate() { if (m_Scroll.autoSelectable && model.selectBoss != bossId && bossId > 0) { if (Mathf.Abs(m_CenterSign.position.y - rectTransform.position.y) * 100f < rectTransform.rect.height * 0.45f) { model.selectBoss = bossId; } } } } } System/FairyAu/FairyGrabBossBehaviour.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 39b96e40dd3a91d4592771f3254b58af timeCreated: 1535372186 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/FairyAu/FairyGrabBossModel.cs
New file @@ -0,0 +1,59 @@ using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; namespace Snxxz.UI { public class FairyGrabBossModel : Model { public List<int> bosses { get; private set; } public bool IsOpen { get { return true; } } int m_SelectBoss = 0; public int selectBoss { get { return m_SelectBoss; } set { if (value != m_SelectBoss) { m_SelectBoss = value; if (bossSelectedEvent != null) { bossSelectedEvent(m_SelectBoss); } } } } public event Action stateUpdate; public event Action<int> bossSelectedEvent; public override void Init() { ParseConfig(); } public override void UnInit() { } void ParseConfig() { bosses = new List<int>(); var configs = Config.Instance.GetAllValues<FairyGrabBossConfig>(); for (int i = 0; i < configs.Count; i++) { bosses.Add(configs[i].NPCID); } } } } System/FairyAu/FairyGrabBossModel.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 7a2dd205b34e1894eadb79449b5eeb65 timeCreated: 1535369289 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/FairyAu/FairyGrabBossWin.cs
New file @@ -0,0 +1,70 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, August 27, 2018 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class FairyGrabBossWin : Window { [SerializeField] CyclicScroll m_Bosses; FairyGrabBossModel model { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { } protected override void OnPreOpen() { } protected override void OnActived() { base.OnActived(); DisplayBosses(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { } protected override void OnAfterClose() { } #endregion void DisplayBosses() { var bosses = new List<int>(); bosses.AddRange(model.bosses); model.selectBoss = DefaultSelect(); m_Bosses.Init(bosses); m_Bosses.MoveToCenter(bosses.IndexOf(model.selectBoss)); } int DefaultSelect() { return model.bosses[0]; } } } System/FairyAu/FairyGrabBossWin.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: adb7f6edfa1466b42a2c498cd4c02a92 timeCreated: 1535370332 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/FindPrecious/LootPreciousFrameWin.cs
@@ -5,6 +5,7 @@ using UnityEngine; using System.Collections; using UnityEngine.UI; using System; namespace Snxxz.UI { @@ -14,10 +15,13 @@ [SerializeField] FunctionButtonGroup m_FunctionGroup; [SerializeField] FunctionButton m_DemonJar; [SerializeField] FunctionButton m_FairyGrabBoss; [SerializeField] Button m_Left; [SerializeField] Button m_Right; [SerializeField] Button m_Close; FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } } #region Built-in protected override void BindController() @@ -27,6 +31,7 @@ protected override void AddListeners() { m_DemonJar.AddListener(ShowDemonJar); m_FairyGrabBoss.AddListener(FairyGrabBoss); m_Left.AddListener(ShowLastFunction); m_Right.AddListener(ShowNextFunction); @@ -35,7 +40,8 @@ protected override void OnPreOpen() { fairyGrabBossModel.stateUpdate += FairyGrabBossUpdate; m_FairyGrabBoss.state = fairyGrabBossModel.IsOpen ? TitleBtnState.Normal : TitleBtnState.Locked; } protected override void OnAfterOpen() @@ -44,6 +50,8 @@ protected override void OnPreClose() { fairyGrabBossModel.stateUpdate -= FairyGrabBossUpdate; CloseSubWindows(); if (!WindowJumpMgr.Instance.IsJumpState) { @@ -74,9 +82,22 @@ functionOrder = m_DemonJar.order; } private void FairyGrabBoss() { CloseSubWindows(); WindowCenter.Instance.Open<FairyGrabBossWin>(); functionOrder = m_FairyGrabBoss.order; } private void FairyGrabBossUpdate() { m_FairyGrabBoss.state = fairyGrabBossModel.IsOpen ? TitleBtnState.Normal : TitleBtnState.Locked; } private void CloseSubWindows() { WindowCenter.Instance.CloseImmediately<DemonJarWin>(); WindowCenter.Instance.CloseImmediately<FairyGrabBossWin>(); } private void ShowLastFunction() System/WindowBase/ModelCenter.cs
@@ -189,6 +189,7 @@ RegisterModel<MultipleRealmPointModel>(); RegisterModel<DogzModel>(); RegisterModel<TreasureSoulModel>(); RegisterModel<FairyGrabBossModel>(); inited = true; } Utility/EnumHelper.cs
@@ -308,6 +308,7 @@ BossHome = 24, PersonalBoss = 25, ElderGodArea = 26, FairyGrabBoss = 27, } public enum ActivityPrepareType