コード例 #1
0
ファイル: Pizza.cs プロジェクト: sofani/sofani_codeNET
        //  public  static string Name{get; set;}
        // SizeObject Size{get; set;}
        // List<Topping> ListTopping{get; set;}

        // Crust Crust{get;set;}

        // public static decimal Price {get; set;}



        public static IPizza OrderPizza(SizesEnum size)
        {
            switch (size)
            {
            case SizesEnum.SmallSize:
                return(new SmallPizza());

            case SizesEnum.MeduimSize:
                return(new MeduimPizza());

            case SizesEnum.LargeSize:
                return(new LargePizza());

            default:
                return(null);
            }
        }
コード例 #2
0
        public Character(RacesEnum charRace, ClassesEnum charClass)
        {
            ClassModel charClassDefaults = Dictionaries.ClassDictionary.List[charClass.ToString()];
            RaceModel  charRaceDefaults  = Dictionaries.RacesDictionary.List[charRace.ToString()];
            var        languages         = Dictionaries.PHB.LanguagesDictionary.List;
            var        commonLanguages   = languages.Where(l => l.Value.Type == LanguageTypesEnum.Common).ToDictionary(i => i.Key, i => i.Value);
            var        skills            = Dictionaries.PHB.SkillsDictionary.List;
            Random     rng = new Random();

            //var parentClasses = Dictionaries.ClassDictionary.List.Where(c => c.Value.ParentClass == null).ToDictionary(i => i.Key, i => i.Value);

            this.classes.Add(charClass);
            this.feats = new List <string>()
            {
            };
            this.features = new List <string>()
            {
            };
            this.hitDice         = charClassDefaults.HitDice;
            this.hitPointCurrent = charClassDefaults.HitDice;
            this.hitPointMax     = charClassDefaults.HitDice;
            this.languages       = new List <string>()
            {
            };
            this.level  = 1;
            this.name   = "Huumon";
            this.race   = charRace;
            this.size   = charRaceDefaults.Size;
            this.skills = new List <string>()
            {
            };
            this.speed = charRaceDefaults.Speed;

            if (charRaceDefaults.Feats != null)
            {
                foreach (string feat in charRaceDefaults.Feats)
                {
                    this.feats.Add(feat);
                }
            }

            if (charRaceDefaults.Languages != null)
            {
                foreach (string item in charRaceDefaults.Languages)
                {
                    string lang = item;

                    //if (lang == "selectLanguage")
                    //{
                    //    while (this.Languages.Contains(lang) || lang == "selectLanguage")
                    //    {
                    //        lang = commonLanguages.Keys.ToArray()[rng.Next(0, commonLanguages.Count)];
                    //    }
                    //}

                    this.languages.Add(lang);
                }
            }

            if (charClassDefaults.SavingThrows != null)
            {
                foreach (var ability in charClassDefaults.SavingThrows.ToArray())
                {
                    this.savingThrows.Add(ability.ToString());
                }
            }

            if (charRaceDefaults.Skills != null)
            {
                foreach (string skill in charRaceDefaults.Skills)
                {
                    this.skills.Add(skill);
                }
            }

            if (charClass.ToString() == "barbarian")
            {
                var barbarian = Dictionaries.PHB.Classes.Barbarian.Levels[1];
                this.proficiencyBonus = barbarian.ProficiencyBonus;

                foreach (var feature in barbarian.Features)
                {
                    this.features.Add(feature);
                }
            }

            switch (charRace)
            {
            case RacesEnum.dragonbornBlack:
                break;

            case RacesEnum.dragonbornBlue:
                break;

            case RacesEnum.dragonbornBronze:
                break;

            case RacesEnum.dragonbornCopper:
                break;

            case RacesEnum.dragonbornGold:
                break;

            case RacesEnum.dragonbornGreen:
                break;

            case RacesEnum.dragonbornRed:
                break;

            case RacesEnum.dragonbornSilver:
                break;

            case RacesEnum.dragonbornWhite:
                break;

            case RacesEnum.dwarfGray:
                break;

            case RacesEnum.dwarfHill:
                break;

            case RacesEnum.dwarfMountain:
                break;

            case RacesEnum.elfDark:
                break;

            case RacesEnum.elfHigh:
                break;

            case RacesEnum.elfWood:
                break;

            case RacesEnum.gnome:
                break;

            case RacesEnum.halfElf:
                break;

            case RacesEnum.halfOrc:
                break;

            case RacesEnum.halfling:
                break;

            case RacesEnum.humanStandard:
                break;

            case RacesEnum.humanVariant:
                break;

            case RacesEnum.tiefling:
                break;

            default:
                break;
            }
        }