Bonjour,
je suis confronté à un petit soucis de modélisation pour les besoins perso d'un jeu que je développe.
Dans mon jeu, nous pouvons construire des bâtiments et chaque bâtiment peut (ce n'est pas toujours le cas) nécessiter la construction d'autres bâtiments au préalable d'un certain niveau pour pouvoir être construit.
Par exemple (exemple bidon), la construction d'un centre de recherche nécessite la construction préalable d'une mine de métal niveau 3 et d'une mine d'or niveau 2.
Pour le moment j'ai une table "batiments" listant les différents bâtiments possible et leur cout en ressources pour le niveau 1.
Dans un premier temps, je comptais faire une association réflexive mais je pense pas que cela soit possible car comment introduire la notion de niveau d'un bâtiment ?
Je suis maintenant parti sur l'idée de créer une table batiment_requiert_batiment avec 3 champs.
-1 champ id référençant le batiment dont nous recherchons les dépendances (champ id de la table batiments)
-1 champ id_dependance référencant un bâtiment constituant une dépendance de ce bâtiment (champ id de la table batiments lui aussi)
-1 champ niveau pour le niveau du bâtiment constituant la dépendance
la clé primaire étant constituée des 2 premiers champs
nous pourrons donc avoir ce genre d’enregistrements :
1 2 3
1 3 2
est ce la bonne solution ?
Merci de vos avis
Partager