Fonction TIR pour jeu en SDL. - C - Programmation
Marsh Posté le 09-06-2013 à 08:16:47
commence par la fenêtre
Marsh Posté le 09-06-2013 à 12:16:35
Salut,
ce que je peux te conseiller, c'est d'abord de faire ton jeu sans aucune texture / image, juste avec la console, en faisant des printf.
Une fois que ton algo sera fonctionnel alors tu rajouteras la SDL, qui est assez simple d'utilisation.
C'est ce que j'ai fait pour un projet perso, en 3 jours, j'ai reussi a faire un tetris.
Marsh Posté le 09-06-2013 à 15:36:08
Merci Djswiti pour ta réponse Le problème c'est que mon projet (qui est scolaire) est déjà pas mal avancé dans d'autres domaines, et ce que j'arrive à faire en console ne fonctionne pas trop quand je l'intègre au projet. En SDL, mon perso se déplace, interagit avec le décor etc etc. Me manque la fonction TIR... Je vais suivre ton conseil et retester en console ! Si quelqu'un à d'autres solutions... Merci encore.
Marsh Posté le 10-06-2013 à 01:00:51
En même temps, pas sûr que le C soit vraiment bien choisi pour du jeu vidéo
Sinon, tu peux faire ça :
Code :
|
Il te faudra un truc qui gère toutes les instances du jeu (voilà pourquoi perso j'ai toujours fait en C++ ), mais en C tu peux tenter un truc comme ça :
Code :
|
Normalement, ton jeu doit être comme ça dans le main :
Code :
|
Donc, le tick serait l'appel de UpdateIC(...), le Draw DrawIC (où tu fais tes blits en fonction des coordonnées x & y et de l'image associée de tout les objets contenues dans ta structure)
En C++, étant donné que tu peux faire du polymorphisme, c'est nettement plus pratique pour ce système là.
Et je vois pas pourquoi faire des printf ça l'aiderait, que ce soit avec la SDL ou en console c'est pareil, en fait c'est carrément plus chiant en console
L'intégration d'un système comme ça en C peut être assez chiant, mais une fois mis en place, le reste est facile.
edit : Je suis pas programmeur C, donc y'a probablement des espèces de résidu de C++ zarb dans mon code, il me semble qu'il faut préciser le mot-clef struct à chaque fois qu'on se sert d'une variable de type structure, ou alors via un typedef mais la flemme de vérifier
Marsh Posté le 10-06-2013 à 18:50:09
sx72100 a écrit : Merci Djswiti pour ta réponse Le problème c'est que mon projet (qui est scolaire) est déjà pas mal avancé dans d'autres domaines, et ce que j'arrive à faire en console ne fonctionne pas trop quand je l'intègre au projet. En SDL, mon perso se déplace, interagit avec le décor etc etc. Me manque la fonction TIR... Je vais suivre ton conseil et retester en console ! Si quelqu'un à d'autres solutions... Merci encore. |
En fait, l'essayer en console te prouve que tu fais bien ce que tu penses faire.
"afficher un X a la collision", etc.
Apres si tu as deja une partie graphique 100% fonctionnelle tu peux tres bien le faire directement en mode graphique, et donc si ton jeu est deja tres avance, tu peux en effet le faire directement...
Dis toi que pour lancer un tir, il faut simplement que tu fasses comme si tu deplacais un joueur (mais un tir est une nouvelle entite), mais sans appuyer sur la touche continuellement.
Tant que tu ne touches pas d'objet (ni de personnage) alors le tir continue dans sa trajectoire.
Marsh Posté le 10-06-2013 à 21:03:58
Merci pour vos conseils
Mon groupe s'est inspiré de ce que m'a proposé Terminapor !
Merci beaucoup pour votre aide à tous !
Marsh Posté le 08-06-2013 à 17:46:12
Bonjour à toutes et à tous
Je viens vous demander de l'aide en C/SDL ! Je suis loin d'être un expert, et j'ai des difficultés sur une fonction précise. Je réalise un jeu C/SDL, et je souhaiterai que mon personnage puisse tirer (des balles) ainsi que les ennemis. Cependant je ne sais pas trop par où me jeter.
J'ai lu sur ce forum des topics ressemblant où il était question de tableau dynamique avec des structures et pointeurs.
Quel est votre avis, quelle vous semble être la manière la plus simple ?
Merci d'avance pour votre aide à tous.
Amicalement.
SX