예제 #1
0
        public GameFightMinimalStats GetFightMinimalStats()
        {
            return(new GameFightMinimalStats()
            {
                actionPoints = ActionPoints.TotalInContext(),
                movementPoints = MovementPoints.TotalInContext(),
                maxActionPoints = ActionPoints.Total(),
                maxMovementPoints = MovementPoints.Total(),

                airElementReduction = AirReduction.TotalInContext(),
                airElementResistPercent = AirResistPercent.TotalInContext(),
                baseMaxLifePoints = (uint)MaxLifePoints,
                lifePoints = (uint)CurrentLifePoints,
                maxLifePoints = (uint)CurrentMaxLifePoints,
                invisibilityState = (sbyte)InvisibilityState,
                dodgePALostProbability = (ushort)DodgePAProbability.TotalInContext(),
                dodgePMLostProbability = (ushort)DodgePMProbability.TotalInContext(),
                pvpAirElementReduction = PvPAirReduction.TotalInContext(),
                pvpAirElementResistPercent = PvPAirResistPercent.TotalInContext(),
                pvpEarthElementReduction = PvPEarthReduction.TotalInContext(),
                pvpEarthElementResistPercent = PvPEarthResistPercent.TotalInContext(),
                pvpFireElementReduction = PvPFireReduction.TotalInContext(),
                pvpFireElementResistPercent = PvPFireResistPercent.TotalInContext(),
                pvpNeutralElementReduction = PvPNeutralReduction.TotalInContext(),
                pvpNeutralElementResistPercent = PvPNeutralResistPercent.TotalInContext(),
                pvpWaterElementReduction = PvPWaterReduction.TotalInContext(),
                pvpWaterElementResistPercent = PvPWaterResistPercent.TotalInContext(),
                shieldPoints = (uint)ShieldPoints,
                earthElementReduction = EarthReduction.TotalInContext(),
                earthElementResistPercent = EarthResistPercent.TotalInContext(),
                fireElementResistPercent = FireResistPercent.TotalInContext(),
                waterElementResistPercent = WaterResistPercent.TotalInContext(),
                neutralElementResistPercent = NeutralResistPercent.TotalInContext(),
                fireElementReduction = FireReduction.TotalInContext(),
                neutralElementReduction = NeutralReduction.TotalInContext(),
                waterElementReduction = WaterReduction.TotalInContext(),
                summoned = Summoned,
                summoner = SummonerId,
                tackleBlock = TackleBlock.TotalInContext(),
                tackleEvade = TackleEvade.TotalInContext(),
                pushDamageFixedResist = PushDamageReduction.TotalInContext(),
                permanentDamagePercent = (uint)PermanentDamagePercent.TotalInContext(),
                fixedDamageReflection = Reflect.TotalInContext(),
                criticalDamageFixedResist = CriticalDamageReduction.TotalInContext()
            });
        }
예제 #2
0
        public CharacterCharacteristicsInformations GetCharacterCharacteristics(Character character)
        {
            ulong expFloor     = ExperienceRecord.GetExperienceForLevel(character.Level).Player;
            ulong expNextFloor = ExperienceRecord.GetExperienceForNextLevel(character.Level).Player;

            CharacterCharacteristicsInformations informations = new CharacterCharacteristicsInformations()
            {
                actionPoints            = ActionPoints.GetBaseCharacteristic(),
                actionPointsCurrent     = ActionPoints.TotalInContext(),
                additionnalPoints       = 0,
                agility                 = Agility.GetBaseCharacteristic(),
                airDamageBonus          = AirDamageBonus.GetBaseCharacteristic(),
                airElementReduction     = AirReduction.GetBaseCharacteristic(),
                airElementResistPercent = AirResistPercent.GetBaseCharacteristic(),
                alignmentInfos          = character.Record.Alignment.GetActorExtendedAlignement(),
                allDamagesBonus         = AllDamagesBonus.GetBaseCharacteristic(),
                chance = Chance.GetBaseCharacteristic(),
                criticalDamageBonus          = CriticalDamageBonus.GetBaseCharacteristic(),
                criticalDamageReduction      = CriticalDamageReduction.GetBaseCharacteristic(),
                criticalHit                  = CriticalHit.GetBaseCharacteristic(),
                criticalHitWeapon            = CriticalHitWeapon,
                criticalMiss                 = Characteristic.Zero().GetBaseCharacteristic(),
                damagesBonusPercent          = DamagesBonusPercent.GetBaseCharacteristic(),
                dodgePALostProbability       = DodgePAProbability.GetBaseCharacteristic(),
                dodgePMLostProbability       = DodgePMProbability.GetBaseCharacteristic(),
                earthDamageBonus             = EarthDamageBonus.GetBaseCharacteristic(),
                earthElementReduction        = EarthReduction.GetBaseCharacteristic(),
                earthElementResistPercent    = EarthResistPercent.GetBaseCharacteristic(),
                pvpEarthElementReduction     = PvPEarthReduction.GetBaseCharacteristic(),
                pvpEarthElementResistPercent = PvPEarthResistPercent.GetBaseCharacteristic(),
                fireDamageBonus              = FireDamageBonus.GetBaseCharacteristic(),
                fireElementReduction         = FireReduction.GetBaseCharacteristic(),
                fireElementResistPercent     = FireResistPercent.GetBaseCharacteristic(),
                pvpFireElementReduction      = PvPFireReduction.GetBaseCharacteristic(),
                pvpFireElementResistPercent  = PvPFireResistPercent.GetBaseCharacteristic(),
                glyphBonusPercent            = GlyphBonusPercent.GetBaseCharacteristic(),
                healBonus                      = HealBonus.GetBaseCharacteristic(),
                initiative                     = new CharacterBaseCharacteristic((short)FormulasProvider.Instance.BaseInitiative(this), 0, Initiative.Total(), 0, 0),
                intelligence                   = Intelligence.GetBaseCharacteristic(),
                kamas                          = character.Record.Kamas,
                lifePoints                     = (uint)LifePoints,
                maxEnergyPoints                = MaxEnergyPoints,
                maxLifePoints                  = (uint)MaxLifePoints,
                movementPoints                 = MovementPoints.GetBaseCharacteristic(),
                movementPointsCurrent          = MovementPoints.TotalInContext(),
                PMAttack                       = PMAttack.GetBaseCharacteristic(),
                PAAttack                       = PAAttack.GetBaseCharacteristic(),
                pvpAirElementReduction         = PvPAirReduction.GetBaseCharacteristic(),
                pvpAirElementResistPercent     = PvPAirResistPercent.GetBaseCharacteristic(),
                pvpNeutralElementReduction     = PvPNeutralReduction.GetBaseCharacteristic(),
                pvpNeutralElementResistPercent = PvPNeutralResistPercent.GetBaseCharacteristic(),
                pvpWaterElementReduction       = PvPWaterReduction.GetBaseCharacteristic(),
                pvpWaterElementResistPercent   = PvPWaterResistPercent.GetBaseCharacteristic(),
                energyPoints                   = Energy,
                experience                     = character.Experience,
                experienceLevelFloor           = expFloor,
                experienceNextLevelFloor       = expNextFloor,
                neutralDamageBonus             = NeutralDamageBonus.GetBaseCharacteristic(),
                neutralElementReduction        = NeutralReduction.GetBaseCharacteristic(),
                neutralElementResistPercent    = NeutralResistPercent.GetBaseCharacteristic(),
                tackleEvade                    = TackleEvade.GetBaseCharacteristic(),
                tackleBlock                    = TackleBlock.GetBaseCharacteristic(),
                range                          = Range.GetBaseCharacteristic(),
                waterElementReduction          = WaterReduction.GetBaseCharacteristic(),
                waterDamageBonus               = WaterDamageBonus.GetBaseCharacteristic(),
                waterElementResistPercent      = WaterResistPercent.GetBaseCharacteristic(),
                reflect                        = Reflect.GetBaseCharacteristic(),
                permanentDamagePercent         = PermanentDamagePercent.GetBaseCharacteristic(),
                prospecting                    = Prospecting.GetBaseCharacteristic(),
                pushDamageBonus                = PushDamageBonus.GetBaseCharacteristic(),
                pushDamageReduction            = PushDamageReduction.GetBaseCharacteristic(),
                runeBonusPercent               = RuneBonusPercent.GetBaseCharacteristic(),
                spellModifications             = new CharacterSpellModification[0],
                spellsPoints                   = character.Record.SpellPoints,
                statsPoints                    = character.Record.StatsPoints,
                vitality                       = Vitality.GetBaseCharacteristic(),
                strength                       = Strength.GetBaseCharacteristic(),
                summonableCreaturesBoost       = SummonableCreaturesBoost.GetBaseCharacteristic(),
                trapBonus                      = TrapBonus.GetBaseCharacteristic(),
                trapBonusPercent               = TrapBonusPercent.GetBaseCharacteristic(),
                weaponDamagesBonusPercent      = WeaponDamagesBonusPercent.GetBaseCharacteristic(),
                wisdom                         = Wisdom.GetBaseCharacteristic(),
                probationTime                  = 0,
            };

            return(informations);
        }