| Problèmes pour Asteroids :D | |
|
|
Auteur | Message |
---|
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:05 | |
| Salut à tous ! Bon alors j'ai un petit problème, que beaucoup (je pense) sauront résoudre, car c'est quand même un poil basique Il s'agit d'un problème au niveau de la manipulation de fichiers texte ! En effet, souhaitant mettre en place dans mon jeu un système de sauvegarde (qui garde la vie, la map courante et d'autres infos dans un fichier texte), je ne comprends pas bien ceci (tiré du manuel d'utilisation de GM6) : - Citation :
- Il est souvent utile d'utiliser des externes dans les jeux. Par exemple, vous pourriez vouloir créer un fichier décrivant à quels moments certaines choses doivent se passer dans votre jeu. Vous pourriez également souhaiter sauvegarder des informations qui seront utilisées lors d'une prochaine exécution du jeu (par exemple, sauvegarde de la room courante). Les fonctions suivantes permettent de lire et d'écrire des données dans les de type texte :
file_text_open_read(fname) Ouvre en lecture le fichier de nom fname. La fonction retourne l'id du fichier qui devra être ensuite utilisé dans les autres fonctions. Il vous est possible d'ouvrir plusieurs en même temps (32 au maximum). N'oubliez pas de fermer les dès que vous n'en avez plus besoin. file_text_open_write(fname) Ouvre en écriture le fichier de nom fname, créant ce dernier si celui-ci n'existe pas déjà. La fonction retourne l'id du fichier créé qui devra ensuite être utilisé dans les autres fonctions. file_text_open_append(fname) Ouvre en mode ajout le fichier de nom fname, créant ce dernier si celui-ci n'existe pas déjà. La fonction retourne l'id du fichier qui devra ensuite être utilisé dans les autres fonctions. file_text_close(fileid) Ferme le fichier d'id fileid. file_text_write_string(fileid,str) Ecrit la chaîne str dans le fichier d'id fileid. file_text_write_real(fileid,x) Ecrit le nombre réel x dans le fichier d'id fileid. file_text_writeln(fileid) Ecrit un caractère newline (passage à la ligne suivante) dans le fichier d'id fileid. file_text_read_string(fileid) Lit une chaîne à partir du fichier d'id fileid puis retourne la chaîne lue. file_text_read_real(fileid) Lit un nombre réel à partir du fichier d'id fileid puis retourne la valeur lue. file_text_readln(fileid) Saute le reste de la ligne courante du fichier d'id fileid puis se place au début de la ligne suivante. file_text_eof(fileid) Indique si l'on a atteint la fin du fichier. Prenons l'exemple de file_text_open_read(fname), pour lequel j'ai fait quelques tests afin de comprendre la syntaxe de la fonction... Dans tous les cas, je cherchais "fname" : - Le premier, un peu débile, consistait à juste mettre le nom du fichier (en l'occurence, test_texte_sauvegarde) : naturellement, ça n'a pas marché... C'était pour la forme, celui-là.
- J'ai ensuite mis le nom du fichier puis de son extension afin d'avoir un nom complet... En marquant test_texte_sauvegarde.txt, toujours aucun succès. Je m'y attendais un peu, donc je continue.
- Je me dis : bah c'est peut être par ce que c'est ton fichier test_texte_sauvegarde qui est pas à côté de ton éxecutable GM ! Aussitôt dit, aussitôt fait, le fichier est mis dans un fichier à côté de l'éxecutable GM... Toujours aucun résultat.
- Après ça, je décide d'utiliser la manière bourrine, et de donner tout le chemin de mon fichier : je marque ainsi file_text_open_read(C:\Documents and Settings\HP_Propriétaire\Mes documents\GM\test_texte_sauvegarde.txt)... Eh bien non, on me dit qu'il y a un signe inconnu (et là, j'avoue que je pète un cable, par ce que c'était pour moi la solution la plus plausible) : à savoir l'antislash, je pense.
Donc (comme vous pouvez le voir), j'ai beau essayer, pas moyen de trouver comment écrire la fameuse "fname", décrite en 2 lignes dans ce tutoriel... Donc, si vous pouviez m'aider et me dire comment faire, ça serait cool, merci (oui par ce que sinon sans ça, pas de sauvegarde, donc c'est caca boudin ). A noter : je tourne sur Windows XP, et je compte faire tourner mon jeu sur GM8 Lite : c'est donc peut être que la fonction sur GM8 Lite a changé de syntaxe depuis la GM6... En espérant une aide rapide pour avancer dans mon projet, Myriade.
Dernière édition par Myriade le Sam 13 Mar 2010 - 13:58, édité 1 fois |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:19 | |
| pour lire un fichier texte faut qu'il soit dans le meme dossier que ton jeu
ensuite tu fait
f = file_text_open_read("nom_de_ton_fichier")
pis tu lis file_text_read_string(f) par exemple
ensuite tu ferme avec file_text_close(f)
Dernière édition par onilink_ le Ven 12 Mar 2010 - 19:14, édité 1 fois |
|
| |
bibi675 Utilisateur confirmé: Rang *****
Messages : 2456 Localisation : Oise Projet Actuel : Jeu par navigateur original
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:23 | |
| Les guillemets ! |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:28 | |
| ouai mais ça c'est logique pis c'est sur meme puisque c'est une chaine de caracteres.En tout cas le probleme venais certainement du fait qu'il faut assigner la fonction a une variable... |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:33 | |
| - bibi675 a écrit:
- Les guillemets !
oui ca fonctionnera peut etre mieux, je pense . sinon, c'est un probleme de game maker... |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 18:54 | |
| J'avais pas pensé aux guillemets... J'essaye ça tout de suite pis j'vous dit ce qu'il en est. |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 19:44 | |
| Okay ça marche... Mort de rire, me faire avoir par de vulgaires guillemets, quel noob Merci à vous, réponse trouvée |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 19:47 | |
| ca arrive de se trompé, tant qu'on refait pas la meme erreur apres |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Ven 12 Mar 2010 - 20:14 | |
| Tu m'étonnes... Je suis pas prête de l'oublier à nouveau, celle là |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 14:08 | |
| Bon, bah j'ai de nouveau un problème... Et donc pour simplifier, je le poste ici et je renomme ce sujet en "problèmes pour Asteroids", ça évitera de topicker à tout-va pour des questions qui peuvent avoir des réponses (très) rapides Cette fois-ci, je ne vois même pas mon erreur : mon vaisseau devrait tourner et se déplacer normalement, mais lorsque je souhaite tourner, il se met un peu à pas tourner comme les lois de la physique devraient lui imposer :p Le principe de déplacement de mon vaisseau devrait se résumer en ces points : - On initialise une variable direction, qui désigne un angle (en gros)
- Quand on appuie sur droite ou gauche, la direction (donc l'angle) est modifié
- Quand on appuie sur haut, le vaisseau va dans la direction calculée
- Quand on appuie sur rien ou qu'on appuie sur bas, le vaisseau freine jusqu'à l'arrêt
Ci-contre le GMK pour que vous puissiez m'aider de manière directe (pas besoin de tout expliquer, vous avez tous les trucs en mains direct), car un bon téléchargement vaut mieux qu'un long discours : http://www.zshare.net/download/736579359ba4de41/Toutefois, pour les feignasses, voici le code de déplacement de mon vaisseau (je précise que le sprite de mon vaisseau a été mis en counter clockwise en 72 frames et sa position initiale est la droite), que j'ai mis en évènement step classique : on ne sait jamais, peut-être est-ce évident comme faute (du style, une faute de code ou autre), mais bon, si vous ne visualisez pas bien mon problème, le GMK est plus pratique - Code:
-
image_single=direction/5; speed=min(speed,12);
if keyboard_check(vk_up) { friction = 0; motion_set(direction + direction,speed + 0.3); }
else
if keyboard_check(vk_right) { direction-=5; }
else
if keyboard_check(vk_left) { direction+=5; }
else
if keyboard_check(vk_down) { friction += 0.05; }
else
if keyboard_check(vk_nokey) { friction += 0.035; }
else
if keyboard_check_released(vk_up) { friction +=0.035; }
Merci de me répondre vite, par ce que ça fait une bonne heure que je m'arrache les cheveux en ne comprenant pas pourquoi ça ne marche pas. |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 16:10 | |
| - Citation :
- if keyboard_check(vk_up)
{ friction = 0; motion_set(direction + direction,speed + 0.3); } pourquoi "direction +direction", de rajouté direction ne sert strictement a rien. Je supose que c'est ca ton probleme - Citation :
- Toutefois, pour les feignasses, voici le code de déplacement de mon vaisseau
et ceux qui on seulement GM7, comme moi |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 16:18 | |
| - Citation :
- pourquoi "direction+direction", de rajouté direction ne sert strictement a rien.
La fonction sort tout droit du CBNA Drag & Drop Decodeur... Je leur fait confiance, mais bon je vais tout de même voir si ta suggestion est exacte. |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 16:24 | |
| Je m'en doutais, ça ne change pas le problème, mais merci quand même Quelqu'un a une suggestion ? |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 16:30 | |
| je comprend pas ton probleme alors, tu souhaite voir quoi, j'ai copié ton script j'ai supprimer le "+direction" qui n'allait pas (chez moi) et voila le resultat : exemple_direction.gmkc'est ca que tu cherchais non ? |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 16:38 | |
| Pas totalement... Le vaisseau doit aussi tourner avec la rotation ! |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 17:26 | |
| ... rajoute "image_single=direction/5;" ou "image_angle=direction" (dans ton cas, ce sera le dernier) et limage tournera avec la rotation |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 17:53 | |
| J'ai déjà mis image_single=direction/5 sans succès, et image_angle c'est réservé à l'édition Pro :O Je sais que ça marche ! |
|
| |
Myriade Utilisateur confirmé: Rang ***
Messages : 606 Projet Actuel : Asteroids Chronicles
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 18:06 | |
| Problème réglé : il s'agissait en fait de mon sprite (qui, pour je ne sais quelle raison, fait bugger mon script... J'ai testé avec plein d'autres sprites et ça marche nickel). |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Problèmes pour Asteroids :D Sam 13 Mar 2010 - 18:10 | |
| - Myriade a écrit:
- J'ai déjà mis image_single=direction/5 sans succès, et image_angle c'est réservé à l'édition Pro :O Je sais que ça marche !
oui désolé, il faut mettre image_index a la place de image_single sinon, c'est louche que ce soit le sprite qui fasse tout bugué ... tant que ca marche edit : je me suis procuré GM8 Lite, je vais tout de meme voir ce qui ne va pas. edit 2 : j'ai cerné le probleme : image_index=direction/5 -> il faut mutiplier pas 2.5 et non pas par 5, tout simplement |
|
| |
Contenu sponsorisé
| Sujet: Re: Problèmes pour Asteroids :D | |
| |
|
| |
| Problèmes pour Asteroids :D | |
|