Exemple #1
0
        public PSO2Player(string playerName, long playerId, TimeSpan updateClock, TimeSpan instanceHistoryDuration, PSO2DamageTrackers trackersToCombine, DamageParser parentInst)
        {
            ID             = playerId;
            Name           = actualName = playerName;
            trackersToSum  = trackersToCombine;
            FilteredDamage = new DamageView(trackersToCombine);
            parent         = parentInst;
            parent.NameAnonimizationChangedEvent += Parent_NameAnonimizationChangedEvent;

            BasicDamage          = new DamageTracker(updateClock, instanceHistoryDuration, "Basic"); FilteredDamage.RegisterTracker(BasicDamage, PSO2DamageTrackers.Basic);
            ZanverseDamage       = new DamageTracker(updateClock, instanceHistoryDuration, "Zanverse"); FilteredDamage.RegisterTracker(ZanverseDamage, PSO2DamageTrackers.Zanverse);
            DarkBlastDamage      = new DamageTracker(updateClock, instanceHistoryDuration, "DarkBlast"); FilteredDamage.RegisterTracker(DarkBlastDamage, PSO2DamageTrackers.DarkBlast);
            AISDamage            = new DamageTracker(updateClock, instanceHistoryDuration, "AIS"); FilteredDamage.RegisterTracker(AISDamage, PSO2DamageTrackers.AIS);
            PhotonDamage         = new DamageTracker(updateClock, instanceHistoryDuration, "PwP"); FilteredDamage.RegisterTracker(PhotonDamage, PSO2DamageTrackers.PWP);
            RideroidDamage       = new DamageTracker(updateClock, instanceHistoryDuration, "Ride"); FilteredDamage.RegisterTracker(RideroidDamage, PSO2DamageTrackers.Ride);
            LaconiumDamage       = new DamageTracker(updateClock, instanceHistoryDuration, "Lsw"); FilteredDamage.RegisterTracker(LaconiumDamage, PSO2DamageTrackers.LSW);
            HeroTimeFinishDamage = new DamageTracker(updateClock, instanceHistoryDuration, "HTF"); FilteredDamage.RegisterTracker(HeroTimeFinishDamage, PSO2DamageTrackers.HTF);
            ElementDamage        = new DamageTracker(updateClock, instanceHistoryDuration, "ELM"); FilteredDamage.RegisterTracker(ElementDamage, PSO2DamageTrackers.Elem);
            DamageTaken          = new DamageTracker(updateClock, instanceHistoryDuration, "Taken");

            allTrackers.AddRange(new[] { BasicDamage, ZanverseDamage, DarkBlastDamage, AISDamage, DamageTaken, PhotonDamage, RideroidDamage, LaconiumDamage, HeroTimeFinishDamage, ElementDamage }); //to simplify calls below...
            Parent_NameAnonimizationChangedEvent(null, null);
        }
Exemple #2
0
 public TrackerContainer(DamageTracker tracker, PSO2DamageTrackers flag)
 {
     AssociatedTracker = tracker;
     AssociatedFlag    = flag;
 }
Exemple #3
0
 public void RegisterTracker(DamageTracker tracker, PSO2DamageTrackers flag)
 {
     allTrackers.Add(new TrackerContainer(tracker, flag));
 }