Description

Il est désormais possible de gérer la reproduction des dinosaures. Pour ce faire, vous devez faire appel au vétérinaire (API externe fourni), car c’est lui qui vous informera sur les informations du bébé dinosaure résultant (espèce, genre, etc). Tous les bébés naissent avec un poids de 1 kg.

Il est possible que la reproduction ne fonctionne pas et qu’aucun nouveau dinosaure ne soit ajouté au troupeau si les parents refusent de s’accoupler chez le vétérinaire (avoir quelqu’un qui regarde intimide certains dinosaures).

Pareil que les autres dinosaures, les bébés dinosaures arrivent au parc affamés et consomment deux fois plus de ressources pendant un tour.

Lorsque les deux parents d’un bébé dinosaure vont au paradis des dinosaures, malheureusement ce dernier doit également quitter le troupeau avec ses parents. Ex. Si le dinosaure mère meurt de faim, mais que le père est toujours vivant, leur enfant pourra survivre. Par contre dès que le dinosaure père mourra, l’enfant ne pourra survivre par lui-même et quittera également.

Conditions de succès

# Description
1 Le père doit être un dinosaure mâle et la mère un dinosaure femelle.
2 Tous les bébés naissent avec un poids de 1 kg.
3 Les bébés arrivent au park affamés et consomment 2 fois plus à leur premier tour.
4 Le nom du bébé dinosaure doit être unique.
5 Le bébé dinosaure “conçu” sera présent seulement après avoir joué le tour.
6 Si une erreur est soulevée, rejeter la requête et aucun bébé ne sera ajouté.
7 Un bébé dinosaure ne peut pas survivre dans le troupeau sans au moins un de ses deux parents. Si ses deux parents meurent, il meurt aussi.

Déroulement d’un tour

En plus de pouvoir ajouter des ressources, nous pouvons maintenant faire reproduire des dinosaures!

Actions possibles
Ajouter des ressources.
Ajouter un dinosaure.
Reproduction de dinosaures, ajout d’un bébé dinosaure.

:warning: Note: Ces actions sont accumulées et exécutées, en ordre d’arrivée, lors du déroulement du tour.

Conséquences d’un tour (en ordre)
1. Ajouter 10 kilolitres d’eau, 250 salades et 100 hamburgers.
2. Retirer du garde-manger les ressources périmées.
3. Retirer du garde-manger les ressources consommées.
4. Retirer du troupeau les dinosaures qui ont jeûné.
5. Retirer du troupeau les bébé dinosaures sans parents.

API

:white_check_mark: Ajouter des ressources

Requête

POST /breed

{
  "name": ""::string,
  "fatherName": ""::string,
  "motherName": ""::string
}

Réponses

:arrow_right: HTTP 200 OK

:arrow_right: HTTP 400 Bad Request - Quand le nom spécifié du dinosaure existe déjà.

{
  "error": "DUPLICATE_NAME"::string,
  "description": "The specified name already exists and must be unique."::string
} 

:arrow_right: HTTP 404 Not Found - Quand le nom d’un dinosaure parent n’existe pas.

{
  "error": "NON_EXISTENT_NAME"::string,
  "description": "The specified name does not exist."::string
} 

:arrow_right: HTTP 400 Bad Request Si le dinosaure père est une femelle.

{
  "error": "INVALID_FATHER"::string,
  "description" : "Father must be a male."::string
} 

:arrow_right: HTTP 400 Bad Request Si le dinosaure mère est un mâle.

{
  "error": "INVALID_MOTHER"::string,
  "description" : "Mother must be a female."::string
} 

Précisions/Changements

  • 5 octobre: Dans le service externe du vétérinaire, il y a une typo dans l’espèce du bébé retourné: yrannosaurus Rex au lieu de Tyrannosaurus Rex. Vous n’avez pas à gérer et nous ne testerons pas les combinaisons de dinosaures qui donnent un yrannosaurus Rex.