Exemple #1
0
 protected override bool InitCombatReplay(ParsedEvtcLog log)
 {
     if (base.InitCombatReplay(log))
     {
         // Trim
         DespawnEvent despawnCheck = log.CombatData.GetDespawnEvents(AgentItem).LastOrDefault();
         SpawnEvent   spawnCheck   = log.CombatData.GetSpawnEvents(AgentItem).LastOrDefault();
         DeadEvent    deathCheck   = log.CombatData.GetDeadEvents(AgentItem).LastOrDefault();
         AliveEvent   aliveCheck   = log.CombatData.GetAliveEvents(AgentItem).LastOrDefault();
         if (AgentItem.Type != AgentItem.AgentType.EnemyPlayer && deathCheck != null && (aliveCheck == null || aliveCheck.Time < deathCheck.Time))
         {
             CombatReplay.Trim(AgentItem.FirstAware, deathCheck.Time);
         }
         else if (despawnCheck != null && (spawnCheck == null || spawnCheck.Time < despawnCheck.Time))
         {
             CombatReplay.Trim(AgentItem.FirstAware, despawnCheck.Time);
         }
         else
         {
             CombatReplay.Trim(AgentItem.FirstAware, AgentItem.LastAware);
         }
         return(true);
     }
     return(false);
 }
Exemple #2
0
        protected static void TrimCombatReplay(ParsedEvtcLog log, CombatReplay replay, AgentItem agentItem)
        {
            // Trim
            DespawnEvent despawnCheck = log.CombatData.GetDespawnEvents(agentItem).LastOrDefault();
            SpawnEvent   spawnCheck   = log.CombatData.GetSpawnEvents(agentItem).LastOrDefault();
            DeadEvent    deathCheck   = log.CombatData.GetDeadEvents(agentItem).LastOrDefault();
            AliveEvent   aliveCheck   = log.CombatData.GetAliveEvents(agentItem).LastOrDefault();

            if (deathCheck != null && (aliveCheck == null || aliveCheck.Time < deathCheck.Time))
            {
                replay.Trim(agentItem.FirstAware, deathCheck.Time);
            }
            else if (despawnCheck != null && (spawnCheck == null || spawnCheck.Time < despawnCheck.Time))
            {
                replay.Trim(agentItem.FirstAware, despawnCheck.Time);
            }
            else
            {
                replay.Trim(agentItem.FirstAware, agentItem.LastAware);
            }
        }