1

J'ai commencé un mini rpg il y a deux semaines, j'utilise pas mal les structures mais c'est un peu pénible dès que je veux rajouter un truc... Comme c'est quasiment mon premier jeu (à part un pacman sur PC en blitz basic...) ben j'aimerais savoir si vous avez un meilleur système smile

Je prends comme exemple les maps, j'ai une structure map qui contient diverses infos sur la carte (largeur, hauteur, etc...) + un pointeur vers le tableau contenant les n° des tiles de la map.
Si je veux ajouter une carte, il faut que j'inclue le fichier du tableau contenant la map, que je crée une nouvelle variable de structure pour cette map en global et que j'initialise ses éléments dans la fonction d'initialisation (pour ça j'inclue un autre fichier parce que je m'y retrouve plus sinon)... Ca fait beaucoup de modifications à des endroits différents juste pour une map, j'aimerais bien pouvoir simplifier ça...

J'ai essayé d'insérer directement le tableau de la map dans la structure, et plus via un pointeur, ça aurait fait un include en moins, mais on ne peut pas modifier un tableau en une fois ( tab[y][x]={{...,...,...}...}; ) après sa déclaration apparemment sad

Avez vous plus simple ?

2

Effectivement, seule la déclaration d'un tableau permet de l'initialiser en une seule fois. Tu peut toujours créer une fonction qui fasse le travail ou utiliser memcpy()

L'idéal pour ton problème c'est de créer un type de fichier qui contient toute l'information nécessaire pour la mise en place d'une carte: les dimensions, les tiles et autres. Dans le programme il s'agira de lire l'entête du fichier qui doit contenir la structure commune à toutes les cartes avec les informations de dimensions, localisation de la carte dans le fichier, des tiles etc...
Après il faudra allouer de la mémoire dynamiquement en fonction des nécessités. C'est l'idéal mais c'est quand même assez lourd à mettre en place, surtout que parallèlement il faut préparer un éditeur spécial pour créer les fichier des cartes.

Mais si le projet n'est pas si ambitieux, il vaut mieux que tu continue comme à présent. Tu as utilisé une solution très similaire à celle que j'ai utilisé dans Animings. De la à te dire si c'est la meilleure, aucune idée, c'était mon premier jeu avec des tableaux et j'ai demandé l'avis à personne. wink

Si tu veux un avis un peu plus précis sur ton code, envoie moi quelques extraits pour que je l'analyse, on ne sait jamais smile

3

Moi quand j'ai un truc qui marche, je le laisse comme ca.
Tu dois faire 3 ajouts chaque fois que tu rajoutes une carte ? C'est pas la mort.
Le pouvoir aux loutres !!!
(et aussi, vive le rose !)
mes petits programmes GP32: http://yaouank.gp32news.com

4

C'est pas le pb je pense, sa doit etre lourds et embrouiller vachement le code. S'il y avait moyen de remplir un tableau de facon automatique, sa serait vraiment l'ideal. smile
-=-=-{}=- avseth -={}-=-=-

5

Merci Oankali, je vais continuer comme ça encore un moment alors, j'essayerai peut-être de créer un format de fichier pour un futur projet, mais j'en suis pas encore là ^_^

yaouank > bah dis donc t'es pas perfectionniste wink enfin dans ce cas ok, mais il y a des fois où ça vaut le coup d'automatiser smile

avseth > Non ça va, ça embrouille pas trop le code vu que j'utilise pas mal de include... Par contre j'ai 3 emplacements contenant du code pour chaque map...

6

Aoyama :
yaouank > bah dis donc t'es pas perfectionniste wink enfin dans ce cas ok, mais il y a des fois où ça vaut le coup d'automatiser smile

C'est surtout que j'aimerais voir ton soft le plus vite possible. wink
(je peux parler... ca fait combien de temps que je suis sur mon pong tout pourri ? Mais j'ai qques excuses: entre temps vacances au ski et developpement de bench.fxe)
Le pouvoir aux loutres !!!
(et aussi, vive le rose !)
mes petits programmes GP32: http://yaouank.gp32news.com