public void Update(GameFightMinimalStats stats)
        {
            if (stats == null) throw new ArgumentNullException("stats");

            Health = stats.lifePoints;
            MaxHealth = stats.maxLifePoints;
            CurrentAP = stats.actionPoints;
            CurrentMP = stats.movementPoints;

            this[PlayerField.AP] = stats.maxActionPoints;
            this[PlayerField.MP] = stats.maxMovementPoints;
            this[PlayerField.PermanentDamagePercent] = stats.permanentDamagePercent;
            this[PlayerField.TackleBlock] = stats.tackleBlock;
            this[PlayerField.TackleEvade] = stats.tackleEvade;
            this[PlayerField.DodgeAPProbability] = stats.dodgePALostProbability;
            this[PlayerField.DodgeMPProbability] = stats.dodgePMLostProbability;
            this[PlayerField.NeutralResistPercent] = stats.neutralElementResistPercent;
            this[PlayerField.EarthResistPercent] = stats.earthElementResistPercent;
            this[PlayerField.WaterResistPercent] = stats.waterElementResistPercent;
            this[PlayerField.AirResistPercent] = stats.airElementResistPercent;
            this[PlayerField.FireResistPercent] = stats.fireElementResistPercent;
            this[PlayerField.NeutralElementReduction] = stats.neutralElementReduction;
            this[PlayerField.EarthElementReduction] = stats.earthElementReduction;
            this[PlayerField.WaterElementReduction] = stats.waterElementReduction;
            this[PlayerField.AirElementReduction] = stats.airElementReduction;
            this[PlayerField.FireElementReduction] = stats.fireElementReduction;

            InvisibilityState = (GameActionFightInvisibilityStateEnum) stats.invisibilityState;
        }
 public MinimalStats(GameFightMinimalStats stats)
 {
   Update(stats);
 }
    public void Update(GameFightMinimalStats stats)
    {
      if (stats == null) throw new ArgumentNullException("stats");
      //Summoner = stats.summoner; already processed at MonsterFighter / CharacterFighter level
      //Summoned = stats.summoned;
      Health = stats.lifePoints;
      MaxHealth = stats.maxLifePoints;
      MaxHealthBase = stats.baseMaxLifePoints;
      CurrentAP = stats.actionPoints;
      CurrentMP = stats.movementPoints;
      MaxAP = stats.maxActionPoints;
      MaxMP = stats.maxMovementPoints;
      PermanentDamagePercent = stats.permanentDamagePercent;
      TackleBlock = stats.tackleBlock;
      TackleEvade = stats.tackleEvade;
      DodgeAPProbability = stats.dodgePALostProbability;
      DodgeMPProbability = stats.dodgePMLostProbability;
      NeutralResistPercent = stats.neutralElementResistPercent;
      EarthResistPercent = stats.earthElementResistPercent;
      WaterResistPercent = stats.waterElementResistPercent;
      AirResistPercent = stats.airElementResistPercent;
      FireResistPercent = stats.fireElementResistPercent;
      NeutralElementReduction = stats.neutralElementReduction;
      EarthElementReduction = stats.earthElementReduction;
      WaterElementReduction = stats.waterElementReduction;
      AirElementReduction = stats.airElementReduction;
      FireElementReduction = stats.fireElementReduction;
      //logger.Debug("{0}/{1} AP, {2}/{3} MP, {4}/{5} HP", CurrentAP, MaxAP, CurrentMP, MaxMP, Health, MaxHealth);

      InvisibilityState = (GameActionFightInvisibilityStateEnum)stats.invisibilityState;
    }
        public void Update(GameFightMinimalStats stats)
        {
            if (stats == null) throw new ArgumentNullException("stats");

            Health = stats.lifePoints;
            MaxHealth = stats.maxLifePoints;
            MaxHealthBase = stats.baseMaxLifePoints;
            InvisibilityState = (GameActionFightInvisibilityStateEnum) stats.invisibilityState;

            this[PlayerField.AP].Update(stats.actionPoints);
            this[PlayerField.MP].Update(stats.movementPoints);

            this[PlayerField.PermanentDamagePercent].Update(stats.permanentDamagePercent);
            this[PlayerField.TackleBlock].Update(stats.tackleBlock);
            this[PlayerField.TackleEvade].Update(stats.tackleEvade);
            this[PlayerField.DodgeAPProbability].Update(stats.dodgePALostProbability);
            this[PlayerField.DodgeMPProbability].Update(stats.dodgePMLostProbability);
            this[PlayerField.NeutralResistPercent].Update(stats.neutralElementResistPercent);
            this[PlayerField.EarthResistPercent].Update(stats.earthElementResistPercent);
            this[PlayerField.WaterResistPercent].Update(stats.waterElementResistPercent);
            this[PlayerField.AirResistPercent].Update(stats.airElementResistPercent);
            this[PlayerField.FireResistPercent].Update(stats.fireElementResistPercent);
            this[PlayerField.NeutralElementReduction].Update(stats.neutralElementReduction);
            this[PlayerField.EarthElementReduction].Update(stats.earthElementReduction);
            this[PlayerField.WaterElementReduction].Update(stats.waterElementReduction);
            this[PlayerField.AirElementReduction].Update(stats.airElementReduction);
            this[PlayerField.FireElementReduction].Update(stats.fireElementReduction);

            OnPropertyChanged(Binding.IndexerName);
        }
        public void Update(GameFightMinimalStats stats)
        {
            if (stats == null) throw new ArgumentNullException("stats");

            Health = stats.lifePoints;
            MaxHealth = stats.maxLifePoints;
            CurrentAP = stats.actionPoints;
            CurrentMP = stats.movementPoints;
            MaxAP = stats.maxActionPoints;
            MaxMP = stats.maxMovementPoints;
            PermanentDamagePercent = stats.permanentDamagePercent;
            TackleBlock = stats.tackleBlock;
            TackleEvade = stats.tackleEvade;
            DodgeAPProbability = stats.dodgePALostProbability;
            DodgeMPProbability = stats.dodgePMLostProbability;
            NeutralResistPercent = stats.neutralElementResistPercent;
            EarthResistPercent = stats.earthElementResistPercent;
            WaterResistPercent = stats.waterElementResistPercent;
            AirResistPercent = stats.airElementResistPercent;
            FireResistPercent = stats.fireElementResistPercent;
            NeutralElementReduction = stats.neutralElementReduction;
            EarthElementReduction = stats.earthElementReduction;
            WaterElementReduction = stats.waterElementReduction;
            AirElementReduction = stats.airElementReduction;
            FireElementReduction = stats.fireElementReduction;

            InvisibilityState = (GameActionFightInvisibilityStateEnum) stats.invisibilityState;
        }