Exemplo n.º 1
0
        // Token: 0x06004CD4 RID: 19668 RVA: 0x001796A8 File Offset: 0x001778A8
        public void SaveReport(RealTimePVPBattleReport Report)
        {
            this.Reports.AddFirst(Report);
            RealTimePVPMatchStats       realTimePVPMatchStats  = null;
            RealTimePVPMatchStats       realTimePVPMatchStats2 = null;
            RealTimePVPBattleReportType reportType             = Report.ReportType;

            if (reportType != RealTimePVPBattleReportType.Default && reportType != RealTimePVPBattleReportType.Promotion)
            {
                if (reportType == RealTimePVPBattleReportType.Friendly)
                {
                    realTimePVPMatchStats  = this.FriendlyMatchStats;
                    realTimePVPMatchStats2 = this.FriendlyCareerMatchStats;
                }
            }
            else
            {
                realTimePVPMatchStats  = this.LadderMatchStats;
                realTimePVPMatchStats2 = this.LadderCareerMatchStats;
            }
            if (Report.Win)
            {
                realTimePVPMatchStats.AddWins();
                realTimePVPMatchStats2.AddWins();
            }
            else
            {
                realTimePVPMatchStats.AddLosses();
                realTimePVPMatchStats2.AddLosses();
            }
            base.SetDirty(true);
        }
        // Token: 0x0600510D RID: 20749 RVA: 0x00182688 File Offset: 0x00180888
        public static RealTimePVPBattleReport ToMemory(this ProRealTimePVPBattleReport Report)
        {
            RealTimePVPBattleReport realTimePVPBattleReport = new RealTimePVPBattleReport
            {
                BattleId   = Report.BattleId,
                BattleType = (BattleType)Report.BattleType,
                BPRule     = (BattleRoomBPRule)Report.BPRule,
                CreateTime = new DateTime(Report.CreateTime),
                InstanceId = Report.InstanceId,
                RandomSeed = Report.RandomSeed,
                ReportType = (RealTimePVPBattleReportType)Report.ReportType,
                Win        = Report.Win,
                IsCancel   = Report.IsCancel,
                Version    = Report.Version
            };

            for (int i = 0; i < Report.Datas.Count; i++)
            {
                realTimePVPBattleReport.PlayerDatas[i] = Report.Datas[i].ToMemory();
            }
            foreach (ProBattleCommand pbBattleCommand in Report.Commands)
            {
                realTimePVPBattleReport.Commands.Add(BattleCommand.PBBattleCommandToBattleCommand(pbBattleCommand));
            }
            return(realTimePVPBattleReport);
        }
        // Token: 0x0600510E RID: 20750 RVA: 0x001827AC File Offset: 0x001809AC
        public static ProRealTimePVPBattleReport ToPro(this RealTimePVPBattleReport Report)
        {
            ProRealTimePVPBattleReport proRealTimePVPBattleReport = new ProRealTimePVPBattleReport
            {
                BattleId   = Report.BattleId,
                BattleType = (int)Report.BattleType,
                BPRule     = (int)Report.BPRule,
                CreateTime = Report.CreateTime.Ticks,
                InstanceId = Report.InstanceId,
                RandomSeed = Report.RandomSeed,
                ReportType = (int)Report.ReportType,
                Win        = Report.Win,
                IsCancel   = Report.IsCancel,
                Version    = Report.Version
            };

            for (int i = 0; i < Report.PlayerDatas.Length; i++)
            {
                proRealTimePVPBattleReport.Datas.Add(Report.PlayerDatas[i].ToPro());
            }
            foreach (BattleCommand battleCommand in Report.Commands)
            {
                proRealTimePVPBattleReport.Commands.Add(BattleCommand.BattleCommandToPBBattleCommand(battleCommand));
            }
            return(proRealTimePVPBattleReport);
        }
        // Token: 0x060050FA RID: 20730 RVA: 0x00182290 File Offset: 0x00180490
        public RealTimePVPBattleReport DeepCopy()
        {
            RealTimePVPBattleReport realTimePVPBattleReport = new RealTimePVPBattleReport
            {
                Version    = base.Version,
                InstanceId = base.InstanceId,
                BattleType = base.BattleType,
                BattleId   = base.BattleId,
                RandomSeed = base.RandomSeed,
                ReportType = this.ReportType,
                BPRule     = this.BPRule,
                Win        = this.Win,
                IsCancel   = this.IsCancel,
                CreateTime = this.CreateTime
            };

            realTimePVPBattleReport.Commands.AddRange(this.Commands);
            for (int i = 0; i < this.PlayerDatas.Length; i++)
            {
                realTimePVPBattleReport.PlayerDatas[i] = this.PlayerDatas[i].DeepCopy();
            }
            return(realTimePVPBattleReport);
        }
Exemplo n.º 5
0
 // Token: 0x06004CD3 RID: 19667 RVA: 0x00179690 File Offset: 0x00177890
 public void SavePromotionReport(RealTimePVPBattleReport Report)
 {
     this.PromotionReports.AddFirst(Report);
     base.SetDirty(true);
 }