Re: système Sid Meyer like (Civilization)

Posté par Redstar le 9/4/2020 12:40:24
Je me suis réveillé ce matin et j'ai eu une "révélation de ouf guedin".

J'ai effectivement pris le problème dans le mauvais sens: je me suis focalisé sur ce que je vois, or, c'est sur ce que ne je vois pas qu'il faut travailler.

Le maze m'as mit la puce à l'oreille, ce qui m'a permis de trouver tous les liens avec l’algorithme. Il me suffisait de reproduire du 3D au 2D les infos dont le script avait besoin.

Du coup, ça fonctionne pour le programme, mais visuellement, pas encore à 100%. En effet, le maze est composé d'une taille carrée (10x10, ou 9x9 pour python). Or, j'ai des hexagones, ce qui fait 9x5 ou 8x4 en python.

Du coup, quand mes points de passages sont crées, des cases sont "loupée", car j'ai une disposition qui n'est pas "carrée".

Virtuellement, j'ai ceci (j'ai fais exprès pour l'indentation):

map = [[0, 0, 0, 0, 0, 0],
        [0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
        [0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0]]


Je pense que c'est cette ligne qui est concernée:

for new_position in [(0, -1), (0, 1), (-1, 0), (1, 0), (-1, -1), (-1, 1), (1, -1), (1, 1)]:


Mais je n'en suis pas sûr. Du coup, je me pose une question: supposons que je veuille créer un jeu complet, devrai-je vraiment utiliser des tuiles, ou plutôt des carrés ? Car au plus simple, le choix est vite fait...

Et au sujet du diagramme Voronoï, si j'anticipe, je suppose que j'aurai un tableau comme pour le maze de A*, et que je devrai mapper sur mes tuiles, ou que je devrai le faire au préalable ?

Mais avant, j'ai testé le script et j'ai cette erreur:

voronoi_map.py", line 144
    if (i.e is not None) and (i.e.x  <> self.x0):
                                      ^
SyntaxError: invalid syntax

Cette contribution était de : http://blenderclan.tuxfamily.org/html/newbb/viewtopic.php?forum=3&topic_id=49623&post_id=582050