| Core/GameEngine/Model/Config/DungeonOpenTimeConfig.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/Model/Config/DungeonOpenTimeConfig.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/NetworkPackage/ServerPack/HB2_ActionMap/HB205_tagMCHelpBattleCheckInResult.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonAssistModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonAssistWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonGetXianYuanCoinsBehvaiour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonGetXianYuanCoinsBehvaiour.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Store/StoreWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Utility/UIHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Model/Config/DungeonOpenTimeConfig.cs
@@ -1,6 +1,6 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, November 12, 2018 // [ Date ]: Monday, November 26, 2018 //-------------------------------------------------------- using UnityEngine; @@ -11,27 +11,28 @@ public partial class DungeonOpenTimeConfig : ConfigBase { public int DataMapID { get ; private set ; } public string FBName { get ; private set; } public int CanEnterTime { get ; private set ; } public int DayTimes { get ; private set ; } public int DayReKind { get ; private set ; } public int WeekTimes { get ; private set ; } public int WeekReKind { get ; private set ; } public int FBType { get ; private set ; } public int[] RewardRate; public int BuyTimesID { get ; private set ; } public int ExtraTimesID { get ; private set ; } public int DeathTime { get ; private set ; } public int GuardPick { get ; private set ; } public int DoFight { get ; private set ; } public int HelpPoint { get ; private set ; } public int DelayTime { get ; private set ; } public int Movable { get ; private set ; } public int Skillable { get ; private set ; } public int SelectPlayerable { get ; private set ; } public string ExitDescription { get ; private set; } public string PanelImg { get ; private set; } public int DataMapID { get ; private set ; } public string FBName { get ; private set; } public int CanEnterTime { get ; private set ; } public int DayTimes { get ; private set ; } public int DayReKind { get ; private set ; } public int WeekTimes { get ; private set ; } public int WeekReKind { get ; private set ; } public int FBType { get ; private set ; } public int[] RewardRate; public int BuyTimesID { get ; private set ; } public int ExtraTimesID { get ; private set ; } public int DeathTime { get ; private set ; } public int GuardPick { get ; private set ; } public int DoFight { get ; private set ; } public int FBPoint { get ; private set ; } public int HelpPoint { get ; private set ; } public int DelayTime { get ; private set ; } public int Movable { get ; private set ; } public int Skillable { get ; private set ; } public int SelectPlayerable { get ; private set ; } public string ExitDescription { get ; private set; } public string PanelImg { get ; private set; } public int[] ElixirHint; public override string getKey() @@ -42,54 +43,56 @@ public override void Parse() { try { DataMapID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; FBName = rawContents[1].Trim(); CanEnterTime=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; DayTimes=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; DayReKind=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0; WeekTimes=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0; WeekReKind=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0; FBType=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0; DataMapID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; FBName = rawContents[1].Trim(); CanEnterTime=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0; DayTimes=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; DayReKind=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0; WeekTimes=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0; WeekReKind=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0; FBType=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0; string[] RewardRateStringArray = rawContents[8].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); RewardRate = new int[RewardRateStringArray.Length]; for (int i=0;i<RewardRateStringArray.Length;i++) { int.TryParse(RewardRateStringArray[i],out RewardRate[i]); } BuyTimesID=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0; ExtraTimesID=IsNumeric(rawContents[10]) ? int.Parse(rawContents[10]):0; DeathTime=IsNumeric(rawContents[11]) ? int.Parse(rawContents[11]):0; GuardPick=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0; DoFight=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0; HelpPoint=IsNumeric(rawContents[14]) ? int.Parse(rawContents[14]):0; DelayTime=IsNumeric(rawContents[15]) ? int.Parse(rawContents[15]):0; Movable=IsNumeric(rawContents[16]) ? int.Parse(rawContents[16]):0; Skillable=IsNumeric(rawContents[17]) ? int.Parse(rawContents[17]):0; SelectPlayerable=IsNumeric(rawContents[18]) ? int.Parse(rawContents[18]):0; ExitDescription = rawContents[19].Trim(); PanelImg = rawContents[20].Trim(); string[] ElixirHintStringArray = rawContents[21].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); } BuyTimesID=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0; ExtraTimesID=IsNumeric(rawContents[10]) ? int.Parse(rawContents[10]):0; DeathTime=IsNumeric(rawContents[11]) ? int.Parse(rawContents[11]):0; GuardPick=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0; DoFight=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0; FBPoint=IsNumeric(rawContents[14]) ? int.Parse(rawContents[14]):0; HelpPoint=IsNumeric(rawContents[15]) ? int.Parse(rawContents[15]):0; DelayTime=IsNumeric(rawContents[16]) ? int.Parse(rawContents[16]):0; Movable=IsNumeric(rawContents[17]) ? int.Parse(rawContents[17]):0; Skillable=IsNumeric(rawContents[18]) ? int.Parse(rawContents[18]):0; SelectPlayerable=IsNumeric(rawContents[19]) ? int.Parse(rawContents[19]):0; ExitDescription = rawContents[20].Trim(); PanelImg = rawContents[21].Trim(); string[] ElixirHintStringArray = rawContents[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); ElixirHint = new int[ElixirHintStringArray.Length]; for (int i=0;i<ElixirHintStringArray.Length;i++) { Core/GameEngine/Model/Config/DungeonOpenTimeConfig.cs.meta
@@ -1,6 +1,6 @@ fileFormatVersion: 2 guid: bf6b02af80ae8d84c9c211ed6753c6b6 timeCreated: 1542014433 timeCreated: 1543212717 licenseType: Pro MonoImporter: serializedVersion: 2 Core/NetworkPackage/ServerPack/HB2_ActionMap/HB205_tagMCHelpBattleCheckInResult.cs
@@ -5,6 +5,7 @@ public class HB205_tagMCHelpBattleCheckInResult : GameNetPackBasic { public byte IsOK; //是否成功 public byte IsLogin; //是否登录同步已登记 public HB205_tagMCHelpBattleCheckInResult () { _cmd = (ushort)0xB205; @@ -12,6 +13,7 @@ public override void ReadFromBytes (byte[] vBytes) { TransBytes (out IsOK, vBytes, NetDataType.BYTE); TransBytes (out IsLogin, vBytes, NetDataType.BYTE); } } System/Dungeon/DungeonAssistModel.cs
@@ -28,6 +28,7 @@ assistResults.Clear(); assistRefreshNum = 0; IsCheckInOk = false; IsRegisterToday = false; assistPlayerDict.Clear(); } @@ -54,6 +55,42 @@ remainNum = (freeRefreshNum + goldRefreshNum) - assistRefreshNum; } return assistRefreshNum < freeRefreshNum; } public bool TryGetRewardAdd(out int addCoins) { addCoins = 0; foreach (var key in assistPlayerDict.Keys) { var info = assistPlayerDict[key]; if (info.IsAssist) { addCoins += info.GetAddCoins(); } } return addCoins > 0; } public bool TryGetCurVipAddRatio(out string addRatioStr) { addRatioStr = string.Empty; int vipLv = PlayerDatas.Instance.baseData.VIPLv; var vipDict = VipPrivilegeConfig.GetVipPrivilegeDic(VipPrivilegeType.AssistXianYuanCoinsRatioAdd); if (vipDict == null || vipLv < 1) return false; List<int> vipLvlist = vipDict.Keys.ToList(); vipLvlist.Sort(); for (int i = vipLvlist.Count - 1; i > -1; i--) { var lv = vipLvlist[i]; var addRatio = vipDict[lv]; if (vipLv >= lv && addRatio > 0) { var ratio = (float)addRatio / 100; addRatioStr = StringUtility.Contact(ratio, "%"); return true; } } return false; } public bool IsMaxAssistCoinsAddByVip(out int nextVipLv,out int coins) @@ -388,10 +425,12 @@ #region 助战登记 public bool IsCheckInOk { get; private set; } public bool IsRegisterToday { get; private set; } public event Action UpdateCheckInResultEvent; public void UpdateAssistCheckInResult(HB205_tagMCHelpBattleCheckInResult checkInResult) { IsCheckInOk = checkInResult.IsOK == 1; IsRegisterToday = checkInResult.IsLogin == 1; if (UpdateCheckInResultEvent != null) { UpdateCheckInResultEvent(); @@ -430,6 +469,7 @@ assistResult.relatedToPlayer = (RelatedToPlayer)0; assistResult.vipLv = PlayerDatas.Instance.baseData.LV; assistResult.createTime = ToDisplay(); assistResult.SetNotifyResult(); assistResults.Add(assistResult); } @@ -678,6 +718,22 @@ public int IsNeedGold { get; private set; } // 是否需要仙玉召唤 public RelatedToPlayer relatedToPlayer { get; private set;} //与玩家的关系 public bool IsAssist { get { return ObjID != 0; } } public bool IsGoldAssist { get { return IsNeedGold != 0; } } DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); }} public AssistPlayerInfo(HB207_tagMCHelpBattleList.tagMCHelpBattlePlayer battlePlayer) @@ -718,20 +774,19 @@ ObjID = _objId; } public bool IsAssist public int GetAddCoins() { get int addCoins = 0; switch (relatedToPlayer) { return ObjID != 0; case RelatedToPlayer.Friend: addCoins = assistModel.GetAssistReward(1); break; case RelatedToPlayer.Ally: addCoins = assistModel.GetAssistReward(1); break; } } public bool IsGoldAssist { get { return IsNeedGold != 0; } return addCoins; } } System/Dungeon/DungeonAssistWin.cs
@@ -66,7 +66,8 @@ CreateResultCell(); UpdateRegisterBtn(); UpdateVipAddCoins(); dungeonScoreText.text = UIHelper.GetMoneyCnt(16).ToString(); UpdateXianYuanCoins(); dungeonScoreText.text = UIHelper.GetMoneyCnt(17).ToString(); } private void CreateResultCell() System/Dungeon/DungeonGetXianYuanCoinsBehvaiour.cs
New file @@ -0,0 +1,69 @@ using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class DungeonGetXianYuanCoinsBehvaiour : MonoBehaviour { [SerializeField] Text getCoinsText; DungeonModel m_Model; DungeonModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DungeonModel>()); } } private void OnEnable() { SetDisplay(); } public void SetDisplay() { var dungeonOpenTime = Config.Instance.Get<DungeonOpenTimeConfig>(PlayerDatas.Instance.baseData.MapID); string xianYuanCoinsInfo = string.Empty; if (dungeonOpenTime != null) { if (dungeonOpenTime.FBPoint != 0) { var assistModel = ModelCenter.Instance.GetModel<DungeonAssistModel>(); int addCoins = 0; bool isAddCoins = assistModel.TryGetRewardAdd(out addCoins); string addRatio = string.Empty; bool isVipAddRatio = assistModel.TryGetCurVipAddRatio(out addRatio); if (isAddCoins) { xianYuanCoinsInfo = Language.Get("DungeonAssist141", StringUtility.Contact(dungeonOpenTime.FBPoint, "+", addCoins)); } else { xianYuanCoinsInfo = Language.Get("DungeonAssist141", dungeonOpenTime.FBPoint); } if (isVipAddRatio) { xianYuanCoinsInfo = StringUtility.Contact(xianYuanCoinsInfo, "\n", Language.Get("DungeonAssist142", Language.Get("DungeonAssist143", addRatio))); } else { xianYuanCoinsInfo = StringUtility.Contact(xianYuanCoinsInfo, "\n", Language.Get("DungeonAssist142", Language.Get("Market_Text_33"))); } getCoinsText.text = xianYuanCoinsInfo; this.gameObject.SetActive(true); } else { this.gameObject.SetActive(false); } } else { this.gameObject.SetActive(false); } } } } System/Dungeon/DungeonGetXianYuanCoinsBehvaiour.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: 659b4a5199f2392488e7f026c82129ad timeCreated: 1543211375 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: System/Store/StoreWin.cs
@@ -266,7 +266,7 @@ { _coinsType1.text = UIHelper.GetMoneyCnt(1).ToString(); _coinsType2.text = UIHelper.GetMoneyCnt(2).ToString(); _coinsType3.text = modelInterface.OnChangeCoinsUnit(UIHelper.GetMoneyCnt(16)); _coinsType3.text = modelInterface.OnChangeCoinsUnit(UIHelper.GetMoneyCnt(17)); } private void OnCreate() Utility/UIHelper.cs
@@ -679,7 +679,7 @@ { return (ulong)ModelCenter.Instance.GetModel<StoreModel>().GetTCBPlayerData(PlayerDataRefresh.UnionLiven); } case 16: case 17: { return (ulong)ModelCenter.Instance.GetModel<StoreModel>().GetTCBPlayerData(PlayerDataRefresh.FBHelpPoint); }