API construída baseada nos principais recursos de um Jogo de RPG, podendo criar usuários, personagens e outras funcionalidades. A API construída baseia-se em um jogo de RPG, onde é possível fazer autenticação com registros e login de novos usuários através do sistema de Tokens (JWT). Cada usuário pode criar infinitos personagens dentre as classes estabelecidas: Cavaleiro, Mago ou Clérico, podendo também adicionar armas e skills para esses personagens.
Essa é a tela inicial da API. Para começar, cria-se um novo usuário para poder ter acesso a todas as funcionalidades que a API oferece.
Na Seção "Auth" e clicando no método POST em registrar podemos criar um novo usuário.
Com o novo usuário cadastrado, podemos então fazer o login com as mesmas informações registradas anteriormente.
No método POST de login, após preencher as informações do usuário e clicar em "Execute", um Token é gerado. Esse Token é responsável por fazer a autenticação na API.
Clicando em "Authorize" no canto direito superior direito e inserindo o Token gerado, o usuário é então autenticado no sistema da API podendo ter acesso a outras funcionalidades.
Clicando no método POST em Character, podemos criar um novo personagem e escolher uma classe na qual esse personagem pertence.
Podemos perceber que o personagem foi cadastrado com sucesso ao banco de dados da API. No entanto, os campos "Weapon" e "Skills" permanecem vazios. Vamos então adicionar as armas e as skills do persongem.
Clicando no método POST de Weapon, podemos então adicionar uma arma ao personagem que acabamos de criar.
Podemos perceber então que a arma foi adicionado. Falta então as Skills.
As Skills são adicionadas de acordo com o ID específico de cada Skill predefinida no banco de dados. E elas podem ser associadas aos personagens de acordo com o ID específico do personagem.
Podemos perceber então que a Skill "Sabedoria" foi adicionada. Mas pode-se também adicionar diversas skills diferentes a um mesmo personagem.
E assim fica o personagem preenchido com todas as informações.
Podemos então modificar ou adicionar mais informações ao personagem com o método "Update". No caso em exemplo, atualizamos o nome do personagem.
Podemos também excluir o personagem fornecendo seu ID.
1 - Este repositório está organizado em diversas branchs afim de separar cada nova funcionalidade que foi implementada
2 - Caso queira executar a API, acesse a apartir da branch "35_AddSkillsCharacter" ou Clique Aqui, pois todas as branchs depois dessa são apenas de teste;
3 - Foi utilizado nesse projeto o SQL Server, mas você pode utilizar qualquer outro, apenas mudando o "Connection String";