| Précédant 1 2 3 Suivant | |
| Auteur | Message |
|---|---|
|
Rien d'impossible |
Salut
Je suis en ce moment en train de coder un tout petit jeu en tour par tour, le but est simple : le joueur choisi entre 3 option (attaque, technique, objet) et suivant le choix bah sa fait ce qu'il faut faire Enfin bref, le jeu se nomme "Total Guerre" (cherchez pas de signification, sa m'a pris 2 seconde à prendre ce titre) comme ces un jeu en cour de devellopement, sa sert a rien un bon titre ^^ Il est en console ! Le problème :Je suis en train de faire l'IA de l'ennemie de l'attaque. J'explique vite fait, l'ordinateur choisi un nombre au hasard et suivant le nombre (entre 1 et 3) il fait l'action désigné : 1 = Attaque, 2 = technique, 3 = objet ! Ce générateur de nombre aléatoire je l'ai aps encore mis Alors voila : J'ai créer ces variables : Code : c
Ce que je voudrais faire : Code : c
Ben figuré vous que sa, sa marche ! C'est ensuite que viens le problème : Le tour est finie, aucun des perso n'est mort, on fait donc une boucle pour ré-afficher le menu des choix !Et sa la ou sa coince !! En effet, quand on revient grâce à la boucle, bah on revient au variables initial qui sont Code : c
Donc le code se répète indéfiniment ! Que faire ?-Des pointeurs ? -Mettre les variables en CONSTANTE ? -Placer les variables dans une autre fonction, en créer une spécialement pour eux ? Voila le code source de la page "ChoixAttaque.c" Code : c
Je ne vous donne pas les autres pages, sa servirait a rien De plus Objet et Technique ne sont pas encore coder ^^Edit : après relecture; sachez que si vous voyez "MenuCombat ();" sachez que c'est la fonction ou le joueur choisi ce qu'il fait. il faut bien sur qu'il fasse attaquer pour que le code revienne... ces d'ailleurs là le problème, je pense qu'il faudrait créer une autre fonction pour enregistré les PV du joueur et ennemi, mais je sais pas faire sa ^^
Dernière édition le 01/10/2008 à 17:41 par le testeur
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
|
|
bonjour
Ca me rappelle un exemple de jeu qui est dans le tuto de mateo21 .a+ |
|
Macaque en détresse! |
Crée tes variables dans le main et utilise des pointeurs pour les utilisés dans tes fonctions.
PS:Je crois que int serait très suffisant pour tes variables.
|
|
Ca marche ! |
Devant tes variables PV... (bref celle qui doivent rester), mets "static"
.A plus. EDIT : Code : c
Dernière édition le 01/10/2008 à 19:02 par steckdenis
Le meilleur mot de passe au monde est "M@téo21" : majuscule/minuscule, chiffres/lettres, et caractères spéciaux
|
|
Rien d'impossible |
Merci mais static fais quoi ?
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
|
Il faut prendre les choses en riant, c'est essentiel. |
En effet?
Static est-il un certain type de constante?
On peut rire de tout, mais pas avec n'importe qui.
~Desproge Programmeur VB.net (Tuto SdZ en Cours) Futur Programmeur LBasic :D |
|
Vive le Québec libre!... Et le logiciel libre ^^ |
"static" permet d'initialiser les variables à la première exécution de la fonction, mais pas aux autres ( Elles garderont leur valeur précédente ).
Mais, bon, selon moi, le mieux serait de déclarer les variables dans ton main et de les passer en paramètre... Citation : le testeur 1 = Attaque, 2 = technique, 3 = objet
Pour plus de compréhension, tu pourrais aussi utiliser un enum ou des constantes |
|
Rien d'impossible |
ces ce que je voudrais faire (plus logique) mais comment je l'ai rend accessible de tous ?
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
|
Il faut prendre les choses en riant, c'est essentiel. |
Bah tu les déclare en Public, nan?
On peut rire de tout, mais pas avec n'importe qui.
~Desproge Programmeur VB.net (Tuto SdZ en Cours) Futur Programmeur LBasic :D |
|
Ca marche ! |
Les statics sont beaucoup mieux, car tu garde les avantages des variables locales (justement, locales, donc pas moyen de malencontreusement les écraser) avec les avantages des globales (elles ne sont pas temporaires).
Si tu veux qu'elles soient accessibles partout, le mieux est encore de les mettre globales. A plus.
Le meilleur mot de passe au monde est "M@téo21" : majuscule/minuscule, chiffres/lettres, et caractères spéciaux
|
|
|
C'est juste que ton code est mal pensé, déjà l'idée à la base serrait d'avoir toutes les infos concernant ton joueur stockées dans une structure, de même pour les infos de l'ennemi.
Après il te suffit de modifier tes fonctions pour qu'au lieu de prendre les valeurs locales elles prennent les valeurs de ces structures. Code : c
PS: et les variables globales c'est le MAL ]:) L'avantage de cette methode, c'est qu'il est possible, en agrandissant la structure, de tout enregistrer sur le joueur dedans, et concernant les monstres, d'avoir pour chaque monstre ses types d'attaques, dommages et particularités.
Dernière édition le 02/10/2008 à 17:38 par Tryss
|
|
Rien d'impossible |
Salut
Je te remercie du code, mais je ne vais pas utiliser un code que je comprend pas et que je ne pourrais pas refaire ^^ Pourrais tu m'expliquer le code ?
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
Nice to logr 'am
|
Pour faire simple Code : c
Pour aller chercher variable1 ont fait structure->variable1. Pour plus amples information -> http://www.siteduzero.com
Dernière édition le 02/10/2008 à 18:33 par frdemahieu
On peut tout faire lorsque l'on commence avec rien.
On attends vos tuto et vos news !!! |
|
Rien d'impossible |
(dsl double post)
J'ai essayé avec Static, sa marche mais seulement pour les PV de l'ennemi. En effet, malgré l'attaque de l'ennemi sur le PV du joueur, bah il baisse pas ^^
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
|
|
Une structure c'est une super-variable qui regroupe des variables, un peu comme une grosse boite ;)
Contrairement a un tableaux, les variables peuvent être de types differents (on peut même faire des structures qui contiennent des structures )Pour acceder à un element de la structure on utilise l'operateur . : structure.variable Mais lorsqu'on a passé la structure par adresse, il faudrai faire *(structure).variable qui est plus simplement remplacé par structure->variable (plus pratique, mais les deux ecritures sont equivalentes) PS: essaye de declarer tes static une seule fois ^^
Dernière édition le 02/10/2008 à 18:45 par Tryss
|
Nice to logr 'am
|
Bha c'est comme j'ai dit quoi.
On peut tout faire lorsque l'on commence avec rien.
On attends vos tuto et vos news !!! |
|
Rien d'impossible |
un pote a mon lycée a essayer ce week de trouver une soluce sans utiliser le tableaux des variables, je vous dis ce que sa donne des qu'il me donne les codes ! ^^
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
Nice to logr 'am
|
C'est pas un tableau c'est une Structure
On peut tout faire lorsque l'on commence avec rien.
On attends vos tuto et vos news !!! |
|
Rien d'impossible |
Oui, mais en gros c'est un tableau pour classer des variables
Le testeur, pour vous servir ^^
Webmestre : HTML et CSS (très peu PHP) Scénariste et un peu graphiste. En cours d'apprentissage du C/C++ sur le SDZ (enfin, une relecture) |
Bière qui roule perd toute sa mousse
|
Désolé, mais fredmahieu a raison. Les tableaux c'est vraiment tout autre chose que les structures. On peut pas comparer ...
On a besoin de vos News !! || Et de vos tutos !!
Spéciale dédicace : Un clavier azerty en vaut 2. Autre dédicace (animalmuppet) :Et oui, Noël approche! |
| Précédant 1 2 3 Suivant | |