/// <summary>
        /// 0 dans les stats de mobs, a voir. + Initiative Mobs :)
        /// </summary>
        /// <param name="grade"></param>
        public FighterStats(MonsterGrade grade, int power)
        {
            this.CurrentLifePoints    = (int)grade.LifePoints;
            this.CurrentMaxLifePoints = (int)grade.LifePoints;
            this.InvisibilityState    = GameActionFightInvisibilityStateEnum.VISIBLE;
            this.ShieldPoints         = 0;
            this.Summoned             = false;
            this.SummonerId           = 0;

            this.ActionPoints            = ApCharacteristic.New(grade.ActionPoints);
            this.MovementPoints          = MpCharacteristic.New(grade.MovementPoints);
            this.Agility                 = Characteristic.New((short)(power));
            this.AirDamageBonus          = Characteristic.Zero();
            this.AirReduction            = Characteristic.Zero();
            this.AirResistPercent        = ResistanceCharacteristic.New(grade.AirResistance);
            this.AllDamagesBonus         = Characteristic.Zero();
            this.Chance                  = Characteristic.New((short)(power));
            this.CriticalDamageBonus     = Characteristic.Zero();
            this.CriticalDamageReduction = Characteristic.Zero();
            this.CriticalHit             = Characteristic.Zero();
            this.CriticalHitWeapon       = 0;
            this.DamagesBonusPercent     = Characteristic.Zero();
            this.DodgePAProbability      = Characteristic.New(grade.PADodge);
            this.DodgePMProbability      = Characteristic.New(grade.PmDodge);
            this.EarthDamageBonus        = Characteristic.Zero();
            this.EarthReduction          = Characteristic.Zero();
            this.EarthResistPercent      = ResistanceCharacteristic.New(grade.EarthResistance);
            this.Energy                  = 0;
            this.FireDamageBonus         = Characteristic.Zero();
            this.FireReduction           = Characteristic.Zero();
            this.FireResistPercent       = ResistanceCharacteristic.New(grade.FireResistance);
            this.GlobalDamageReduction   = 0;
            this.GlyphBonusPercent       = Characteristic.Zero();
            this.HealBonus               = Characteristic.Zero();
            this.Initiative              = Characteristic.Zero();
            this.Intelligence            = Characteristic.New((short)(power));
            this.LifePoints              = (int)grade.LifePoints;
            this.MaxEnergyPoints         = 0;
            this.MaxLifePoints           = (int)grade.LifePoints;
            this.NeutralDamageBonus      = Characteristic.Zero();
            this.NeutralReduction        = Characteristic.Zero();
            this.NeutralResistPercent    = ResistanceCharacteristic.New(grade.NeutralResistance);
            this.PAAttack                = Characteristic.Zero();
            this.PermanentDamagePercent  = Characteristic.Zero();
            this.PvPAirResistPercent     = ResistanceCharacteristic.Zero();
            this.PvPAirReduction         = Characteristic.Zero();
            this.PvPEarthReduction       = Characteristic.Zero();
            this.PvPEarthResistPercent   = ResistanceCharacteristic.Zero();
            this.PvPFireReduction        = Characteristic.Zero();
            this.PvPFireResistPercent    = ResistanceCharacteristic.Zero();
            this.PvPNeutralReduction     = Characteristic.Zero();
            this.PvPNeutralResistPercent = ResistanceCharacteristic.Zero();
            this.PvPWaterReduction       = ResistanceCharacteristic.Zero();
            this.PvPWaterResistPercent   = ResistanceCharacteristic.Zero();
            this.PushDamageReduction     = Characteristic.Zero();
            this.PushDamageBonus         = Characteristic.Zero();
            this.Prospecting             = Characteristic.Zero();
            this.PMAttack                = Characteristic.Zero();
            this.Range                     = RangeCharacteristic.Zero();
            this.Reflect                   = Characteristic.New((short)grade.DamageReflect);
            this.RuneBonusPercent          = Characteristic.Zero();
            this.Strength                  = Characteristic.New((short)(power));
            this.SummonableCreaturesBoost  = Characteristic.New(1);
            this.TackleBlock               = Characteristic.Zero();
            this.TackleEvade               = Characteristic.Zero();
            this.TrapBonus                 = Characteristic.Zero();;
            this.TrapBonusPercent          = Characteristic.Zero();
            this.Vitality                  = Characteristic.Zero();
            this.WaterDamageBonus          = Characteristic.Zero();
            this.WaterReduction            = Characteristic.Zero();
            this.WaterResistPercent        = ResistanceCharacteristic.New(grade.WaterResistance);
            this.WeaponDamagesBonusPercent = Characteristic.Zero();
            this.WeightBonus               = 0;
            this.Wisdom                    = Characteristic.New((short)(grade.Wisdom));//+ ((double)power / (double)2)));
            this.FinalDamageCoefficient    = 1;
        }