Пример #1
0
        protected Character(string name, Race characterRace, Dictionary <Attribute, int> attributes, int hitPoints, int experiencePoints)
        {
            Name                = name;
            CharactersRace      = characterRace;
            Attributes          = attributes;
            this.hitPoints      = hitPoints;
            ExperiencePoints    = experiencePoints;
            Inventory           = new List <EquipmentItems>();
            EquippedInRightHand = null;
            EquippedInLeftHand  = null;
            EquippedToBody      = null;
            CharacterId         = 0;

            StrBonus_ToHitMeleeBonus_DamageBonus_ToOpenDoorBonus = AttributeBonuses.GetStrenghtBonus(Attributes[Attribute.Strength]);
            DexBonus_ToHitMissilesBonus              = AttributeBonuses.GetDexterity_ToHitMissilesBonus(Attributes[Attribute.Dexterity]);
            DexBonus_AcAdjustment                    = AttributeBonuses.GetDexterity_AcAdjustmentBonus(Attributes[Attribute.Dexterity]);
            DexBonus_InitiativeAdjustment            = AttributeBonuses.GetDexterity_AcAdjustmentBonus(Attributes[Attribute.Dexterity]);
            WisBonus_MagicBasedSavingThrowAdjustment = AttributeBonuses.GetWisdomBonus(Attributes[Attribute.Wisdom]);
            ConBonus_HitPointAdjustment              = AttributeBonuses.GetConstitution_HitPointBonus(Attributes[Attribute.Constitution]);
            ChaBonus_ReactionAdjustment              = AttributeBonuses.GetCharimsaBonus_ReactionAdjustment(Attributes[Attribute.Charisma]);
            ChaBonus_NoOfRetainers                   = AttributeBonuses.GetCharimsaBonus_NoOfRetainers(Attributes[Attribute.Charisma]);
            ChaBonus_RetainerMorale                  = AttributeBonuses.GetCharimsaBonus_RetainersMorale(Attributes[Attribute.Charisma]);

            SetArmourClass();
        }
Пример #2
0
        public void SetClass(ClassType classType)
        {
            ClassType = classType;
            int hitPointBonus = AttributeBonuses.GetConstitution_HitPointBonus(OriginalAttributes[Attribute.Constitution]);

            switch (classType)
            {
            case ClassType.Fighter:
            {
                PrimeRequisite = Attribute.Strength;
                HitPoints      = Character.GetAdditionalHitPointsForNewLevel(DiceRoll.Roll(1, DiceType.D8), hitPointBonus);
                break;
            }

            case ClassType.Thief:
            {
                PrimeRequisite = Attribute.Dexterity;
                HitPoints      = Character.GetAdditionalHitPointsForNewLevel(DiceRoll.Roll(1, DiceType.D4), hitPointBonus);
                break;
            }

            case ClassType.MagicUser:
            {
                PrimeRequisite = Attribute.Intelligence;
                HitPoints      = Character.GetAdditionalHitPointsForNewLevel(DiceRoll.Roll(1, DiceType.D4), hitPointBonus);
                break;
            }

            case ClassType.Cleric:
            {
                PrimeRequisite = Attribute.Wisdom;
                HitPoints      = Character.GetAdditionalHitPointsForNewLevel(DiceRoll.Roll(1, DiceType.D6), hitPointBonus);
                break;
            }
            }
        }
Пример #3
0
 private void SetConstitutionBonus(int value)
 {
     ConBonus_HitPointAdjustment = AttributeBonuses.GetConstitution_HitPointBonus(value);
 }