Exemple #1
0
        public async Task <IActionResult> Get(string hero, string villain)
        {
            var characters = await _charactersProvider.GetCharacters();


            var heroCharachter   = characters.Items.SingleOrDefault(x => x.Name == hero && x.Type == "hero");
            var villainCharacter = characters.Items.SingleOrDefault(x => x.Name == villain && x.Type == "villain");

            if (heroCharachter == null && villainCharacter == null)
            {
                return(NotFound());
            }

            if (heroCharachter == null)
            {
                return(BadRequest($"Hero {hero} does not exists."));
            }

            if (villainCharacter == null)
            {
                return(BadRequest($"Villain {villain} does not exists"));
            }

            if (heroCharachter.Weakness == villainCharacter.Name)
            {
                heroCharachter.Score -= 1;
            }

            if (heroCharachter.Score > villainCharacter.Score)
            {
                return(Ok(heroCharachter));
            }

            return(Ok(villainCharacter));
        }
Exemple #2
0
        public async Task <IActionResult> Get(string hero, string villain)
        {
            var characters = await _charactersProvider.GetCharacters();

            foreach (var character in characters.Items)
            {
                if (character.Name == hero)
                {
                    _character1 = character;
                }
                if (character.Name == villain)
                {
                    _character2 = character;
                }
            }

            if (_character1.Score > _character2.Score)
            {
                return(Ok(_character1));
            }

            return(Ok(_character2));
        }