コード例 #1
0
        public static BattleFrameData GetFrameDate(this ClientContext context, int frame)
        {
            BattleReport    battleReport    = context.battleReport.value;
            BattleFrameData battleFrameData = null;

            battleReport.battleFrames.TryGetValue(frame, out battleFrameData);
            return(battleFrameData);
        }
コード例 #2
0
        protected override void Execute(List <ClientEntity> entities)
        {
            BattleFrameData battleFrameData = _context.GetFrameDate(_context.frameCounter.value);

            if (battleFrameData == null)
            {
                return;
            }

            foreach (var action in battleFrameData.battleActions)
            {
                _context.CreateEntity().AddBattleAction(action);
            }
        }
コード例 #3
0
        public static void ReportBattleAction(this ServerContext context, BattleAction battleAction)
        {
            BattleReport battleReport = context.battleReport.value;
            int          frame        = context.frameCounter.value;
            float        time         = context.GetTimeNow();

            BattleFrameData battleFrameData = null;

            if (!battleReport.battleFrames.TryGetValue(frame, out battleFrameData))
            {
                battleFrameData      = new BattleFrameData();
                battleFrameData.time = time;
                battleReport.battleFrames.Add(frame, battleFrameData);
                battleReport.battleMeta.frameDataCount++;
                battleReport.battleMeta.timeCost   = time;
                battleReport.battleMeta.frameCount = frame;
            }
            battleFrameData.battleActions.Add(battleAction);
            battleReport.battleMeta.actionCount++;
        }