コード例 #1
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
        private int CalculateAge(WorldDate worldDate)
        {
            var age = worldDate.Year - BornDate.Year;

            if (worldDate.Season - BornDate.Season <= 0)
            {
                return(age);
            }
            if (worldDate.Day - BornDate.Day > 0)
            {
                age++;
            }
            return(age);
        }
コード例 #2
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
        public Character(WorldDate currentWorldDate, string firstname, string dynasty, CharacterGender characterGender)
        {
            Firstname = firstname;
            Dynasty   = dynasty;
            BornDate  = new WorldDate(currentWorldDate.Year, currentWorldDate.Season, currentWorldDate.Day);
            var gender = characterGender;

            _rawAttributes      = new Dictionary <string, ICharacterAttribute>();
            _modifiedAttributes = new Dictionary <string, ICharacterAttribute>();
            Traits = new List <Trait>();
            AddAttribute(new ValueCharacterAttribute("Fertility", 0.5m));
            AddAttribute(new ValueCharacterAttribute("Combat", 1m));
            AddAttribute(new ValueCharacterAttribute("Strength", 10));


            var mods = new List <Modifier>()
            {
                new Modifier("Fertility", 0.5m, new FlatModifier())
            };

            var kuk = new Trait("Järnringsvigör", mods);

            if (Dynasty == "Järnring")
            {
                AddTrait(kuk);
            }

            mods = new List <Modifier>()
            {
                new Modifier("Combat", 8m, new FlatModifier()),
                new Modifier("Strength", 4m, new FlatModifier())
            };

            kuk = new Trait("Dunhallskrigare", mods);
            if (Dynasty == "Dunhall")
            {
                AddTrait(kuk);
            }

            _modifiedAttributes = FetchModifiedAttributes();

            foreach (var modifiedAttribute in _modifiedAttributes)
            {
                Console.WriteLine(firstname + " " + dynasty + " " + modifiedAttribute.Key + ": " + modifiedAttribute.Value.Value);
            }

            Console.WriteLine(Traits.Count);
        }
コード例 #3
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
        public Character(WorldDate currentWorldDate, string firstname, string dynasty, CharacterGender characterGender)
        {
            Firstname = firstname;
            Dynasty = dynasty;
            BornDate = new WorldDate(currentWorldDate.Year, currentWorldDate.Season, currentWorldDate.Day);
            var gender = characterGender;
            _rawAttributes = new Dictionary<string, ICharacterAttribute>();
            _modifiedAttributes = new Dictionary<string, ICharacterAttribute>();
            Traits = new List<Trait>();
            AddAttribute(new ValueCharacterAttribute("Fertility", 0.5m));
            AddAttribute(new ValueCharacterAttribute("Combat", 1m));
            AddAttribute(new ValueCharacterAttribute("Strength", 10));

            var mods = new List<Modifier>()
            {
                new Modifier("Fertility",0.5m, new FlatModifier())
            };

            var kuk = new Trait("Järnringsvigör", mods);

            if (Dynasty == "Järnring")
            {
                AddTrait(kuk);
            }

            mods = new List<Modifier>()
            {
                new Modifier("Combat", 8m,new FlatModifier()),
                new Modifier("Strength", 4m,new FlatModifier())
            };

            kuk = new Trait("Dunhallskrigare", mods);
            if (Dynasty == "Dunhall")
            {
                AddTrait(kuk);
            }

            _modifiedAttributes = FetchModifiedAttributes();

            foreach (var modifiedAttribute in _modifiedAttributes)
            {
                Console.WriteLine(firstname + " " + dynasty + " " + modifiedAttribute.Key + ": " + modifiedAttribute.Value.Value);
            }

            Console.WriteLine(Traits.Count);
        }
コード例 #4
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
        private int CalculateAge(WorldDate worldDate)
        {
            var age = worldDate.Year - BornDate.Year;

            if (worldDate.Season - BornDate.Season <= 0)
            {
                return age;
            }
            if (worldDate.Day - BornDate.Day > 0)
            {
                age++;
            }
            return age;
        }
コード例 #5
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
 public void Kill(WorldDate currentWorldDate)
 {
     DiedDate = new WorldDate(currentWorldDate.Year, currentWorldDate.Season, currentWorldDate.Day);
 }
コード例 #6
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
 public bool IsBorn(WorldDate currentWorldDate)
 {
     return currentWorldDate.Year >= BornDate.Year && currentWorldDate.Season >= BornDate.Season &&
            currentWorldDate.Day >= BornDate.Day;
 }
コード例 #7
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
 public bool IsAlive(WorldDate currentWorldDate)
 {
     if (DiedDate == null)
     {
         return true;
     }
     return currentWorldDate.Year < DiedDate.Year && currentWorldDate.Season < DiedDate.Season &&
            currentWorldDate.Day < DiedDate.Day;
 }
コード例 #8
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
 public bool IsAdult(WorldDate currentWorldDate)
 {
     return CalculateAge(currentWorldDate) >= 16;
 }
コード例 #9
0
ファイル: Character.cs プロジェクト: davidsyntex/Worldbuilder
 public int Age(WorldDate currentWorldDate)
 {
     return IsAlive(currentWorldDate) ? CalculateAge(currentWorldDate) : CalculateAge(DiedDate);
 }
コード例 #10
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
 public bool IsAdult(WorldDate currentWorldDate)
 {
     return(CalculateAge(currentWorldDate) >= 16);
 }
コード例 #11
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
 public bool IsBorn(WorldDate currentWorldDate)
 {
     return(currentWorldDate.Year >= BornDate.Year && currentWorldDate.Season >= BornDate.Season &&
            currentWorldDate.Day >= BornDate.Day);
 }
コード例 #12
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
 public int Age(WorldDate currentWorldDate)
 {
     return(IsAlive(currentWorldDate) ? CalculateAge(currentWorldDate) : CalculateAge(DiedDate));
 }
コード例 #13
0
ファイル: Character.cs プロジェクト: syradar/Worldbuilder
 public void Kill(WorldDate currentWorldDate)
 {
     DiedDate = new WorldDate(currentWorldDate.Year, currentWorldDate.Season, currentWorldDate.Day);
 }