Core/GameEngine/Model/Config/TreasurePrivilegeConfig.cs
@@ -1,6 +1,6 @@ //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, September 03, 2018 // [ Date ]: Thursday, September 20, 2018 //-------------------------------------------------------- using UnityEngine; @@ -20,6 +20,7 @@ public string itemAward { get ; private set; } public int[] successList; public int treasureId { get ; private set ; } public int sort { get ; private set ; } public string Icon { get ; private set; } public string Name { get ; private set; } public string targetDescription { get ; private set; } @@ -56,13 +57,15 @@ treasureId=IsNumeric(rawContents[8]) ? int.Parse(rawContents[8]):0; Icon = rawContents[9].Trim(); sort=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0; Name = rawContents[10].Trim(); Icon = rawContents[10].Trim(); targetDescription = rawContents[11].Trim(); Name = rawContents[11].Trim(); effectId=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0; targetDescription = rawContents[12].Trim(); effectId=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0; } catch (Exception ex) { Core/GameEngine/Model/Config/TreasurePrivilegeConfig.cs.meta
@@ -1,6 +1,6 @@ fileFormatVersion: 2 guid: 761a8477b6259554ab927daec347dba7 timeCreated: 1535981375 timeCreated: 1537429075 licenseType: Pro MonoImporter: serializedVersion: 2 Core/NetworkPackage/ClientPack/ClientToMapServer/CA5_Function/CA5C4_tagCMDogzEquipPlus.cs
@@ -1,45 +1,26 @@ using UnityEngine; using System.Collections; // A5 C4 神兽装备强化 #tagCMDogzEquipPlus public class CA5C4_tagCMDogzEquipPlus : GameNetPackBasic { public byte EquipIndex; //神兽装备背包中索引 public byte IndexCount; //材料所在神兽物品背包索引的数量 public byte[] IndexList; //材料所在神兽物品背包索引列表 public byte IsDouble; //是否双倍强化 public CA5C4_tagCMDogzEquipPlus () { combineCmd = (ushort)0x03FE; _cmd = (ushort)0xA5C4; } public override void WriteToBytes () { WriteBytes (EquipIndex, NetDataType.BYTE); WriteBytes (IndexCount, NetDataType.BYTE); WriteBytes (IndexList, NetDataType.BYTE, IndexCount); WriteBytes (IsDouble, NetDataType.BYTE); } } // A5 C4 神兽装备强化 #tagCMDogzEquipPlus public class CA5C4_tagCMDogzEquipPlus : GameNetPackBasic { public byte EquipIndex; //神兽装备背包中索引 public byte IndexCount; //材料所在神兽物品背包索引的数量 public byte[] IndexList; //材料所在神兽物品背包索引列表 public uint[] IndexUseCountList; //材料所在神兽物品背包索引对应使用个数列表 public byte IsDouble; //是否双倍强化 public CA5C4_tagCMDogzEquipPlus () { combineCmd = (ushort)0x03FE; _cmd = (ushort)0xA5C4; } public override void WriteToBytes () { WriteBytes (EquipIndex, NetDataType.BYTE); WriteBytes (IndexCount, NetDataType.BYTE); WriteBytes (IndexList, NetDataType.BYTE, IndexCount); WriteBytes (IndexUseCountList, NetDataType.DWORD, IndexCount); WriteBytes (IsDouble, NetDataType.BYTE); } } Core/NetworkPackage/DTCFile/ServerPack/H01_System/DTC0102_tagCDBPlayer.cs
@@ -21,11 +21,6 @@ H0102_tagCDBPlayer vNetData = vNetPack as H0102_tagCDBPlayer; SDKUtility.Instance.RoleLogin(vNetData.PlayerID.ToString(), vNetData.PlayerName, vNetData.LV.ToString(), vNetData.VIPLv.ToString()); DEBUG_0102 = true; DTC0403_tagPlayerLoginLoadOK.finishedLogin = false; DEBUG_STEP = 0; @@ -52,6 +47,12 @@ } PlayerDatas.Instance.InitPlayerData(vNetData); SDKUtility.Instance.RoleLogin(vNetData.PlayerID.ToString(), vNetData.PlayerName, vNetData.LV.ToString(), vNetData.VIPLv.ToString()); var _mapConfig = Config.Instance.Get<MapConfig>(vNetData.MapID); DTCA127_tagMCStartChangeMap.LineID = 0; Core/SDK/SDKUtility.cs
@@ -655,6 +655,10 @@ { m_PaymentTable["RechargeChannel"] = "1"; } else if (ChannelPlatform == E_ChannelPlatform.Sp) { m_PaymentTable["RechargeChannel"] = "2"; } var _stringBuilder = new System.Text.StringBuilder(); var _md5Body = _stringBuilder.Append(m_PaymentTable["AppID"]). @@ -896,11 +900,37 @@ { m_Json.Clear(); m_Json["code"] = CodeU2A.RoleLogin; m_Json["roleID"] = roleID; m_Json["roleName"] = roleName; m_Json["sid"] = "s" + ServerListCenter.Instance.currentServer.region_flag; m_Json["level"] = lv; m_Json["vipLevel"] = vipLV; m_Json["serverName"] = ServerListCenter.Instance.currentServer.name; m_Json["familyName"] = PlayerDatas.Instance.baseData.FamilyName; m_Json["level"] = PlayerDatas.Instance.baseData.LV; m_Json["job"] = PlayerDatas.Instance.baseData.Job.ToString(); m_Json["money"] = PlayerDatas.Instance.baseData.Gold.ToString(); m_Json["gameName"] = VersionConfig.Get().productName; m_Json["vipLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString(); SendMessageToSDK(m_Json); } public void RoleLevelUp() { m_Json.Clear(); m_Json["code"] = CodeU2A.RoleLevelUp; m_Json["roleID"] = PlayerDatas.Instance.PlayerId.ToString(); m_Json["roleName"] = PlayerDatas.Instance.baseData.PlayerName; m_Json["sid"] = "s" + ServerListCenter.Instance.currentServer.region_flag; m_Json["serverName"] = ServerListCenter.Instance.currentServer.name; m_Json["familyName"] = PlayerDatas.Instance.baseData.FamilyName; m_Json["level"] = PlayerDatas.Instance.baseData.LV; m_Json["job"] = PlayerDatas.Instance.baseData.Job.ToString(); m_Json["money"] = PlayerDatas.Instance.baseData.Gold.ToString(); m_Json["gameName"] = VersionConfig.Get().productName; m_Json["vipLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString(); SendMessageToSDK(m_Json); } System/Dogz/DogzActiveWin.cs
@@ -178,21 +178,25 @@ { m_PropertyTypes[i].gameObject.SetActive(i < _dogzCfg.BaseAttrTypes.Length); m_PropertyValues[i].gameObject.SetActive(i < _dogzCfg.BaseAttrTypes.Length); string addAttrStr = ""; string baseAttrStr = ""; if (i < _dogzCfg.BaseAttrTypes.Length) { var _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_dogzCfg.BaseAttrTypes[i]); m_PropertyTypes[i].text = _propertyCfg.Name; int attrValue = _dogzCfg.BaseAttrValues[i]; if (isAddAttr && model.m_DogzEquipAttrDict[_propertyCfg.ID] > 0) { m_PropertyValues[i].text = StringUtility.Contact(UIHelper.ReplacePercentage(_dogzCfg.BaseAttrValues[i], _propertyCfg.ISPercentage) , _propertyCfg.ISPercentage == 1 ? "%" : string.Empty,"+",UIHelper.ReplacePercentage(model.m_DogzEquipAttrDict[_propertyCfg.ID], _propertyCfg.ISPercentage) baseAttrStr = StringUtility.Contact(UIHelper.ReplacePercentage(_dogzCfg.BaseAttrValues[i], _propertyCfg.ISPercentage) , _propertyCfg.ISPercentage == 1 ? "%" : string.Empty); addAttrStr = StringUtility.Contact("+", UIHelper.ReplacePercentage(model.m_DogzEquipAttrDict[_propertyCfg.ID], _propertyCfg.ISPercentage) , _propertyCfg.ISPercentage == 1 ? "%" : string.Empty); } else { m_PropertyValues[i].text = StringUtility.Contact(UIHelper.ReplacePercentage(_dogzCfg.BaseAttrValues[i], _propertyCfg.ISPercentage) baseAttrStr = StringUtility.Contact(UIHelper.ReplacePercentage(_dogzCfg.BaseAttrValues[i], _propertyCfg.ISPercentage) , _propertyCfg.ISPercentage == 1 ? "%" : string.Empty); } @@ -200,13 +204,27 @@ if(model.TryGetAssistDogzState(model.presentSelectDogz)) { m_PropertyTypes[i].material = MaterialUtility.GetUIDefaultGraphicMaterial(); m_PropertyValues[i].material = MaterialUtility.GetUIDefaultGraphicMaterial(); m_PropertyTypes[i].color = UIHelper.s_NavyBrown; if(addAttrStr != "") { m_PropertyValues[i].text = StringUtility.Contact("<color=#401c06>", baseAttrStr, "</color>", "<color=#109d06>", addAttrStr, "</color>"); } else { m_PropertyValues[i].text = StringUtility.Contact("<color=#401c06>", baseAttrStr, "</color>"); } } else { m_PropertyTypes[i].material = MaterialUtility.GetDefaultSpriteGrayMaterial(); m_PropertyValues[i].material = MaterialUtility.GetDefaultSpriteGrayMaterial(); m_PropertyTypes[i].color = UIHelper.s_BrightWhiteColor; if (addAttrStr != "") { m_PropertyValues[i].text = StringUtility.Contact("<color=#686868>", baseAttrStr, "</color>", "<color=#109d06>", addAttrStr, "</color>"); } else { m_PropertyValues[i].text = StringUtility.Contact("<color=#686868>", baseAttrStr, "</color>"); } } } } @@ -215,6 +233,7 @@ m_Controller.m_Scorller.RefreshActiveCellViews(); m_DogzAssistCnt.text = Language.Get("TreasurePrivilege_Dogz_1", StringUtility.Contact(model.GetAssistDogzCount(), "/", model.DogzAssistDefaultCnt)); UpdateDogzBtn(); UpdateDogzProperty(); } private void UpdateDogzBtn() { System/Dogz/DogzModel.cs
@@ -448,16 +448,22 @@ GameNetSystem.Instance.SendInfo(buyCnt); } public void SendDogzEquipStrength(int index,List<int>indexlist,int isDouble) public void SendDogzEquipStrength(int index,List<int>indexlist,List<int> IndexUseCountList, int isDouble) { CA5C4_tagCMDogzEquipPlus dogzStren = new CA5C4_tagCMDogzEquipPlus(); dogzStren.EquipIndex = (byte)index; dogzStren.IndexCount = (byte)indexlist.Count; byte[] indexByte = new byte[indexlist.Count]; for(int i = 0; i < indexByte.Length; i++) uint[] indexUseCountList = new uint[indexlist.Count]; for (int i = 0; i < indexByte.Length; i++) { indexByte[i] = (byte)indexlist[i]; } for (int i = 0; i < indexUseCountList.Length; i++) { indexUseCountList[i] = (uint)IndexUseCountList[i]; } dogzStren.IndexUseCountList = indexUseCountList; dogzStren.IndexList = indexByte; dogzStren.IsDouble = (byte)isDouble; GameNetSystem.Instance.SendInfo(dogzStren); System/FriendSystem/MailAllModel.cs
@@ -89,6 +89,8 @@ private Dictionary<string, MailInfo> mailModelDict = new Dictionary<string,MailInfo>(); private List<MailInfo> timeOrderMailInfo = new List<MailInfo>(); private Regex smatch = new Regex(@"<MailTemplate>([^>.\n]*)</MailTemplate>([^>.\n]*)", RegexOptions.Singleline); private Regex smatchSystem = new Regex(@"[\\]*\/[\\]*", RegexOptions.Singleline); public string mailTitleStr = ""; public string mailContentstr = ""; public string mailSendPersonStr = ""; @@ -345,6 +347,7 @@ public void GetReciveMailContent(MailInfo info) { Debug.Log(info.Text); info.Text = smatchSystem.Replace(info.Text, "/"); if (smatch.IsMatch(info.Text)) { Match match = smatch.Match(info.Text); @@ -422,7 +425,7 @@ if(mailContentArray.Length > 2) { string mailDes = Regex.Replace(mailContentArray[2], @"<[\\]+/r>", "</r>"); string mailDes = mailContentArray[2]; mailContentstr = mailDes; } } System/Login/LoginModel.cs
@@ -286,6 +286,8 @@ else if (SDKUtility.Instance.ChannelPlatform == SDKUtility.E_ChannelPlatform.Sp) { send.IDType = 3; send.ExtraLen = (byte)SDKUtility.Instance.FreePlatformInfo.sessionID.Length; send.Extra = SDKUtility.Instance.FreePlatformInfo.sessionID; } send.AccID = sdkLoginResult.account; send.Password = sdkLoginResult.token; @@ -295,6 +297,10 @@ send.AppID = VersionConfig.Get().appId; send.AccountID = (uint)sdkLoginResult.accountID;// 内部登陆的时候的id send.TokenExpire = sdkLoginResult.tokenExpire;// 内部登陆的时长,无所谓的 if (SDKUtility.Instance.ChannelPlatform == SDKUtility.E_ChannelPlatform.Sp) { send.TokenExpire = SDKUtility.Instance.FreePlatformInfo.timeStamp; } send.Phone = (byte)sdkLoginResult.phone; send.ServerID = (uint)ServerListCenter.Instance.currentServer.region_flag; if (sdkIDCheckIDAuthentication.type == "1") System/MainInterfacePanel/SkillTaskWin.cs
@@ -78,7 +78,7 @@ if (mainModel.TaskId_Skill.Contains(mainModel.TaskSkillID)) { int Index = mainModel.TaskId_Skill.IndexOf(mainModel.TaskSkillID); mainModel.Skill_Index = mainModel.SkillIndex[Index]; mainModel.Skill_Index = mainModel.SkillIndex[Index] + 1; } WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2); } System/MainInterfacePanel/TaskAllocation.cs
@@ -133,6 +133,10 @@ if (Gold >= NeedMoney) { taskmodel.CompletionOfTask(TaskID); if (WindowCenter.Instance.CheckOpen<SkillPanel>()) { return; } WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2); } else System/MainInterfacePanel/TipPanel.cs
@@ -91,7 +91,8 @@ { firstTimeRechargeModel.OpenFirstChargeTrialWin(); } else if(!WindowCenter.Instance.CheckOpen<PetAndMountPushWin>()) //灵宠坐骑推送 else if(!WindowCenter.Instance.CheckOpen<PetAndMountPushWin>() && !WindowCenter.Instance.CheckOpen<OffLineOnHookWin>()) //灵宠坐骑推送 { storeModel.SetPushPetAndMountWinState(); } System/Skill/SkillModel.cs
@@ -49,7 +49,6 @@ public bool jumpToPass { get; set; } public int minTaskHole { get; private set; } public int maxTaskHole { get; private set; } public int immediatelyUnlockTask { get; private set; } void ParseConfig() { for (int i = 1; i <= 3; i++) @@ -86,8 +85,6 @@ passEquipCnt = int.Parse(funcCfg.Numerical2); taskHoleDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical4); } funcCfg = Config.Instance.Get<FuncConfigConfig>("PassiveSkillTask"); immediatelyUnlockTask = 0;//int.Parse(funcCfg.Numerical2); funcCfg = Config.Instance.Get<FuncConfigConfig>("PassSkillEquipGetWay"); if (funcCfg != null) { @@ -366,7 +363,7 @@ } PlayerTaskDatas task { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } } PlayerMainDate mainData { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } } public void SendEquipPassSkill(int _page, int _index, int _skillId) { var pak = new CB407_tagCMPassiveSet(); @@ -662,7 +659,7 @@ foreach (var hole in taskHoleDict.Keys) { var taskId = taskHoleDict[hole]; if (taskId == immediatelyUnlockTask) if (IsImmediatelyUnlock(hole)) { var config = Config.Instance.Get<PyTaskConfig>(taskId); if (PlayerDatas.Instance.baseData.LV >= config.lv @@ -675,6 +672,16 @@ } } public bool IsImmediatelyUnlock(int hole) { if (taskHoleDict.ContainsKey(hole)) { var taskId = taskHoleDict[hole]; return mainData.TaskId_Skill.Contains(taskId); } return false; } public void SetTaskHoleRemind() { DayRemind.Instance.SetDayRemind(DayRemind.TASK_SKILL_HOLE, true); System/Skill/SkillPassWin.cs
@@ -39,6 +39,7 @@ [SerializeField, Header("特效时长")] float m_EffectDuration = 1f; private List<SkillConfig> skillListPass = new List<SkillConfig>(); private int presentSltEquipIndex = -1; Coroutine cacheCoroutine = null; SkillModel m_Model; SkillModel model @@ -143,7 +144,15 @@ base.OnActived(); UpdatePageBtn(); if (model.taskHoleRedpoint.state == RedPointState.Simple) if (taskMain.Skill_Index != 0) { var hole = taskMain.Skill_Index - 1; if (!model.IsPassSkillHoleOpen(hole)) { OnClickEquipHole(hole, false); } } else if (model.taskHoleRedpoint.state == RedPointState.Simple) { model.SetTaskHoleRemind(); for (int i = 0; i < equipPassSkills.Count; i++) @@ -151,8 +160,7 @@ PassSkillLimit limit; if (model.TryGetPassSkillLimit(i, out limit)) { if (limit.OpenSkillSlots > 0 && model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask) if (limit.OpenSkillSlots > 0 && model.IsImmediatelyUnlock(i)) { OnClickEquipHole(i, false); return; @@ -178,6 +186,7 @@ model.taskUnlockUpdate -= TaskUnlockUpdate; model.SetDayRemind(); model.UnlockPassHole = 0; taskMain.Skill_Index = 0; } protected override void OnAfterClose() @@ -290,7 +299,7 @@ var taskId = model.taskHoleDict[_limit.OpenSkillSlots]; var config = Config.Instance.Get<PyTaskConfig>(taskId); if (PlayerDatas.Instance.baseData.LV >= config.lv && taskId == model.immediatelyUnlockTask) && model.IsImmediatelyUnlock(_index)) { return 2; } @@ -462,7 +471,7 @@ UIHelper.ReplaceNewLine(Language.Get(StringUtility.Contact("PassSkillHoleLimitTask_", limit.OpenSkillSlots))); continue; } else if (model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask else if (model.IsImmediatelyUnlock(i) && model.IsTaskHoleUnlock(limit.OpenSkillSlots)) { if (m_ImmediatelyUnlock.gameObject.activeSelf) @@ -589,7 +598,7 @@ m_GetWayBtn.gameObject.SetActive(false); return; } if (taskId == model.immediatelyUnlockTask) if (model.IsImmediatelyUnlock(index)) { m_ImmediatelyUnlock.gameObject.SetActive(true); } @@ -627,35 +636,11 @@ void ImmediatelyUnlock() { //var count = pack.GetItemCountByID(PackType.rptItem, taskMain.ItemID); //if (count >= taskMain.ItemNumber) //{ // task.CompletionOfTask(model.immediatelyUnlockTask); //} //else //{ // var requireJade = (ulong)((taskMain.ItemNumber - count) * taskMain.UnitPrice); // ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("PassiveSkillTask3", requireJade), // (bool isOk) => // { // if (isOk) // { // if (UIHelper.GetMoneyCnt(1) >= requireJade) // { // task.CompletionOfTask(model.immediatelyUnlockTask); // } // else // { // if (VersionConfig.Get().isBanShu) // { // SysNotifyMgr.Instance.ShowTip("GoldErr"); // return; // } // WindowCenter.Instance.Open<RechargeTipWin>(); // } // } // }); //} if (model.taskHoleDict.ContainsKey(presentSltEquipIndex)) { var taskId = model.taskHoleDict[presentSltEquipIndex]; TaskAllocation.Instance.SkillTask(taskId); } } private void OnClickFunc(CellView cell) @@ -674,17 +659,17 @@ { return; } equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true); if (equipPassSkills[_index].skillData.skillId != 0) { equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true); model.presentSltSkillID = equipPassSkills[_index].skillData.skillId; flipScroll.RefreshActive(); OnUpdateSltSkillInfo(); } else { equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false); } //else //{ // equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false); //} } private int GetEquipHoleIndex(int _skillId) System/Store/StoreModel.cs
@@ -69,6 +69,7 @@ NewBieCenter.Instance.guideBeginEvent -= GuidBegin; shopItemlimitDict.Clear(); petAndMountPushlist.Clear(); ClearPushData(); tagTowerModel = null; storeFuncType = StoreFunc.WeekStore; tcbRefreshDict.Clear(); @@ -1118,7 +1119,11 @@ private void GuidBegin() { SetPushPetAndMountWinState(true,true); PetAndMountPushWin pushWin = WindowCenter.Instance.Get<PetAndMountPushWin>(); if(pushWin != null) { SetPushPetAndMountWinState(true, true); } } private void OnMoveTopPart(bool isMove) System/Strengthening/GodBeastAttributes.cs
@@ -35,6 +35,10 @@ [SerializeField] UIAlphaTween m_UIAlphaTween; [SerializeField] Slider m_Slider; [SerializeField] GameObject m_Text_two;//下级属性 [SerializeField] Button m_StrengthenDoubleBtn;//双倍强化按钮 [SerializeField] Text m_NeedFairy;//所需的仙玉 DogzModel Dogz_model; DogzModel dogz_model { get { return Dogz_model ?? (Dogz_model = ModelCenter.Instance.GetModel<DogzModel>()); } } private Dictionary<int, int> QualityLimit = new Dictionary<int, int>(); @@ -57,6 +61,7 @@ { m_DoubleToggle.onValueChanged.AddListener(OnClickToggle); m_StrengthenBtn.AddListener(OnClickStrengthBtn); m_StrengthenDoubleBtn.AddListener(OnClickStrengthBtn); } private void OnEnable() { @@ -94,25 +99,28 @@ private void OnClickStrengthBtn() { Dictionary<int, int> DicAb = godBeastModel.Absorption_Dic; List<int> List = new List<int>(); List<int> ListIndex = new List<int>(); List<int> ListCount = new List<int>(); foreach (var key in DicAb.Keys) { List.Add(key); ListIndex.Add(key); ListCount.Add(DicAb[key]); } if (m_DoubleToggle.isOn) { dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, List,1); { dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, ListIndex, ListCount, 1); } else { dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, List, 0); dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, ListIndex, ListCount, 0); } } private void ChooseToModify(int locationMarker) { GetGodBeastLocationMarker(locationMarker); } private void AbsorbEvent()//选中取消的数据刷新 private void AbsorbEvent()//选中与取消的数据刷新 { GetDogZLevelAndExp(); AttributeAssignment(); @@ -155,6 +163,11 @@ m_ExpSlider.ResetStage(); m_ExpSlider.value = 0; m_ExpNum.text = "0/0"; m_TextAttributes1.gameObject.SetActive(false); m_TextAttributes2.gameObject.SetActive(false); m_TextAttributesAdd1.gameObject.SetActive(false); m_TextAttributesAdd2.gameObject.SetActive(false); m_Text_two.SetActive(false); m_FrameNull.SetActive(false); m_FullLevel.SetActive(false); } @@ -174,36 +187,59 @@ var DogzEquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, lv); if (DogZLv >= lv) { m_Text_two.SetActive(false); m_FrameNull.SetActive(false); m_TextAttributes1.gameObject.SetActive(false); m_TextAttributes2.gameObject.SetActive(false); m_TextAttributesAdd1.gameObject.SetActive(false); m_TextAttributesAdd2.gameObject.SetActive(false); m_FullLevel.SetActive(true); GodBeast_Number = GodBeastNumber; GodBeast_Part = GodBeastPart; m_ExpSlider.stage = lv; m_ExpSlider.delay = 0f; m_ExpSlider.ResetStage(); m_ExpSlider.value = 1; m_Slider.gameObject.SetActive(false); m_ExpNum.text = DogzEquipConfig.upExpTotal + "/" + DogzEquipConfig.upExpTotal; int NeedExp = DogzEquipConfig.upExpTotal; if (DogZLv > 0) { var Dogz_EquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, DogZLv - 1); NeedExp -= Dogz_EquipConfig.upExpTotal; } m_ExpNum.text = DogZExp + "/" + NeedExp; } else { m_Text_two.SetActive(true); if (m_DoubleToggle.isOn) { m_StrengthenBtn.gameObject.SetActive(false); m_StrengthenDoubleBtn.gameObject.SetActive(true); m_NeedFairy.text = NeedFairyJade.ToString(); PropertySetting(DogZExp, DoubleProficiency); } else { m_StrengthenBtn.gameObject.SetActive(true); m_StrengthenDoubleBtn.gameObject.SetActive(false); PropertySetting(DogZExp, SingleProficiency); } } } else { if (m_DoubleToggle.isOn) { m_StrengthenBtn.gameObject.SetActive(false); m_StrengthenDoubleBtn.gameObject.SetActive(true); m_NeedFairy.text = NeedFairyJade.ToString(); PropertySetting(0, DoubleProficiency); } else { m_StrengthenBtn.gameObject.SetActive(true); m_StrengthenDoubleBtn.gameObject.SetActive(false); PropertySetting(0, SingleProficiency); } } @@ -254,6 +290,12 @@ m_LvNextText.text = "+" + toLv.ToString(); } var DogzEquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, DogZLv); int NeedExp = DogzEquipConfig.upExpTotal; if (DogZLv > 0) { var Dogz_EquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, DogZLv - 1); NeedExp -= Dogz_EquipConfig.upExpTotal; } int[] AttType = ConfigParse.GetMultipleStr<int>(DogzEquipConfig.attType); int[] AttValue = ConfigParse.GetMultipleStr<int>(DogzEquipConfig.attValue); if (ToExpTotal == 0) @@ -261,8 +303,9 @@ m_Slider.gameObject.SetActive(false); m_TextAttributesAdd1.gameObject.SetActive(false); m_TextAttributesAdd2.gameObject.SetActive(false); m_ExpNum.text = DogZExp + "/" + DogzEquipConfig.upExpTotal; float value = (float)DogZExp / DogzEquipConfig.upExpTotal; m_ExpNum.text = DogZExp + "/" + NeedExp; float value = (float)DogZExp / NeedExp; SetExperienceBar(DogZLv, value); if (AttType.Length > 1) { @@ -283,54 +326,30 @@ else { m_Slider.gameObject.SetActive(true); if (DogZExp + ToExpTotal >= DogzEquipConfig.upExpTotal) if (DogZExp + ToExpTotal >= NeedExp) { m_Slider.value = 1f; } else { m_Slider.value = (float)(DogZExp + ToExpTotal) / (float)(DogzEquipConfig.upExpTotal); m_Slider.value = (float)(DogZExp + ToExpTotal) / (float)(NeedExp); } m_UIAlphaTween.Play(); var DogzEquipToConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, toLv); int[] AttTypeTo = ConfigParse.GetMultipleStr<int>(DogzEquipToConfig.attType); int[] AttValueTo = ConfigParse.GetMultipleStr<int>(DogzEquipToConfig.attValue); string strColor = string.Format(Language.Get("DogzGreenText"), ToExpTotal); m_ExpNum.text = DogZExp + strColor + "/" + DogzEquipConfig.upExpTotal; float value= (float)DogZExp / DogzEquipConfig.upExpTotal; m_ExpNum.text = DogZExp + strColor + "/" + NeedExp; float value = (float)DogZExp / NeedExp; SetExperienceBar(DogZLv, value); if (AttType.Length > 1) { m_TextAttributes1.gameObject.SetActive(true); m_TextAttributes2.gameObject.SetActive(true); m_TextAttributesAdd1.gameObject.SetActive(true); m_TextAttributesAdd2.gameObject.SetActive(true); string StrName1 = Config.Instance.Get<PlayerPropertyConfig>(AttType[0]).Name; string StrName2 = Config.Instance.Get<PlayerPropertyConfig>(AttType[1]).Name; m_TextAttributes1.text = StrName1 + ":" + AttValue[0]; m_TextAttributes2.text = StrName2 + ":" + AttValue[1]; m_TextAttributesAdd1.text = "+" + (AttValueTo[0] - AttValue[0]); m_TextAttributesAdd2.text = "+" + (AttValueTo[1] - AttValue[1]); } else { m_TextAttributes1.gameObject.SetActive(true); m_TextAttributesAdd1.gameObject.SetActive(true); m_TextAttributes2.gameObject.SetActive(false); m_TextAttributesAdd2.gameObject.SetActive(false); string StrName1 = Config.Instance.Get<PlayerPropertyConfig>(AttType[0]).Name; m_TextAttributes1.text = StrName1 + ":" + AttValue[0]; m_TextAttributesAdd1.text = "+" + (AttValueTo[0] - AttValue[0]); } } SetAddAttributes(DogzEquipConfig, GodBeastPart, toLv);//设置预览的属性 if (ToExpTotal == 0) { m_StrengthenBtn.interactable = false; m_StrengthenDoubleBtn.interactable = false; } else { m_StrengthenBtn.interactable = true; m_StrengthenDoubleBtn.interactable = true; } } @@ -342,6 +361,11 @@ return DogzLv; } int lv = QualityLimit[m_DogZItemModel.chinItemModel.ItemColor]; var IudetDogzEquipPlus = m_DogZItemModel.GetUseDataModel((int)ItemUseDataKey.Def_IudetDogzEquipPlus); if (IudetDogzEquipPlus != null) { ToExpTotal+= IudetDogzEquipPlus[1]; } for (int i = lv; i >= 0; i--) { var DogzEquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, i); @@ -384,14 +408,23 @@ if (IudetDogzEquipPlus != null) { DogZLv = IudetDogzEquipPlus[0]; DogZExp = IudetDogzEquipPlus[1]; if (DogZLv > 0) { var Dogz_EquipConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, DogZLv - 1); DogZExp = IudetDogzEquipPlus[1] - Dogz_EquipConfig.upExpTotal; } else { DogZExp = IudetDogzEquipPlus[1]; } } } int GodBeast_Number = 0; int GodBeast_Part = 0; private void SetExperienceBar(int lv,float value)//设置经验条 private void SetExperienceBar(int lv, float value)//设置经验条 { if (GodBeast_Number != GodBeastNumber || GodBeast_Part != GodBeastPart) { @@ -409,6 +442,39 @@ m_ExpSlider.value = value; } } private void SetAddAttributes(DogzEquipPlusConfig DogzEquipConfig, int GodBeastPart, int toLv)//设置预览的属性 { int[] AttType = ConfigParse.GetMultipleStr<int>(DogzEquipConfig.attType); int[] AttValue = ConfigParse.GetMultipleStr<int>(DogzEquipConfig.attValue); var DogzEquipToConfig = DogzEquipPlusConfig.GetEquipplaceAndLevel(GodBeastPart, toLv); int[] AttTypeTo = ConfigParse.GetMultipleStr<int>(DogzEquipToConfig.attType); int[] AttValueTo = ConfigParse.GetMultipleStr<int>(DogzEquipToConfig.attValue); if (AttType.Length > 1) { m_TextAttributes1.gameObject.SetActive(true); m_TextAttributes2.gameObject.SetActive(true); m_TextAttributesAdd1.gameObject.SetActive(true); m_TextAttributesAdd2.gameObject.SetActive(true); string StrName1 = Config.Instance.Get<PlayerPropertyConfig>(AttType[0]).Name; string StrName2 = Config.Instance.Get<PlayerPropertyConfig>(AttType[1]).Name; m_TextAttributes1.text = StrName1 + ":" + AttValue[0]; m_TextAttributes2.text = StrName2 + ":" + AttValue[1]; m_TextAttributesAdd1.text = "+" + (AttValueTo[0] - AttValue[0]); m_TextAttributesAdd2.text = "+" + (AttValueTo[1] - AttValue[1]); } else { m_TextAttributes1.gameObject.SetActive(true); m_TextAttributesAdd1.gameObject.SetActive(true); m_TextAttributes2.gameObject.SetActive(false); m_TextAttributesAdd2.gameObject.SetActive(false); string StrName1 = Config.Instance.Get<PlayerPropertyConfig>(AttType[0]).Name; m_TextAttributes1.text = StrName1 + ":" + AttValue[0]; m_TextAttributesAdd1.text = "+" + (AttValueTo[0] - AttValue[0]); } } } } System/Strengthening/GodBeastEntry.cs
@@ -44,11 +44,13 @@ m_Item_Text.color = UIHelper.GetUIColor(itemConfig.ItemColor); if (IudetDogzEquipPlus != null && IudetDogzEquipPlus[0] > 0) { m_Item_Text.text = itemConfig.ItemName+" +"+ IudetDogzEquipPlus[0]; string str= itemConfig.ItemName + " +" + IudetDogzEquipPlus[0]; m_Item_Text.text = UIHelper.GetTextColorByItemColor(itemConfig.ItemColor, str, true); } else { m_Item_Text.text = itemConfig.ItemName; string str = itemConfig.ItemName; m_Item_Text.text = UIHelper.GetTextColorByItemColor(itemConfig.ItemColor, str, true); } if (locationMarker == currentlySelected) { System/Strengthening/GodBeastModel.cs
@@ -17,6 +17,7 @@ public event Action AbsorbEvent; public int ItemInde = 0;//物品下标 public ItemModel Crystal_ItemModel; public int ItemPlace =-1;//神兽装备位置信息 DogzModel Dogz_model; DogzModel dogz_model { get { return Dogz_model ?? (Dogz_model = ModelCenter.Instance.GetModel<DogzModel>()); } } PlayerPackModel _playerPack; System/Strengthening/GodBeastReinforcementWin.cs
@@ -21,6 +21,7 @@ public int GodBeastStar;//神兽星级 public int LocationMarker;//位置标记 public int EquipScore;//装备评分 public int ItemPlace;//背包装备位置 } public class GodBeastReinforcementWin : Window { @@ -32,6 +33,8 @@ DogzModel dogz_model { get { return Dogz_model ?? (Dogz_model = ModelCenter.Instance.GetModel<DogzModel>()); } } PlayerPackModel _playerPack; PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } } GodBeastModel GodBeastModel; GodBeastModel godBeastModel { get { return GodBeastModel ?? (GodBeastModel = ModelCenter.Instance.GetModel<GodBeastModel>()); } } public static event Action<int> ChooseToModify; private List<GodBeastClass> GodBeastList = new List<GodBeastClass>(); private int CurrentlySelected = 0; @@ -49,13 +52,33 @@ { CurrentlySelected = 0; GetGodBeast();//获取神兽强化装备信息 if (GodBeastList.Count > 0) if (godBeastModel.ItemPlace != -1) { CurrentlySelected = GodBeastList[0].LocationMarker; m_ScrollerController.JumpIndex(0); for (int i = 0; i < GodBeastList.Count; i++) { if (GodBeastList[i].ItemPlace == godBeastModel.ItemPlace) { CurrentlySelected = GodBeastList[i].LocationMarker; int Index = 0; Index = GodBeastList.FindIndex((x) => { return x.ItemPlace == godBeastModel.ItemPlace; }); m_ScrollerController.JumpIndex(Index); } } } else { if (GodBeastList.Count > 0) { CurrentlySelected = GodBeastList[0].LocationMarker; m_ScrollerController.JumpIndex(0); } } m_ScrollerController.OnRefreshCell += OnRefreshGridCell; OnCreateGridLineCell(m_ScrollerController); OnCreateGridLineCell(m_ScrollerController); m_GodBeastSlidingList.Init(); m_GodBeastAttributes.Init(); m_GodBeastAttributes.GetGodBeastLocationMarker(CurrentlySelected); @@ -63,20 +86,32 @@ protected override void OnAfterOpen() { playerPack.RefreshItemCountAct += RefreshItemCountAct; playerPack.RefreshItemCountAct += RefreshItemCountAct; DTCA814_tagMCMakeItemAnswer.MakeItemAnswerEvent += MakeItemAnswerEvent; } protected override void OnPreClose() { godBeastModel.ItemPlace = -1; playerPack.RefreshItemCountAct -= RefreshItemCountAct; m_ScrollerController.OnRefreshCell -= OnRefreshGridCell; m_ScrollerController.OnRefreshCell -= OnRefreshGridCell; DTCA814_tagMCMakeItemAnswer.MakeItemAnswerEvent -= MakeItemAnswerEvent; } private void MakeItemAnswerEvent(HA814_tagMCMakeItemAnswer obj) { if ((int)obj.MakeType == (int)MakeType.Def_mitDogzEquipPlus) { } } private void RefreshItemCountAct(PackType arg1, int arg2, int arg3) { if (arg1 == PackType.rptDogzEquip) { OnCreateGridLineCell(m_ScrollerController); //OnCreateGridLineCell(m_ScrollerController); m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见 m_GodBeastSlidingList.Init(); m_GodBeastAttributes.Init(); m_GodBeastAttributes.GetGodBeastLocationMarker(CurrentlySelected); @@ -96,7 +131,7 @@ { if (DogzEquipDict[key] == 1) { List<ItemModel> itemModel = dogz_model.GetDogzEquips(key); for (int i = 0; i < itemModel.Count; i++) { @@ -106,6 +141,7 @@ godBeastClass.GodBeastQuality = itemModel[i].chinItemModel.ItemColor; godBeastClass.GodBeastStar = itemModel[i].chinItemModel.StarLevel; godBeastClass.EquipScore = itemModel[i].equipScore; godBeastClass.ItemPlace = itemModel[i].itemInfo.ItemPlace; var IudetDogzEquipPlus = itemModel[i].GetUseDataModel((int)ItemUseDataKey.Def_IudetDogzEquipPlus);// 神兽装备强化信息列表 [强化等级, 强化熟练度] if (IudetDogzEquipPlus == null) { @@ -116,8 +152,8 @@ { godBeastClass.GodBeastLv = IudetDogzEquipPlus[0]; godBeastClass.GodBeasProficiency = IudetDogzEquipPlus[1]; } godBeastClass.LocationMarker=itemModel[i].EquipPlace*100+key; } godBeastClass.LocationMarker = itemModel[i].EquipPlace * 100 + key; GodBeastList.Add(godBeastClass); } } @@ -177,7 +213,7 @@ int locationMarker = cell.index; godBeastEntry.GetGodBeastLocationMarker(locationMarker, CurrentlySelected); godBeastEntry.GodBeastButton.RemoveAllListeners(); godBeastEntry.GodBeastButton.AddListener(()=> godBeastEntry.GodBeastButton.AddListener(() => { if (locationMarker != CurrentlySelected) { @@ -187,7 +223,7 @@ { ChooseToModify(CurrentlySelected); } } } }); } } System/Strengthening/WashTips.cs
@@ -490,7 +490,15 @@ { if (equipWashModel.IsWashFull(_itemModel, _washProModel, _tagWashModel)) { _washFullLvText.text = Language.Get("EquipWash113", _itemModel.chinItemModel.LV, equipWashModel.GetWashFullLv(_itemModel.chinItemModel.LV)); if(_washProModel.XLAttrLV >= equipWashModel.GetMaxWashLv() && _washProModel.XLAttrLV <= equipWashModel.GetWashFullLv(_itemModel.chinItemModel.LV)) { _washFullLvText.text = Language.Get("WashLevelFulled"); } else { _washFullLvText.text = Language.Get("EquipWash113", _itemModel.chinItemModel.LV, equipWashModel.GetWashFullLv(_itemModel.chinItemModel.LV)); } ObjHideOrShow(false, false, false, false, true); } else @@ -532,6 +540,8 @@ ObjHideOrShow(false, false, false, false, true); } } else { System/Treasure/TreasureModel.cs
@@ -17,7 +17,6 @@ public const int TREASURE_DATAMAPID = 41110; public const int TREASURE_MAPID = 41110; public const int TREASURE_GUIDE_ID = 102; public const int TREASURE_SOUL_ID = 115; const int TREASURE_REDPOINTID = 7000; readonly static int[] CATEGORY_REDPOINTIDS = { 7001, 7002, 7003, 7004, 7005 }; @@ -33,7 +32,6 @@ Redpoint zergRedpoint = new Redpoint(TREASURE_REDPOINTID, CATEGORY_REDPOINTIDS[(int)TreasureCategory.Zerg - 1]); public Redpoint stoveRedpoint = new Redpoint(CATEGORY_REDPOINTIDS[(int)TreasureCategory.Fairy - 1], 7200); public Redpoint treasureSoulRedpoint = new Redpoint(1, TREASURE_SOUL_ID); public event Action<int> treasureCollectProgressUpdateEvent; public event Action<int> treasureSelectedEvent; System/Treasure/TreasureSoulModel.cs
@@ -8,6 +8,10 @@ { public class TreasureSoulModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk { public const int TREASURE_SOUL_ID = 115; Redpoint treasureSoulRedpoint = new Redpoint(1, TREASURE_SOUL_ID); Redpoint treasureSoulNewGotRedpoint = new Redpoint(TREASURE_SOUL_ID, 115100); Dictionary<int, TreasureSpecialData> treasureSoulDict = new Dictionary<int, TreasureSpecialData>(); List<int> treasureSouls = new List<int>(); public Dictionary<int, int> signAddProperty = new Dictionary<int, int>(); @@ -32,6 +36,8 @@ public int gotoSoul { get; set; } public int newGotSoul { get; set; } public bool serverInited { get; private set; } PlayerPackModel packModel { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } @@ -41,6 +47,7 @@ { packModel.RefreshItemCountAct += RefreshItemCountAct; PlayerStrengthengDatas.RefreshEquipUpgradLvAct += RefreshEquipSTRLv; FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; ParseConfig(); } @@ -54,6 +61,7 @@ special.itemGet = false; special.active = false; } treasureSoulNewGotRedpoint.state = RedPointState.None; } public void OnPlayerLoginOk() @@ -66,6 +74,7 @@ { packModel.RefreshItemCountAct -= RefreshItemCountAct; PlayerStrengthengDatas.RefreshEquipUpgradLvAct -= RefreshEquipSTRLv; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; } void ParseConfig() @@ -88,6 +97,11 @@ { signAddProperty.Add(int.Parse(_key), int.Parse(jsonData[_key].ToString())); } } public void SetViewTreasureNewGot() { treasureSoulNewGotRedpoint.state = RedPointState.None; } public List<int> GetTreasureSouls() @@ -152,6 +166,14 @@ } } private void OnFuncStateChangeEvent(int func) { if (func == 126) { UpdateRedpoints(); } } public void UpdateTreasurePrivilege(HA353_tagMCMWPrivilegeDataInfo package) { for (int i = 0; i < package.Count; i++) @@ -164,12 +186,12 @@ } bool beforeActived = special.active; special.active = _data.State == 1; //if (!beforeActived && special.active && serverInited && WindowCenter.Instance.CheckOpen<TreasureSoulWin>() // && !WindowCenter.Instance.CheckOpen<TreasureSoulActiveWin>() && !NewBieCenter.Instance.inGuiding) //{ // TreasureSoulActiveWin.treasureSoulId = (int)_data.PriID; // WindowCenter.Instance.Open<TreasureSoulActiveWin>(); //} if (!beforeActived && special.active && serverInited && !WindowCenter.Instance.CheckOpen<TreasureSoulWin>()) { treasureSoulNewGotRedpoint.state = RedPointState.Simple; newGotSoul = (int)_data.PriID; } if ((TreasurePrivilege)_data.PriID == TreasurePrivilege.StrengthenAdd) { if (treasureSoulEvent != null) @@ -363,7 +385,7 @@ totalProgress = configs[configs.Count - 1].countNeed; } redpoint = new Redpoint(TreasureModel.TREASURE_SOUL_ID, TreasureModel.TREASURE_SOUL_ID * 100 + (int)type); redpoint = new Redpoint(TreasureSoulModel.TREASURE_SOUL_ID, TreasureSoulModel.TREASURE_SOUL_ID * 100 + (int)type); switch (_type) { case TreasurePrivilege.DemonJarAtk: System/Treasure/TreasureSoulWin.cs
@@ -83,6 +83,7 @@ model.treasureSoulEvent += TreasureSoulEvent; m_TreasureSoulBtn.state = TitleBtnState.Click; Display(); model.SetViewTreasureNewGot(); } protected override void OnActived() @@ -113,6 +114,7 @@ m_TreasureSouls[i].Dispose(); } m_SelectSoul = model.selectSoul; model.newGotSoul = 0; } protected override void OnAfterClose() @@ -178,6 +180,11 @@ { _select = sortSouls[i]; } } if (model.newGotSoul != 0 && sortSouls.Contains(model.newGotSoul)) { _select = model.newGotSoul; model.newGotSoul = 0; } _select = _select == 0 ? sortSouls[0] : _select; return _select; @@ -423,11 +430,11 @@ int Compare(int x, int y) { TreasureSpecialData special_x; TreasureSpecialData special_y; if (model.TryGetTreasureSoul(x, out special_x) && model.TryGetTreasureSoul(y, out special_y)) var leftConfig = Config.Instance.Get<TreasurePrivilegeConfig>(x); var rightConfig = Config.Instance.Get<TreasurePrivilegeConfig>(y); if (leftConfig != null && rightConfig != null) { return special_x.treasureId.CompareTo(special_y.treasureId); return leftConfig.sort.CompareTo(rightConfig.sort); } return x.CompareTo(y); } Utility/EnumHelper.cs
@@ -787,6 +787,7 @@ Def_mitRefine = 18, // 炼丹 Def_mitMWUpLevel = 19, //法宝进阶 Def_DanRecycle = 20, //丹药回收 Def_mitDogzEquipPlus=21,// 神兽装备强化 } /// <summary> /// 金钱类型(虚拟物品) Utility/UIHelper.cs
@@ -359,7 +359,7 @@ public static readonly Color32 s_BrightBlueColor = new Color32(0, 107, 227, 255); public static readonly Color32 s_BrightOrangeColor = new Color32(255, 103, 1, 255); //FF6701FF public static readonly Color32 s_BrightWhiteColor = new Color32(104, 104, 104, 255); //686868 public static readonly Color32 s_BrightGreenColor = new Color32(16, 157, 6, 255); public static readonly Color32 s_BrightGreenColor = new Color32(16, 157, 6, 255); //109d06 public static readonly Color32 s_DarkPinkColor = new Color32(255, 124, 124, 255); public static readonly Color32 s_DarkRedColor = new Color32(250, 1, 1, 255);