| Core/GameEngine/Model/Config/NPCConfig.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/Status/StatusMgr.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dogz/DogzActiveWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dogz/DogzItemCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dogz/DogzModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonFairyLandWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/NormalDungeonEntranceWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/GeneralConfig/GeneralDefine.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/KnapSack/DogzNotifyBehaviour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/KnapSack/DogzNotifyBehaviour.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/KnapSack/Logic/PackSendQuestMgr.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/KnapSack/Logic/PlayerPackModels.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainInterfacePanel/InGamePushContainer.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Tip/StatusTipWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Config/NPCConfig.cs
@@ -1,6 +1,6 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, August 20, 2018 // [ Date ]: Thursday, November 01, 2018 //-------------------------------------------------------- using UnityEngine; @@ -69,6 +69,7 @@ public int NPCEffect { get ; private set ; } public int NPCSpeakID { get ; private set ; } public int ClientRealm { get ; private set ; } public string Equips { get ; private set; } public override string getKey() { @@ -198,6 +199,8 @@ NPCSpeakID=IsNumeric(rawContents[56]) ? int.Parse(rawContents[56]):0; ClientRealm=IsNumeric(rawContents[57]) ? int.Parse(rawContents[57]):0; Equips = rawContents[58].Trim(); } catch (Exception ex) { Fight/Actor/Status/StatusMgr.cs
@@ -5,7 +5,7 @@ public class StatusMgr : SingletonMonobehaviour<StatusMgr> { public static event UnityAction<string> OnGainStatus; public static event UnityAction<int> OnGainStatus; private Dictionary<uint, List<Status_Base>> m_StatusDict = null; private List<Status_Base> m_AllStatus = null; @@ -149,11 +149,7 @@ { if (OnGainStatus != null) { SkillConfig _skillConfig = Config.Instance.Get<SkillConfig>(h0605.SkillID); if (_skillConfig != null) { OnGainStatus(_skillConfig.SkillName); } OnGainStatus(h0605.SkillID); } } } System/Dogz/DogzActiveWin.cs
@@ -333,16 +333,25 @@ { assistEffect.Play(); assistTextEffect.Play(); model.SendChangeDogzAssist(1); model.SendChangeDogzAssist(1,model.presentSelectDogz); } else { SysNotifyMgr.Instance.ShowTip("AssistDogzReachMax"); int minAssistDogzId = model.GetMinAssistDogzId(); if(model.presentSelectDogz > minAssistDogzId) { model.SendChangeDogzAssist(0,minAssistDogzId); model.SendChangeDogzAssist(1,model.presentSelectDogz); } else { SysNotifyMgr.Instance.ShowTip("AssistDogzReachMax"); } } } else { model.SendChangeDogzAssist(0); model.SendChangeDogzAssist(0,model.presentSelectDogz); } } System/Dogz/DogzItemCell.cs
@@ -44,6 +44,7 @@ itemBaisc.gameObject.SetActive(true); itemBaisc.Init(model,true); itemBaisc.stateIcon.gameObject.SetActive(dogzModel.IsReachPutlimit(dogzModel.presentSelectDogz, model.itemId)); itemBaisc.bindIcon.gameObject.SetActive(false); itemBaisc.cellBtn.RemoveAllListeners(); itemBaisc.cellBtn.AddListener(()=> System/Dogz/DogzModel.cs
@@ -374,6 +374,20 @@ return state == 0 ? false : true; } public int GetMinAssistDogzId() { int minAssistId = 0; foreach (var dogzId in dogzAssistStateDict.Keys) { if (TryGetAssistDogzState(dogzId) && ((minAssistId > dogzId && minAssistId != 0) || minAssistId == 0)) { minAssistId = dogzId; } } return minAssistId; } public void SetDogzEquipInfo() { m_DogzEquipDict.Clear(); @@ -535,6 +549,11 @@ return (index % 5) + 101; } public int GetDogzIndexByPlace(int place) { return (place / 100) - 1; } public int GetDogzIDByIndex(int index) { return (index / 5) + 1; @@ -632,10 +651,10 @@ GameNetSystem.Instance.SendInfo(dogzPutOff); } public void SendChangeDogzAssist(int assistState) public void SendChangeDogzAssist(int assistState,int dogzId) { CA5C2_tagCMDogzBattleStateChange stateChange = new CA5C2_tagCMDogzBattleStateChange(); stateChange.DogzID = (byte)presentSelectDogz; stateChange.DogzID = (byte)dogzId; stateChange.BatteState = (byte)assistState; GameNetSystem.Instance.SendInfo(stateChange); } @@ -763,6 +782,16 @@ return selectEquipPlacelist; } public bool IsReachPutlimit(int dogzId,int itemId) { ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(itemId); if (itemConfig == null) return true; var index = GetDogzIndexByPlace(itemConfig.EquipPlace); var _itemColor = GetDogzEquipLimitByIndex(dogzId, index); return itemConfig.ItemColor >= _itemColor ? true : false; } private int CompareByDogzItem(ItemModel start,ItemModel end) { int x = start.chinItemModel.ItemColor; @@ -887,15 +916,7 @@ } bool isMaxAssistNum = GetAssistDogzCount() >= curSumAssistNum ? true : false; int minAlreadyAssistId = 0; foreach (var dogzId in m_DogzEquipLimit.Keys) { if (TryGetAssistDogzState(dogzId) && ((minAlreadyAssistId > dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0)) { minAlreadyAssistId = dogzId; } } int minAlreadyAssistId = GetMinAssistDogzId(); if (!isMaxAssistNum) { @@ -940,8 +961,12 @@ } } public event Action UpdateDogzPutRedEvent; public int dogzPutRedId { get;set; } public void UpdateDogzEquipPlaceRed() { dogzPutRedId = 0; if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Dogz)) return; foreach (var value in dogzEquipPlaceRedDict.Values) @@ -959,13 +984,16 @@ return; } } int minAssistDogzId = GetMinAssistDogzId(); bool isMaxAssistNum = GetAssistDogzCount() >= curSumAssistNum ? true : false; List<int> dogzIdlist = GetDogzIdByOrder(); if (!isMaxAssistNum) { int maxEquipNum = 0; int spaceDogzId = 0; foreach (var dogzId in m_DogzEquipLimit.Keys) for(int i = 0; i < dogzIdlist.Count; i++) { int dogzId = dogzIdlist[i]; var equips = GetDogzEquips(dogzId); int equipNum = equips == null ? 0 : equips.Count; if (equipNum < 5) @@ -1003,6 +1031,7 @@ Redpoint equipPlaceRedpoint = GetDogzEquipPlaceRedpointById(spaceDogzId,i); if(equipPlaceRedpoint.state == RedPointState.None) { dogzPutRedId = spaceDogzId; equipPlaceRedpoint.state = RedPointState.Simple; } break; @@ -1013,16 +1042,7 @@ } else { int minAlreadyAssistId = 0; foreach (var dogzId in m_DogzEquipLimit.Keys) { if(TryGetAssistDogzState(dogzId) && ((minAlreadyAssistId > dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0)) { minAlreadyAssistId = dogzId; } } int minAlreadyAssistId = GetMinAssistDogzId(); foreach (var dogzId in m_DogzEquipLimit.Keys) { var equips = GetDogzEquips(dogzId); @@ -1061,6 +1081,7 @@ Redpoint equipPlaceRedpoint = GetDogzEquipPlaceRedpointById(dogzId, i); if (equipPlaceRedpoint.state == RedPointState.None) { dogzPutRedId = dogzId; equipPlaceRedpoint.state = RedPointState.Simple; break; } @@ -1070,6 +1091,38 @@ } } } if(UpdateDogzPutRedEvent != null) { UpdateDogzPutRedEvent(); } } public List<int> GetDogzIdByOrder() { List<int> dogzIdlist = m_DogzEquipLimit.Keys.ToList(); int minAssistDogzId = GetMinAssistDogzId(); if (minAssistDogzId == 0) return dogzIdlist; List<int> orderlist = new List<int>(); for(int i = 0; i < dogzIdlist.Count; i++) { int dogzId = dogzIdlist[i]; if(dogzId > minAssistDogzId) { orderlist.Add(dogzId); } } for (int i = dogzIdlist.Count - 1; i > -1; i--) { int dogzId = dogzIdlist[i]; if(!orderlist.Contains(dogzId)) { orderlist.Add(dogzId); } } return orderlist; } public void UpdateAssistNumRed() @@ -1088,6 +1141,7 @@ addAssistDogzRedpoint.state = RedPointState.None; } } #endregion } } System/Dungeon/DungeonFairyLandWin.cs
@@ -17,6 +17,12 @@ [SerializeField] List<Text> targetTextList; [SerializeField] RectTransform m_FairyLandUpperBehaviour; [SerializeField] Text m_FairyLandUpperTip; [SerializeField] PositionTween m_PositionTween; [SerializeField] ScaleTween m_ScaleTween; [SerializeField] RectTransform[] m_MoveRects; DungeonModel m_Model; DungeonModel model { @@ -64,14 +70,17 @@ protected override void OnPreOpen() { m_FairyLandUpperBehaviour.gameObject.SetActive(false); SetTween(m_PositionTween, m_ScaleTween, 0); StageChangeEvent(); MyTeamRefreshEvent(); DungeonEncourageEvent(); UpdateBuf(); model.dungeonFairyLandChangeEvent += StageChangeEvent; model.dungeonInspireLvEvent += DungeonEncourageEvent; PlayerBuffDatas.Even_ObjAddBuf += UpdateBuf; PlayerBuffDatas.Even_ObjDelBuff += UpdateBuf; PlayerBuffDatas.Even_ObjAddBuf += AddBuff; PlayerBuffDatas.Even_ObjDelBuff += DeleteBuff; teamModel.myTeamRefreshEvent += MyTeamRefreshEvent; } @@ -93,6 +102,12 @@ _teamOnlineCnt == 0 ? "<color=#ff2828>" : "<color=#00ff00>", Mathf.Max(0, _teamOnlineCnt - 1) * 10, "%</color>"); } protected override void OnActived() { base.OnActived(); DisplayBuff(); } protected override void OnAfterOpen() { } @@ -101,8 +116,8 @@ { model.dungeonFairyLandChangeEvent -= StageChangeEvent; model.dungeonInspireLvEvent -= DungeonEncourageEvent; PlayerBuffDatas.Even_ObjAddBuf -= UpdateBuf; PlayerBuffDatas.Even_ObjDelBuff -= UpdateBuf; PlayerBuffDatas.Even_ObjAddBuf -= AddBuff; PlayerBuffDatas.Even_ObjDelBuff -= DeleteBuff; teamModel.myTeamRefreshEvent -= MyTeamRefreshEvent; } @@ -124,6 +139,18 @@ var level = model.GetDungeonInspireLevel(); targetTextList[3].text = level == 0 ? StringUtility.Contact(Language.Get("FairyLand_Func3"), ":", Language.Get("FairyLand_Func4")) : StringUtility.Contact(Language.Get("FairyLand_Func3"), ":<color=#00ff00>", level * model.GetDungeonInspireUpper(31080), "%</color>"); } private void AddBuff() { UpdateBuf(); DisplayBuff(); } private void DeleteBuff() { UpdateBuf(); DisplayBuff(); } private void UpdateBuf() @@ -149,6 +176,67 @@ } targetTextList[4].text = StringUtility.Contact(Language.Get("FairyLand_Func1"), ":", Language.Get("FairyLand_Func2")); } private void DisplayBuff() { var gainBuff = Buffmodel._BuffDic.ContainsKey(GeneralDefine.fairyLandBuffId); var config = Config.Instance.Get<SkillConfig>(GeneralDefine.fairyLandBuffId); if (config != null) { m_FairyLandUpperTip.text = UIHelper.ReplaceNewLine(Language.Get("XjmjAddHarm2", GeneralDefine.fairyLandBuffCondition, config.EffectValue11 / 10000 + 1)); } if (!gainBuff) { if (m_FairyLandUpperBehaviour.gameObject.activeSelf) { m_FairyLandUpperBehaviour.gameObject.SetActive(false); } } else { if (!m_FairyLandUpperBehaviour.gameObject.activeSelf) { SetTween(m_PositionTween, m_ScaleTween, 0); m_FairyLandUpperBehaviour.gameObject.SetActive(true); m_PositionTween.Play(OnPositionTweenComplete); } } } private void OnPositionTweenComplete() { SetTween(m_PositionTween, m_ScaleTween, 1); m_PositionTween.Play(); m_ScaleTween.Play(); } private void SetTween(PositionTween _posTween, ScaleTween _scaleTween, int index) { _posTween.from = m_MoveRects[index].localPosition; _posTween.to = m_MoveRects[index + 1].localPosition; _posTween.duration = index == 0 ? 2f : 1f; _posTween.delay = index == 0 ? 0 : 1.0f; _posTween.SetStartState(); if (index == 0) { _scaleTween.SetStartState(); } else { _scaleTween.delay = 1.0f; } } #if UNITY_EDITOR [ContextMenu("Test")] void Test() { SetTween(m_PositionTween, m_ScaleTween, 0); m_FairyLandUpperBehaviour.gameObject.SetActive(true); m_PositionTween.Play(OnPositionTweenComplete); } #endif } } System/Dungeon/NormalDungeonEntranceWin.cs
@@ -51,6 +51,9 @@ [SerializeField] RectTransform m_ContainerGroup; [SerializeField] RectTransform m_FairyLandTipBehaviour; [SerializeField] Text m_FairyLandTip; DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } TeamModel teamModel { get { return ModelCenter.Instance.GetModel<TeamModel>(); } } PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } @@ -75,6 +78,7 @@ DrawDungeonBaseInfo(); DrawSweepInfo(); DrawDungeonTicketInfo(); DisplayFairyLandTip(); m_BreifInfo.SetDungeonInfo(model.currentDungeon); } @@ -83,6 +87,8 @@ playerPack.RefreshItemCountAct += OnPackageItemChange; model.updateDungeonEnterCD += UpdateDungeonEnterCD; m_EnterCdContainer.OnCdComplete += UpdateDungeonEnterCD; PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent; PlayerDatas.Instance.OnRoleAttrRefresh += OnWorldLevelRefresh; } protected override void OnPreClose() @@ -90,6 +96,8 @@ playerPack.RefreshItemCountAct -= OnPackageItemChange; model.updateDungeonEnterCD -= UpdateDungeonEnterCD; m_EnterCdContainer.OnCdComplete -= UpdateDungeonEnterCD; PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent; PlayerDatas.Instance.OnRoleAttrRefresh -= OnWorldLevelRefresh; } protected override void OnAfterClose() @@ -116,6 +124,7 @@ bool _cd = model.HasEnterCD(dungeonConfig.DataMapID) && model.IsEnterCountDowning(dungeonConfig.DataMapID); m_EnterCdContainer.gameObject.SetActive(_cd); m_ContainerBtns.gameObject.SetActive(!_cd); DisplayFairyLandTip(); } private void DrawDungeonBaseInfo() @@ -421,6 +430,34 @@ } } private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType) { if (refreshType == PlayerDataRefresh.LV) { DisplayFairyLandTip(); } } private void OnWorldLevelRefresh() { DisplayFairyLandTip(); } private void DisplayFairyLandTip() { var dungeonId = model.GetDungeonId(model.currentDungeon); var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId); bool cd = model.HasEnterCD(dungeonConfig.DataMapID) && model.IsEnterCountDowning(dungeonConfig.DataMapID); var satisfy = (PlayerDatas.Instance.baseData.LV + GeneralDefine.fairyLandBuffCondition) <= PlayerDatas.Instance.worldLv && !cd; m_FairyLandTipBehaviour.gameObject.SetActive(satisfy); var config = Config.Instance.Get<SkillConfig>(GeneralDefine.fairyLandBuffId); if (config != null) { m_FairyLandTip.text = UIHelper.ReplaceNewLine(Language.Get("XjmjAddHarm1", GeneralDefine.fairyLandBuffCondition, config.EffectValue11 / 10000 + 1)); } } } } System/GeneralConfig/GeneralDefine.cs
@@ -149,6 +149,9 @@ public static int medQualityCount { get; private set; } public static int highQualityCount { get; private set; } public static int fairyLandBuffCondition { get; private set; } public static int fairyLandBuffId { get; private set; } public static void Init() { try @@ -521,6 +524,9 @@ lowQualityCount = int.Parse(func.Numerical1); medQualityCount = int.Parse(func.Numerical2); highQualityCount = int.Parse(func.Numerical3); fairyLandBuffCondition = GetInt("XjmjAddHarm", 1); fairyLandBuffId = GetInt("XjmjAddHarm", 2); } catch (Exception ex) { System/KnapSack/DogzNotifyBehaviour.cs
New file @@ -0,0 +1,54 @@ using System; using UnityEngine; using UnityEngine.UI; using TableConfig; namespace Snxxz.UI { public class DogzNotifyBehaviour : MonoBehaviour { [SerializeField] Text titleText; [SerializeField] Image dogzImg; [SerializeField] Button gotoBtn; [SerializeField] Button closeBtn; DogzModel dogzModel { get { return ModelCenter.Instance.GetModel<DogzModel>(); } } private void OnEnable() { closeBtn.AddListener(CloseNotify); gotoBtn.AddListener(ClickGoto); } private void OnDisable() { closeBtn.RemoveAllListeners(); gotoBtn.RemoveAllListeners(); } public void SetDisplay() { DogzConfig dogzConfig = Config.Instance.Get<DogzConfig>(dogzModel.dogzPutRedId); if(dogzConfig == null) { CloseNotify(); } else { this.gameObject.SetActive(true); dogzImg.SetSprite(dogzConfig.HeadIcon); } } private void ClickGoto() { WindowCenter.Instance.Open<DogzWin>(); CloseNotify(); } public void CloseNotify() { dogzModel.dogzPutRedId = 0; this.gameObject.SetActive(false); } } } System/KnapSack/DogzNotifyBehaviour.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 02dfbf58d32aa544aa139b28100aa5d2 timeCreated: 1541055844 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/KnapSack/Logic/PackSendQuestMgr.cs
@@ -703,7 +703,7 @@ } int dungeonID = playerPack.GetDungeonIDByDrugID(useItemModel.itemInfo.ItemID); if (dungeonID != 0 && useItemModel.chinItemModel.Type == (int)ItemType.Buff) if (dungeonID != 0) { MapConfig tagMapModel = Config.Instance.Get<MapConfig>(PlayerDatas.Instance.baseData.MapID); if (tagMapModel.MapFBType == 0) System/KnapSack/Logic/PlayerPackModels.cs
@@ -621,6 +621,7 @@ public int wingsRedpointLvlimt { get; private set; } public int fairyGetPathId { get; private set; } public Dictionary<int, int> wingsGetPathIdDict { get; private set;} public Dictionary<int, List<int>> dungeonUseDict { get; private set; } public void ParseConfig() { FuncConfigConfig funcConfig = Config.Instance.Get<FuncConfigConfig>("WingYuPeiHQTJ"); @@ -628,6 +629,22 @@ wingsRedpointLvlimt = int.Parse(funcConfig.Numerical2); fairyGetPathId = int.Parse(funcConfig.Numerical3); wingsGetPathIdDict = ConfigParse.GetDic<int, int>(funcConfig.Numerical4); FuncConfigConfig copyItemBulletWindow = Config.Instance.Get<FuncConfigConfig>("CopyItemBulletWindow"); JsonData copyWinData = JsonMapper.ToObject(copyItemBulletWindow.Numerical1); dungeonUseDict = new Dictionary<int, List<int>>(); foreach (var dungeonId in copyWinData.Keys) { List<int> idlist = new List<int>(); dungeonUseDict.Add(int.Parse(dungeonId),idlist); if(copyWinData[dungeonId].IsArray) { JsonData useData = copyWinData[dungeonId]; for(int i = 0; i < useData.Count; i++) { idlist.Add(int.Parse(useData[i].ToString())); } } } } public int GetRoleEquipPathId(int equipPlace) @@ -1205,32 +1222,10 @@ } cacheMapId = PlayerDatas.Instance.baseData.MapID; int[] useDrugs = GetDrugIDListByDungeonID(cacheMapId); if (useDrugs == null) return; UpdateDungeonDanUse(); UpdateDungeonUse(); SinglePackModel singlePack = GetSinglePackModel(PackType.rptItem); for(int i = 0; i < useDrugs.Length; i++) { SkillConfig skillConfig = GetSkillConfig(useDrugs[i]); if(skillConfig != null) { if(!itemUseTypeDict.ContainsKey(skillConfig.SkillTypeID)) { itemUseTypeDict.Add(skillConfig.SkillTypeID,useDrugs[i]); } else { SkillConfig preSkillConfig = GetSkillConfig(itemUseTypeDict[skillConfig.SkillTypeID]); if(skillConfig.SkillLV > preSkillConfig.SkillLV) { itemUseTypeDict[skillConfig.SkillTypeID] = useDrugs[i]; } } } } foreach(int itemId in itemUseTypeDict.Values) foreach (int itemId in itemUseTypeDict.Values) { List<ItemModel> modellist = null; singlePack.GetItemCountByID(itemId, out modellist); @@ -1247,6 +1242,53 @@ } } private void AddItemUseTypeDict(int id) { SkillConfig skillConfig = GetSkillConfig(id); int itemCount = GetItemCountByID(PackType.rptItem, id); if (skillConfig != null && itemCount > 0) { if (!itemUseTypeDict.ContainsKey(skillConfig.SkillTypeID)) { itemUseTypeDict.Add(skillConfig.SkillTypeID,id); } else { SkillConfig preSkillConfig = GetSkillConfig(itemUseTypeDict[skillConfig.SkillTypeID]); if (skillConfig.SkillLV > preSkillConfig.SkillLV) { itemUseTypeDict[skillConfig.SkillTypeID] = id; } } } } private void UpdateDungeonDanUse() { int mapId = PlayerDatas.Instance.baseData.MapID; int[] useDrugs = GetDrugIDListByDungeonID(mapId); if (useDrugs == null) return; for (int i = 0; i < useDrugs.Length; i++) { int id = useDrugs[i]; AddItemUseTypeDict(id); } } private void UpdateDungeonUse() { int mapId = PlayerDatas.Instance.baseData.MapID; if (!dungeonUseDict.ContainsKey(mapId)) return; List<int> useIdlist = dungeonUseDict[mapId]; for(int i = 0; i < useIdlist.Count; i++) { int id = useIdlist[i]; AddItemUseTypeDict(id); } } public SkillConfig GetSkillConfig(int itemId) { ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(itemId); System/MainInterfacePanel/InGamePushContainer.cs
@@ -25,6 +25,7 @@ [SerializeField] DungeonGuardCheckBehaviour m_DungeonGuardBehaviour; [SerializeField] FirstChargeTrialBehaviour m_FirstChargeTrialBehaviour; [SerializeField] FairyGrabBossHelpBehaviour m_FairyGrabBossHelpBehaviour; [SerializeField] DogzNotifyBehaviour m_DogzNotifyBehaviour; WorldBossModel worldBossModel { get { return ModelCenter.Instance.GetModel<WorldBossModel>(); } } BossHomeModel bossHomeModel { get { return ModelCenter.Instance.GetModel<BossHomeModel>(); } } @@ -46,6 +47,8 @@ GuardModel guardModel { get { return ModelCenter.Instance.GetModel<GuardModel>(); } } FirstTimeRechargeModel firstTimeRechargeModel { get { return ModelCenter.Instance.GetModel<FirstTimeRechargeModel>(); } } FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } } DogzModel dogzModel { get { return ModelCenter.Instance.GetModel<DogzModel>(); } } public void Init() { CheckBetterEquip(); @@ -60,6 +63,7 @@ CheckDungeonGuard(); FirstChargeTrialShow(); CheckFairyGrabBossHelp(); CheckDogzNotify(); playerPack.RefreshDecomAttrAct += CheckEquipDecompose; betterEquipGetModel.showEquipRefreshEvent += CheckBetterEquip; realmEquipModel.showEquipRefreshEvent += CheckRealmBetterEquip; @@ -71,6 +75,7 @@ guardModel.onDungeonEquipGuardEvent += CheckDungeonGuard; firstTimeRechargeModel.IsTipShowEvent += FirstChargeTrialShow; fairyGrabBossModel.fairyGrabBossHelpUpdate += CheckFairyGrabBossHelp; dogzModel.UpdateDogzPutRedEvent += CheckDogzNotify; } public void UnInit() @@ -86,6 +91,7 @@ firstTimeRechargeModel.IsTipShowEvent -= FirstChargeTrialShow; realmEquipModel.showEquipRefreshEvent -= CheckRealmBetterEquip; fairyGrabBossModel.fairyGrabBossHelpUpdate -= CheckFairyGrabBossHelp; dogzModel.UpdateDogzPutRedEvent -= CheckDogzNotify; } private void CheckRealmBetterEquip() @@ -128,6 +134,11 @@ } } private void CheckDogzNotify() { m_DogzNotifyBehaviour.SetDisplay(); } private void CheckPreciousItem() { if (preciousItemGetModel.currentShowItem == default(PreciousItemGetModel.PreciousItem)) System/Tip/StatusTipWin.cs
@@ -6,6 +6,7 @@ using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; @@ -35,6 +36,11 @@ private float m_TopLimit; bool inited = false; [SerializeField] RectTransform m_ContainerSpecialBuff; [SerializeField] PositionTween m_SpeicalBuffTween; [SerializeField] UIAlphaTween m_SpecialBuffAlplaTween; [SerializeField] int m_SpecialBuffId; #region Built-in protected override void BindController() { @@ -54,6 +60,7 @@ m_FreeList.Push(m_TipList[i]); } m_TipList.Clear(); m_ContainerSpecialBuff.gameObject.SetActive(false); } protected override void LateUpdate() @@ -162,7 +169,23 @@ #endregion private void OnGainStatus(string buffName) private void OnGainStatus(int skillId) { var skillConfig = Config.Instance.Get<SkillConfig>(skillId); if (skillConfig != null) { if (skillConfig.SkillTypeID == m_SpecialBuffId) { DisplaySpecialTip(); } else { DisplayLabelTip(skillConfig.SkillName); } } } void DisplayLabelTip(string buffName) { TipController _newController = null; if (m_FreeList.Count > 0) @@ -192,6 +215,28 @@ m_MoveTime += moveDuration; } void DisplaySpecialTip() { transform.SetAsLastSibling(); m_SpeicalBuffTween.SetStartState(); m_SpecialBuffAlplaTween.SetStartState(); m_SpeicalBuffTween.enabled = false; m_SpecialBuffAlplaTween.enabled = false; m_ContainerSpecialBuff.gameObject.SetActive(true); m_SpeicalBuffTween.enabled = true; m_SpeicalBuffTween.Play(OnSpecialBuffComplete); } private void OnSpecialBuffComplete() { m_SpecialBuffAlplaTween.enabled = true; m_SpecialBuffAlplaTween.Play(OnSpecialBuffAlphaComplete); } private void OnSpecialBuffAlphaComplete() { m_ContainerSpecialBuff.gameObject.SetActive(false); } }