Bonjour, je suis confronté a un probleme dans mon programme pour mon projet d'informatique.
En grandes lignes, je dois faire un jeu calqué sur Space Invader...bref.
Notre professeur nous a demandé d'appliquer un type opaque sur nos structures ; chose que j'ai faite.
Cependant, voila mon soucis:
J'ai un module projectile.c avec la definition de la structure PROJECTILE a l'interieur. Ce module gere la creation de projectile sous forme d'une liste chainée. Elle gere egalement les collisions entre elles, la suppressions de projectiles selon certaines conditions,...
J'ai aussi un module enemy.c avec la definition de la structure ENEMY. Sur le meme principe, elle gere la creation d'enemies, leur suppresions, leur dessins,...
Ce que je souhaite faire, c'est pouvoir controler la collision entre un projectile et un enemie. Je souhaite le faire a l'interieur de mon module projectile car il y a deja une fonction projectile_collision(PROJETILE** tete_robot_projectile) qui s'occupe de cela.
Mais bien entendu si j'ajoute un argument "ENEMY** tete_enemy" dans la definition de ma fonction (dans projectile.h), le compilateur me dit que ENEMY n'est pas declaré. Ce qui est normal.
Donc existe-t-il un moyen pour que je puisse faire comprendre a ma fonction que ENEMY existe bien sans devoir faire une redeclaration dans projectile.h de la structure ENEMY avec un typedef. ce qui entraine une erreur de compilation ?
Merci d'avance pour vos aides.
Partager