From 171b728686bbffa53b363bab8b3f8ec6a5d103ba Mon Sep 17 00:00:00 2001 From: Dan Anglin Date: Sat, 21 Sep 2024 16:11:56 +0100 Subject: [PATCH] fix: prevent catching Pokemon more than once Prevent a trainer from catching a Pokemon more than once. --- main.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/main.go b/main.go index c59afa5..4498f6f 100644 --- a/main.go +++ b/main.go @@ -247,6 +247,13 @@ func catchFunc(client *pokeclient.Client, trainer *poketrainer.Trainer) callback pokemonName := args[0] + if _, caught := trainer.GetPokemonFromPokedex(pokemonName); caught { + return fmt.Errorf( + "you've already caught a %s", + pokemonName, + ) + } + pokemonDetails, err := client.GetPokemon(pokemonName) if err != nil { return fmt.Errorf(