| System/Auction/AuctionInquiry.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/AuctionLogicUtil.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/AuctionModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/AuctionModel.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/FamilyAuctionWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/FullServiceAuctionWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Auction/FullServiceAuctioncell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainInterfacePanel/ChatFrame.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainWin/VoiceWidget.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainWin/VoiceWidget.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Message/RichNormalEvent.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/WindowBase/ModelCenter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/Auction/AuctionInquiry.cs
@@ -9,25 +9,10 @@ //拍卖查询 namespace Snxxz.UI { [XLua.Hotfix] public class QueryAuctionItem { public int Job;//职业,0为不限制 public List<uint> ItemTypeList;//指定的物品类型 public int ClassLV;//过滤阶数,0为不限制 public List<uint> SpecItemIDList;//指定物品ID public string FromItemGUID;//从哪个物品开始查询 public int QueryDir;//查询方向,1-往后查,2-往前查 public int QueryCount;//查询个数,0为全部 } public class AuctionInquiry : Singleton<AuctionInquiry> { AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } public string locationGuid = string.Empty; public int GetInquiryIndex()//获取当前拍卖列表的索引类型 { @@ -51,72 +36,6 @@ } // DebugEx.Log(sendNumber + "查询类型"); return sendNumber; } public void SendQueryAuction(string itemGUID, int indexId, int queryDir, int queryCount = 10)//拍卖行查询拍卖中的物品(物品GUID,查询方向,查询个数) { var auctionIndex = AuctionIndexConfig.Get(indexId); if (auctionIndex == null) { DebugEx.LogError("拍卖索引表没有查到对应的ID" + indexId); return; } QueryAuctionItem queryAuctionItem = new QueryAuctionItem(); queryAuctionItem.FromItemGUID = itemGUID; queryAuctionItem.Job = auctionIndex.Job; queryAuctionItem.ItemTypeList = new List<uint>(); if (auctionIndex.ItemType != null && auctionIndex.ItemType.Length > 0) { for (int i = 0; i < auctionIndex.ItemType.Length; i++) { queryAuctionItem.ItemTypeList.Add((uint)auctionIndex.ItemType[i]); } } queryAuctionItem.ClassLV = auctionIndex.Order; queryAuctionItem.SpecItemIDList = new List<uint>(); if (auctionIndex.SpecItemID != null && auctionIndex.SpecItemID.Length > 0) { for (int i = 0; i < auctionIndex.SpecItemID.Length; i++) { queryAuctionItem.SpecItemIDList.Add((uint)auctionIndex.SpecItemID[i]); } } queryAuctionItem.QueryDir = queryDir; queryAuctionItem.QueryCount = queryCount; SendQueryAuctionItem(queryAuctionItem); } public void JumpAuctionWin(string itemGUID)//邮件超链接跳转 { if (model.FamilyAuctionItemDic.ContainsKey(itemGUID)) { locationGuid = itemGUID; WindowCenter.Instance.Open<AuctionHouseWin>(true, 1); } else if (model.BiddingItemInfoDic.ContainsKey(itemGUID)) { locationGuid = itemGUID; WindowCenter.Instance.Open<AuctionHouseWin>(true, 0); } else { SendQueryTagAuctionItem(itemGUID); } } private void SendQueryAuctionItem(QueryAuctionItem queryAuctionItem)//拍卖行查询拍卖中的物品 { CB510_tagCGQueryAuctionItem cb510 = new CB510_tagCGQueryAuctionItem(); cb510.Job = (byte)queryAuctionItem.Job; cb510.ItemTypeCount = (byte)queryAuctionItem.ItemTypeList.Count; cb510.ItemTypeList = queryAuctionItem.ItemTypeList.ToArray(); cb510.ClassLV = (byte)queryAuctionItem.ClassLV; cb510.SpecItemIDCount = (byte)queryAuctionItem.SpecItemIDList.Count; cb510.SpecItemIDList = queryAuctionItem.SpecItemIDList.ToArray(); cb510.FromItemGUID = queryAuctionItem.FromItemGUID; cb510.QueryDir = (byte)queryAuctionItem.QueryDir; cb510.QueryCount = (byte)queryAuctionItem.QueryCount; GameNetSystem.Instance.SendInfo(cb510); } public void SendQueryPlayerAuctionItem()// 拍卖行查询个人拍卖中的物品 System/Auction/AuctionLogicUtil.cs
@@ -63,9 +63,7 @@ if (isExtraTime) { var endTime = item.biddingTime >= normalEndTime ? extraEndTime : normalEndTime.AddTicks(extraAuctionSecond * TimeSpan.TicksPerSecond); var seconds = Mathf.CeilToInt((float)(endTime - TimeUtility.ServerNow).TotalSeconds); var seconds = Mathf.CeilToInt((float)(extraEndTime - TimeUtility.ServerNow).TotalSeconds); return Language.Get("PMH_18", TimeUtility.SecondsToHMS(seconds)); } else System/Auction/AuctionModel.cs
New file @@ -0,0 +1,101 @@ using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Snxxz.UI { public class AuctionModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk { public string locationItemGuid { get; set; } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } public override void Init() { } public void OnBeforePlayerDataInitialize() { } public void OnPlayerLoginOk() { } public override void UnInit() { } public void SendInquiryServerAcution(int inquiryIndex, string guid, int inquiryDir, int inquiryCount = 10) { var inquiryConfig = AuctionIndexConfig.Get(inquiryIndex); if (inquiryConfig == null) { DebugEx.LogErrorFormat("不存在的查询Index:{0}", inquiryIndex); return; } uint[] itemTypes = null; if (inquiryConfig.ItemType != null && inquiryConfig.ItemType.Length > 0) { itemTypes = new uint[inquiryConfig.ItemType.Length]; Array.Copy(inquiryConfig.ItemType, itemTypes, inquiryConfig.ItemType.Length); } uint[] specialItemIds = null; if (inquiryConfig.SpecItemID != null && inquiryConfig.SpecItemID.Length > 0) { specialItemIds = new uint[inquiryConfig.SpecItemID.Length]; Array.Copy(inquiryConfig.SpecItemID, specialItemIds, inquiryConfig.SpecItemID.Length); } var pak = new CB510_tagCGQueryAuctionItem(); pak.Job = (byte)inquiryConfig.Job; pak.ItemTypeCount = itemTypes == null ? (byte)0 : (byte)itemTypes.Length; pak.ItemTypeList = itemTypes == null ? new uint[0] : itemTypes; pak.ClassLV = (byte)inquiryConfig.Order; pak.SpecItemIDCount = specialItemIds == null ? (byte)0 : (byte)specialItemIds.Length; pak.SpecItemIDList = specialItemIds == null ? new uint[0] : specialItemIds; pak.FromItemGUID = guid; pak.QueryDir = (byte)inquiryDir; pak.QueryCount = (byte)inquiryCount; GameNetSystem.Instance.SendInfo(pak); } public void SendLocationServerItem(string guid) { var pak = new CB517_tagCGQueryTagAuctionItem(); pak.ItemGUID = guid; GameNetSystem.Instance.SendInfo(pak); } public void LocationItemByGuid(string guid) { if (model.FamilyAuctionItemDic.ContainsKey(guid)) { locationItemGuid = guid; WindowCenter.Instance.Open<AuctionHouseWin>(true, 1); } else if (model.BiddingItemInfoDic.ContainsKey(guid)) { locationItemGuid = guid; WindowCenter.Instance.Open<AuctionHouseWin>(true, 0); } else { SendLocationServerItem(guid); } } } } System/Auction/AuctionModel.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 98952095fd2871c46a4c8c82e0960ed9 timeCreated: 1553927710 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/Auction/FamilyAuctionWin.cs
@@ -15,6 +15,8 @@ public class FamilyAuctionWin : Window { [SerializeField] ScrollerController m_ScrollerControllerItem; AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } List<AuctionItem> FamilyAuctionList = new List<AuctionItem>(); @@ -36,13 +38,13 @@ var index = FamilyAuctionList.FindIndex((x) => { return x.itemGuid.Equals(AuctionInquiry.Instance.locationGuid); return x.itemGuid.Equals(auctionModel.locationItemGuid); }); if (index != -1) { m_ScrollerControllerItem.JumpIndex(index); } AuctionInquiry.Instance.locationGuid = string.Empty; auctionModel.locationItemGuid = string.Empty; } protected override void OnAfterOpen() System/Auction/FullServiceAuctionWin.cs
@@ -28,6 +28,8 @@ [SerializeField] Text m_TypeTipText; List<string> m_ServerAuctionItems = new List<string>();//全服拍品列表 AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } @@ -66,14 +68,14 @@ OnCreateGridLineCellType(m_ScrollerControllerType); OnCreateGridLineCellItem(m_ScrollerControllerItem); var index = m_ServerAuctionItems.IndexOf(AuctionInquiry.Instance.locationGuid); var index = m_ServerAuctionItems.IndexOf(auctionModel.locationItemGuid); if (index != -1) { m_ScrollerControllerItem.JumpIndex(index); } model.LocationQuery = false; AuctionInquiry.Instance.locationGuid = string.Empty; auctionModel.locationItemGuid = string.Empty; SetTipText(); } @@ -312,12 +314,12 @@ private void ResetServerAuctionInquiry()//重置查询 { model.ResetServerAuctionInquiry(); var sendNumber = AuctionInquiry.Instance.GetInquiryIndex(); if (sendNumber != 0) var inquiryIndex = AuctionInquiry.Instance.GetInquiryIndex(); if (inquiryIndex != 0) { if (!model.LocationQuery) { AuctionInquiry.Instance.SendQueryAuction(string.Empty, sendNumber, 1); auctionModel.SendInquiryServerAcution(inquiryIndex, string.Empty, 1); } } } System/Auction/FullServiceAuctioncell.cs
@@ -32,6 +32,8 @@ [SerializeField] Button m_BiddingButton;//竞价按钮 [SerializeField] TextEx m_JadeNumber2; AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } @@ -79,7 +81,7 @@ { if (inquiryIndex != 0 && auctionHelpModel.Wait && model.QueryRemaining.UpBool) { AuctionInquiry.Instance.SendQueryAuction(auctionItem.itemGuid, inquiryIndex, 2); auctionModel.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 2); auctionHelpModel.Wait = false; } } @@ -87,7 +89,7 @@ { if (inquiryIndex != 0 && auctionHelpModel.Wait && model.QueryRemaining.DownBool && !auctionHelpModel.isOpenPanel) { AuctionInquiry.Instance.SendQueryAuction(auctionItem.itemGuid, inquiryIndex, 1); auctionModel.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 1); auctionHelpModel.Wait = false; } } @@ -187,6 +189,8 @@ void DisplayTime(AuctionItem auctionItem) { m_TimeText.text = AuctionLogicUtil.GetBiddingTimeLabel(auctionItem); var colortype = AuctionLogicUtil.IsAuctionItemExtraTime(auctionItem) ? TextColType.Red : TextColType.Green; m_TimeText.color = UIHelper.GetUIColor(colortype, true); } } System/MainInterfacePanel/ChatFrame.cs
@@ -15,9 +15,6 @@ public class ChatFrame : MonoBehaviour { [SerializeField] Button m_Voice; [SerializeField] VoiceRecorder m_TeamVoice; [SerializeField] VoiceRecorder m_GuildVoice; [SerializeField] Button _MailBtn;//邮件按钮 [SerializeField] Button _OneKeyBtn;//地图挂机 [SerializeField] Button _AutoBtn;//自动挂机 @@ -31,29 +28,27 @@ [SerializeField] Button m_SocialBtn;//社交按钮 [SerializeField] Button m_TeamBtn;//队伍按钮 [SerializeField] RectTransform m_ContainerVoice; [SerializeField] Button m_Voice; [SerializeField] VoiceWidget m_VoiceWidget; List<int> OneKeyList = new List<int>(); TeamModel model { get { return ModelCenter.Instance.GetModel<TeamModel>(); } } TeamModel teamModel { get { return ModelCenter.Instance.GetModel<TeamModel>(); } } CoinTaskTipModel coinTaskTip { get { return ModelCenter.Instance.GetModel<CoinTaskTipModel>(); } } void Awake() { var funconfig = FuncConfigConfig.Get("OneKeyBtnMap"); OneKeyList.AddRange(ConfigParse.GetMultipleStr<int>(funconfig.Numerical1)); } public void Init() { OneKeyList.Clear(); var funconfig = FuncConfigConfig.Get("OneKeyBtnMap"); int[] Listmap = ConfigParse.GetMultipleStr<int>(funconfig.Numerical1); for (int i = 0; i < Listmap.Length; i++) { OneKeyList.Add(Listmap[i]); } MailAllModel.Instance.MailCntChangeEvent += MailCountChange; model.myTeamRefreshEvent += myTeamRefreshEvent; HeroBehaviour.OnStopHandupAI += OnHeroHandupAIStopPassive; HeroBehaviour.OnStartHandupAI += OnHeroHandupAIStarted; PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += OnRefreshFairyInfo; FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; m_GuildVoice.voiceRecordSuccessEvent += OnVoiceRecordFairySuccessEvent; m_TeamVoice.voiceRecordSuccessEvent += OnVoiceRecordTeamSuccessEvent; _MailBtn.SetListener(MailButton); _OneKeyBtn.SetListener(OneKeyButton); @@ -63,9 +58,11 @@ m_TaskBtn.SetListener(TaskButton); m_SocialBtn.SetListener(FriendsButton); m_TeamBtn.SetListener(OpenTeam); myTeamRefreshEvent(); OnRefreshFairyInfo(); m_Voice.SetListener(OpenVoice); MailCountChange(); UpdateVoiceState(); m_VoiceWidget.Init(); if (PlayerDatas.Instance.hero != null) { @@ -76,44 +73,31 @@ } } public void OnAfterOpen() public void UnInit() { var inDungeon = IsDungeon(); int MapId = PlayerDatas.Instance.baseData.MapID; if (inDungeon) { m_TaskBtn.gameObject.SetActive(false); if (OneKeyList.Contains(MapId)) { _OneKeyBtn.gameObject.SetActive(true); } else { _OneKeyBtn.gameObject.SetActive(false); } } else { m_TaskBtn.gameObject.SetActive(true); _OneKeyBtn.gameObject.SetActive(true); } } private void OnVoiceRecordTeamSuccessEvent(int _instId, float _seconds) { ModelCenter.Instance.GetModel<ChatCenter>().SetVoice(_instId, ChatInfoType.Team, _seconds); m_VoiceWidget.Init(); teamModel.myTeamRefreshEvent -= UpdateVoiceState; PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= UpdateVoiceState; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; HeroBehaviour.OnStopHandupAI -= OnHeroHandupAIStopPassive; HeroBehaviour.OnStartHandupAI -= OnHeroHandupAIStarted; MailAllModel.Instance.DeleteMailEvent -= MailCountChange; } private void OnVoiceRecordFairySuccessEvent(int _instId, float _seconds) public void OnAfterOpen() { ModelCenter.Instance.GetModel<ChatCenter>().SetVoice(_instId, ChatInfoType.Fairy, _seconds); var mapId = PlayerDatas.Instance.baseData.MapID; var inDungeon = MapUtility.IsDungeon(mapId); m_TaskBtn.gameObject.SetActive(!inDungeon); _OneKeyBtn.gameObject.SetActive(!inDungeon || OneKeyList.Contains(mapId)); } private void OnFuncStateChangeEvent(int _type) { if ((FuncOpenEnum)_type == FuncOpenEnum.Chat) { OnRefreshFairyInfo(); myTeamRefreshEvent(); UpdateVoiceState(); } } @@ -172,7 +156,7 @@ private void OpenTeam() { WindowCenter.Instance.Close<MainInterfaceWin>(); if (model.myTeam.inTeam) if (teamModel.myTeam.inTeam) { WindowCenter.Instance.Open<TeamFrameWin>(false, 1); } @@ -182,28 +166,29 @@ } } public void UnInit() private void OpenVoice() { m_GuildVoice.voiceRecordSuccessEvent -= OnVoiceRecordFairySuccessEvent; m_TeamVoice.voiceRecordSuccessEvent -= OnVoiceRecordTeamSuccessEvent; model.myTeamRefreshEvent -= myTeamRefreshEvent; PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= OnRefreshFairyInfo; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; HeroBehaviour.OnStopHandupAI -= OnHeroHandupAIStopPassive; HeroBehaviour.OnStartHandupAI -= OnHeroHandupAIStarted; MailAllModel.Instance.DeleteMailEvent -= MailCountChange; m_VoiceWidget.Show(); } private void OnRefreshFairyInfo() private void UpdateVoiceState() { m_GuildVoice.gameObject.SetActive(PlayerDatas.Instance.fairyData.HasFairy && FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Chat)); } var chatable = FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Chat); var guildVoiceEnable = false; var teamVoiceEnable = false; private void myTeamRefreshEvent() { m_TeamVoice.gameObject.SetActive(model.myTeam.inTeam && FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Chat)); if (chatable) { guildVoiceEnable = PlayerDatas.Instance.fairyData.HasFairy; teamVoiceEnable = teamModel.myTeam.inTeam; } else { guildVoiceEnable = false; teamVoiceEnable = false; } m_ContainerVoice.gameObject.SetActive(chatable && (guildVoiceEnable || teamVoiceEnable)); } private void LateUpdate() @@ -256,7 +241,8 @@ WindowCenter.Instance.Open<MailWin>(); WindowCenter.Instance.Close<MainInterfaceWin>(); } DungeonModel modelD { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } PlayerMainDate main { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } } BossHomeModel bossHomeModel { get { return ModelCenter.Instance.GetModel<BossHomeModel>(); } } void OneKeyButton()//地图挂机按钮 @@ -269,18 +255,18 @@ if (OneKeyList.Contains(PlayerDatas.Instance.baseData.MapID)) { var dataMapId = modelD.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID); var dataMapId = MapUtility.GetDataMapId(); var config = DungeonOpenTimeConfig.Get(dataMapId); string language = string.Empty; if (dataMapId == GeneralDefine.ruinsTranscriptMapId) { language = Language.Get(modelD.mission.lineID > main.LayerNumberNow ? "WHMJ_Quit2" : "WHMJ_Quit1"); language = Language.Get(dungeonModel.mission.lineID > main.LayerNumberNow ? "WHMJ_Quit2" : "WHMJ_Quit1"); } else if (dataMapId == BossHomeModel.BOSSHOME_MAPID) { var vipLevel = PlayerDatas.Instance.baseData.VIPLv; var vipNeed = bossHomeModel.GetFloorVipRequirement(PlayerDatas.Instance.baseData.dungeonLineId + 1); var dungeonId = modelD.GetDungeonId(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId); var dungeonId = dungeonModel.GetDungeonId(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId); var dungeonConfig = DungeonConfig.Get(dungeonId); if (vipLevel < vipNeed) @@ -400,13 +386,6 @@ { m_ImgUnAuto.gameObject.SetActive(true); } } private bool IsDungeon()//判断是否再副本中 { var mapId = PlayerDatas.Instance.baseData.MapID; var mapConfig = MapConfig.Get(mapId); return mapConfig != null && mapConfig.MapFBType != 0; } } System/MainWin/VoiceWidget.cs
New file @@ -0,0 +1,119 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Saturday, March 30, 2019 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; namespace Snxxz.UI { public class VoiceWidget : MonoBehaviour { [SerializeField] RectTransform m_Content; [SerializeField] ClickScreenOtherSpace m_ClickOtherSpace; [SerializeField] VoiceRecorder m_TeamVoice; [SerializeField] VoiceRecorder m_GuildVoice; LogicBool active = new LogicBool(); ChatCenter chatModel { get { return ModelCenter.Instance.GetModel<ChatCenter>(); } } TeamModel teamModel { get { return ModelCenter.Instance.GetModel<TeamModel>(); } } public void Init() { m_Content.gameObject.SetActive(active.Fetch()); UpdateRecorderState(); m_ClickOtherSpace.AddListener(Hide); m_GuildVoice.voiceRecordSuccessEvent += OnVoiceRecordFairySuccessEvent; m_TeamVoice.voiceRecordSuccessEvent += OnVoiceRecordTeamSuccessEvent; FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += UpdateRecorderState; teamModel.myTeamRefreshEvent += UpdateRecorderState; } public void UnInit() { active.value = false; m_GuildVoice.voiceRecordSuccessEvent -= OnVoiceRecordFairySuccessEvent; m_TeamVoice.voiceRecordSuccessEvent -= OnVoiceRecordTeamSuccessEvent; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= UpdateRecorderState; teamModel.myTeamRefreshEvent -= UpdateRecorderState; } public void Show() { active.value = true; } public void Hide() { active.value = false; } private void Update() { if (active.dirty) { m_Content.gameObject.SetActive(active.Fetch()); } } private void OnVoiceRecordTeamSuccessEvent(int _instId, float _seconds) { chatModel.SetVoice(_instId, ChatInfoType.Team, _seconds); } private void OnVoiceRecordFairySuccessEvent(int _instId, float _seconds) { chatModel.SetVoice(_instId, ChatInfoType.Fairy, _seconds); } private void UpdateRecorderState() { var chatable = FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Chat); var guildVoiceEnable = false; var teamVoiceEnable = false; if (chatable) { guildVoiceEnable = PlayerDatas.Instance.fairyData.HasFairy; teamVoiceEnable = teamModel.myTeam.inTeam; } else { guildVoiceEnable = false; teamVoiceEnable = false; } m_GuildVoice.gameObject.SetActive(guildVoiceEnable); m_TeamVoice.gameObject.SetActive(teamVoiceEnable); } private void OnFuncStateChangeEvent(int _type) { if ((FuncOpenEnum)_type == FuncOpenEnum.Chat) { UpdateRecorderState(); } } void TeamChatButton() { SysNotifyMgr.Instance.ShowTip("UnopenedFunction"); } void TongVoiceButton() { SysNotifyMgr.Instance.ShowTip("UnopenedFunction"); } } } System/MainWin/VoiceWidget.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 0f7b70cba4cac9e4a9aee003d2aeedc5 timeCreated: 1553925475 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/Message/RichNormalEvent.cs
@@ -114,8 +114,7 @@ { var guid = href.mSplits["auctionbidding"]; guid = guid.Trim('\"'); AuctionInquiry.Instance.JumpAuctionWin(guid);//定位查询 //--竞价 ModelCenter.Instance.GetModel<AuctionModel>().LocationItemByGuid(guid); } } break; System/WindowBase/ModelCenter.cs
@@ -230,6 +230,7 @@ RegisterModel<RuneResolveModel>(); RegisterModel<ReikiRootModel>(); RegisterModel<AuctionNewGetShowModel>(); RegisterModel<AuctionModel>(); inited = true; }