コード例 #1
0
        protected override StringBuilder ToBuilder()
        {
            var builder = base.ToBuilder();

            builder.AppendProperty(nameof(ArtisanId), ArtisanId.ToString());
            builder.AppendProperty(nameof(GameMode), GameMode.ToString());
            builder.AppendProperty(nameof(Level), Level.ToString());
            return(builder);
        }
コード例 #2
0
ファイル: ArtisanMapper.cs プロジェクト: leardev/DiabloSharp
        private IEnumerable <ArtisanRecipe> MapRecipes(ArtisanId artisanId, ArtisanRecipeRank rank, ArtisanRecipeSource source, IEnumerable <ArtisanRecipeDto> inputs)
        {
            var outputs = new List <ArtisanRecipe>();

            foreach (var input in inputs)
            {
                var output = MapRecipe(artisanId, rank, source, input);
                outputs.Add(output);
            }

            return(outputs);
        }
コード例 #3
0
ファイル: ArtisanMapper.cs プロジェクト: leardev/DiabloSharp
        private ArtisanRecipe MapRecipe(ArtisanId artisanId, ArtisanRecipeRank rank, ArtisanRecipeSource source, ArtisanRecipeDto input)
        {
            var reagents = MapReagents(input.Reagents);

            return(new ArtisanRecipe
            {
                Id = new RecipeId(artisanId, input.Slug),
                Name = input.Name,
                Cost = input.Cost,
                Rank = rank,
                Source = source,
                Reagents = reagents,
                CraftedItemId = new ItemId(input.ItemProduced.Slug, input.ItemProduced.Id)
            });
        }
コード例 #4
0
        public static string ArtisanIdentifierToString(ArtisanId value)
        {
            switch (value)
            {
            case ArtisanId.Blacksmith:
                return("blacksmith");

            case ArtisanId.Jeweler:
                return("jeweler");

            case ArtisanId.Mystic:
                return("mystic");

            default:
                throw new DiabloApiEnumConversionException(nameof(value), value);
            }
        }
コード例 #5
0
        public async Task <Artisan> GetArtisanAsync(IAuthenticationScope authenticationScope, ArtisanId artisanId)
        {
            var mapper      = new ArtisanMapper();
            var artisanSlug = artisanId.ToString().ToLower();

            using (var client = CreateClient(authenticationScope))
            {
                var artisan = await client.GetArtisanAsync(artisanSlug);

                return(mapper.Map(artisan));
            }
        }
コード例 #6
0
ファイル: RecipeMapper.cs プロジェクト: leardev/DiabloSharp
 public RecipeMapper(ArtisanId artisanId)
 {
     _artisanId = artisanId;
 }
コード例 #7
0
ファイル: RecipeId.cs プロジェクト: leardev/DiabloSharp
 public RecipeId(ArtisanId id, string slug)
 {
     Id   = id;
     Slug = slug;
 }