10407 【越南】【英语】【BT】【GM】【砍树】周末BUG汇总(模块战力支持超20亿;开服活动榜同步修改支持超20亿;)
| | |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | |
| | | //A3 A1 各功能模块战斗力信息 #tagMCModuleFightPowerInfo |
| | | |
| | | public class HA3A1_tagMCModuleFightPowerInfo : GameNetPackBasic { |
| | | public uint TotalFightPower; //总战斗力,求余亿部分 |
| | | public uint TotalFightPoweEx; //总战斗力,整除亿部分,1代表1亿 |
| | | public byte MFPCnt; //模块战斗力总数 |
| | | public tagMCModuleFightPower[] MFPList; |
| | | |
| | | public HA3A1_tagMCModuleFightPowerInfo () { |
| | | _cmd = (ushort)0xA3A1; |
| | | } |
| | | |
| | | public override void ReadFromBytes (byte[] vBytes) { |
| | | TransBytes (out TotalFightPower, vBytes, NetDataType.DWORD); |
| | | TransBytes (out TotalFightPoweEx, vBytes, NetDataType.DWORD); |
| | | TransBytes (out MFPCnt, vBytes, NetDataType.BYTE); |
| | | MFPList = new tagMCModuleFightPower[MFPCnt]; |
| | | for (int i = 0; i < MFPCnt; i ++) { |
| | | MFPList[i] = new tagMCModuleFightPower(); |
| | | TransBytes (out MFPList[i].MfpType, vBytes, NetDataType.BYTE); |
| | | TransBytes (out MFPList[i].FightPower, vBytes, NetDataType.DWORD); |
| | | } |
| | | } |
| | | |
| | | public struct tagMCModuleFightPower { |
| | | public byte MfpType; //模块编号类型 |
| | | public uint FightPower; //本模块战斗力 |
| | | } |
| | | |
| | | } |
| | | //A3 A1 各功能模块战斗力信息 #tagMCModuleFightPowerInfo
|
| | |
|
| | | public class HA3A1_tagMCModuleFightPowerInfo : GameNetPackBasic {
|
| | | public uint TotalFightPower; //总战斗力,求余亿部分
|
| | | public uint TotalFightPoweEx; //总战斗力,整除亿部分,1代表1亿
|
| | | public byte MFPCnt; //模块战斗力总数
|
| | | public tagMCModuleFightPower[] MFPList;
|
| | |
|
| | | public HA3A1_tagMCModuleFightPowerInfo () {
|
| | | _cmd = (ushort)0xA3A1;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out TotalFightPower, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out TotalFightPoweEx, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out MFPCnt, vBytes, NetDataType.BYTE);
|
| | | MFPList = new tagMCModuleFightPower[MFPCnt];
|
| | | for (int i = 0; i < MFPCnt; i ++) {
|
| | | MFPList[i] = new tagMCModuleFightPower();
|
| | | TransBytes (out MFPList[i].MfpType, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out MFPList[i].FightPower, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out MFPList[i].FightPowerEx, vBytes, NetDataType.DWORD);
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCModuleFightPower {
|
| | | public byte MfpType; //模块编号类型
|
| | | public uint FightPower; //本模块战斗力,求余亿部分
|
| | | public uint FightPowerEx; //本模块战斗力,整除亿部分,1代表1亿
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using UnityEngine; |
| | | using System.Collections; |
| | | |
| | | // AB 17 开服活动奖励状态 #tagMCOpenServerCampaignAwardList
|
| | |
|
| | | // AB 17 开服活动奖励状态 #tagMCOpenServerCampaignAwardList
|
| | |
|
| | | public class HAB17_tagMCOpenServerCampaignAwardList : GameNetPackBasic {
|
| | | public byte OSCAwardCnt; //奖励类型数
|
| | | public tagMCOpenServerCampaignAward[] OSCAwardList; // 奖励状态列表
|
| | |
|
| | | public HAB17_tagMCOpenServerCampaignAwardList () {
|
| | | _cmd = (ushort)0xAB17;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out OSCAwardCnt, vBytes, NetDataType.BYTE);
|
| | | OSCAwardList = new tagMCOpenServerCampaignAward[OSCAwardCnt];
|
| | | for (int i = 0; i < OSCAwardCnt; i ++) {
|
| | | OSCAwardList[i] = new tagMCOpenServerCampaignAward();
|
| | | TransBytes (out OSCAwardList[i].CampaignType, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out OSCAwardList[i].BillAwardRecord, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out OSCAwardList[i].TagAwardRecord, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out OSCAwardList[i].RecordData, vBytes, NetDataType.DWORD);
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCOpenServerCampaignAward {
|
| | | public byte CampaignType; //奖励类型
|
| | | public byte BillAwardRecord; //排行奖励是否已领取
|
| | | public uint TagAwardRecord; //目标奖励索引位领取记录:0-未领;1-已领
|
| | | public uint RecordData; //活动时的记录值
|
| | | }
|
| | |
|
| | | }
|
| | | public class HAB17_tagMCOpenServerCampaignAwardList : GameNetPackBasic {
|
| | | public byte OSCAwardCnt; //奖励类型数
|
| | | public tagMCOpenServerCampaignAward[] OSCAwardList; // 奖励状态列表
|
| | |
|
| | | public HAB17_tagMCOpenServerCampaignAwardList () {
|
| | | _cmd = (ushort)0xAB17;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out OSCAwardCnt, vBytes, NetDataType.BYTE);
|
| | | OSCAwardList = new tagMCOpenServerCampaignAward[OSCAwardCnt];
|
| | | for (int i = 0; i < OSCAwardCnt; i ++) {
|
| | | OSCAwardList[i] = new tagMCOpenServerCampaignAward();
|
| | | TransBytes (out OSCAwardList[i].CampaignType, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out OSCAwardList[i].BillAwardRecord, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out OSCAwardList[i].TagAwardRecord, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out OSCAwardList[i].RecordData, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out OSCAwardList[i].RecordDataEx, vBytes, NetDataType.DWORD);
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCOpenServerCampaignAward {
|
| | | public byte CampaignType; //奖励类型
|
| | | public byte BillAwardRecord; //排行奖励是否已领取
|
| | | public uint TagAwardRecord; //目标奖励索引位领取记录:0-未领;1-已领
|
| | | public uint RecordData; //活动时的记录值,求余亿部分,为了统一逻辑,其他非战力榜的也使用此规则
|
| | | public uint RecordDataEx; //活动时的记录值,整除亿部分,1代表1亿
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | var data = model.GetData(this.id); |
| | | var level = data.Level; |
| | | |
| | | this.txtLevel.text = Language.Get("PetHorseAwaking_1", Language.Get("Num_CHS_" + level)); |
| | | this.txtLevel.text = Language.Get("PetHorseAwaking_1", level); |
| | | } |
| | | |
| | | void DisplaySelect() |
| | |
| | | else |
| | | this.expSlider.value = progress; |
| | | } |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", Language.Get("Num_CHS_" + data.Level)); |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", data.Level); |
| | | this.cacheLevel = data.Level; |
| | | } |
| | | |
| | |
| | | this.img_icon.SetSprite(config.icon); |
| | | var isUnlock = level <= data.Level; |
| | | this.container_lock.SetActiveIL(!isUnlock); |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", Language.Get("Num_CHS_" + level)); |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", level); |
| | | this.DisplaySelect(); |
| | | model.AddEvent(2, DisplaySelect); |
| | | } |
| | |
| | | this.txt_exp.text = data.Exp + "/" + config.NeedExp; |
| | | this.expSlider.value = (float)data.Exp / config.NeedExp; |
| | | } |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", Language.Get("Num_CHS_" + data.Level)); |
| | | this.txt_level.text = Language.Get("PetHorseAwaking_3", data.Level); |
| | | } |
| | | |
| | | void DisplaySkins() |
| | |
| | | break; |
| | | case RankType.OpenServerRecharge: |
| | | m_Compare.text = (data.cmpValue / 100).ToString(); |
| | | break;
|
| | | case RankType.OpenServerMount: |
| | | m_Compare.text = (data.cmpValue2 + data.cmpValue * Constants.ExpPointValue).ToString(); |
| | | break; |
| | | default: |
| | | m_Compare.text = data.cmpValue.ToString(); |
| | |
| | | for (int i = 0; i < _package.OSCAwardCnt; i++)
|
| | | {
|
| | | var _sData = _package.OSCAwardList[i];
|
| | | var recordData = _sData.RecordData;
|
| | | var recordData = _sData.RecordDataEx * Constants.ExpPointValue + _sData.RecordData;
|
| | | switch (_sData.CampaignType)
|
| | | {
|
| | | case 9:
|
| | |
| | | type = _sData.CampaignType,
|
| | | billAwardGet = _sData.BillAwardRecord != 0,
|
| | | tagAwardGet = (int)_sData.TagAwardRecord,
|
| | | value = (int)recordData
|
| | | value = recordData
|
| | | };
|
| | | }
|
| | | if (OnAwardGetEvent != null)
|
| | |
| | | public int type;
|
| | | public bool billAwardGet;
|
| | | public int tagAwardGet;
|
| | | public int value;
|
| | | public ulong value;
|
| | |
|
| | | public bool IsTagGet(int _index)
|
| | | {
|
| | |
| | | var _cfg = GetTagAwardConfig(_type, i);
|
| | | if (!_playerData.IsTagGet(GetTagIndex(_type, _index)))
|
| | | {
|
| | | var _complete = _playerData.value >= _cfg.Condition;
|
| | | var _complete = _playerData.value >= (ulong)_cfg.Condition;
|
| | | if (_complete)
|
| | | {
|
| | | _displayIndex = i;
|
| | |
| | | var _cfg = GetTagAwardConfig(_type, i);
|
| | | if (!_playerData.IsTagGet(GetTagIndex(_type, _index)))
|
| | | {
|
| | | var _complete = _playerData.value >= (_cfg as OSCBillTagAwardConfig).Condition;
|
| | | var _complete = _playerData.value >= (ulong)(_cfg as OSCBillTagAwardConfig).Condition;
|
| | | if (_complete)
|
| | | {
|
| | | _redpoint.state = RedPointState.GetReward;
|
| | |
| | | m_TotalTargetValue.SetActive(!_hasData);
|
| | | if (_hasData && _playerData.value > 0)
|
| | | {
|
| | | var _realmConfig = RealmConfig.Get(_playerData.value);
|
| | | var _realmConfig = RealmConfig.Get((int)_playerData.value);
|
| | | m_TargetImg.SetSprite(_realmConfig == null ? string.Empty : _realmConfig.Img);
|
| | | m_TargetImg.SetNativeSize();
|
| | | }
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | var _complete = _playerData.value >= _billTagCfg.Condition;
|
| | | var _complete = _playerData.value >= (ulong)_billTagCfg.Condition;
|
| | | _cell.unCompleteImg.SetActive(!_complete);
|
| | | _cell.getBtn.SetActive(_complete);
|
| | | _cell.effect.SetActive(_complete);
|
| | |
| | | {
|
| | | _cell.nameText.text = data.name1;
|
| | | var billName = Language.Get(StringUtility.Contact("ImpactRankType_", model.presentSelectType));
|
| | | _cell.countText.text = billName.Substring(0, billName.Length / 2) + ":" + data.cmpValue.ToString();
|
| | | _cell.countText.text = billName.Substring(0, billName.Length / 2) + ":" + (data.cmpValue2 + data.cmpValue * Constants.ExpPointValue);
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | case RankType.Job1FightPower:
|
| | | case RankType.Job2FightPower:
|
| | | case RankType.Job3FightPower:
|
| | | case RankType.Mount:
|
| | | rankWhat.text = UIHelper.ReplaceLargeNum(data.cmpValue2 + data.cmpValue * Constants.ExpPointValue);
|
| | | realmLv = (int)data.value1;
|
| | | break;
|
| | |
| | | return;
|
| | | for (int i = 0; i < package.MFPList.Length; i++)
|
| | | {
|
| | | funcFightPowerDict[package.MFPList[i].MfpType] = package.MFPList[i].FightPower;
|
| | | funcFightPowerDict[package.MFPList[i].MfpType] = package.MFPList[i].FightPowerEx * Constants.ExpPointValue + package.MFPList[i].FightPower;
|
| | | }
|
| | | if (PowerUpdate != null)
|
| | | {
|