Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Problèmes de programmation
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Problèmes de programmation

Posté le 28/10/2013 15:10

Salut à tous ! Jusqu'ici, mes petits problèmes ont été réglés plus facilement que via le forum mais là j'ai du poster ici pour ce petit problème :

Pour mettre du texte à l'intérieur d'un de mes choix de menu (ici , par exemple C=2 pour l'aide dans mon menu) j'ai mis :

If C=2 // Si le 2ème choix est pris (ici Aide)
Then
Text 1,40,"Dans ce jeu,"◢ // J'ai écrit donc Dans ce jeu,
Ifend


Évidemment, il y aura d'autres textes avant le IfEnd et après le premier Text, là c'est juste pour l'exemple.

Mon problème est que quand je choisit le 2 (Aide), il y a un 2 en haut à droite et ça me remet au menu des programmes quand je fait Exe. Peut-être est-ce a cause du choix des coordonnées (1,40) ou autres, je ne sais pas car je n'ai pas réussi a le faire marcher :/

Voilà, si quelqu'un a une réponse, j'en serais ravi puisque je dois aussi mettre du texte dans Crédits x) (Au passage, où se trouve "Rank" pour faire quitter quand le joueur appuie sur quitter ?)

ElToredo


Theprog Hors ligne Membre Points: 1447 Défis: 20 Message

Citer : Posté le 01/11/2013 20:40 | # | Fichier joint


le curseur est virtuel !
c'est le point d'ancrage dans l'ecran de ton Texte
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 01/11/2013 20:43 | #


J'me disait aussi , si c'est le carré noir en haut a droite , alors il est e haut a droite

Ajouté le 05/11/2013 à 13:32 :
Salut , voilà un nouveau problème , je voulais pas vraiment monter mon programme maintenant (même s'il n'a quasiment rien la) mais c'est pas grave , il est en fichier joint

J'aimerais faire 2 choses : Déjà , je fait suivre les questions (pour l'instant il n'y en a que 5 sur 10 vides , enfin il n'y en a pas du tout juste les guillemets) , le problème c'est que les questions se suivent sans s'arrêter pour répondre , normalement un disp suffirait a chaque fois mais la j'y arrive pas , j'ai enlevé le ranint pour pas que ça pose plusieurs fois la même question , je sais pas encore utiliser bien les matrices donc j'ai choisit cette option :/

La deuxième chose (je l'ai pas encore mis en place) , j'aimerais faire que quand la personne a répondu a toutes les questions juste , elle gagne une nouvelle fonctionnalité dans le menu , ca ce n'est pas un problème je sais comment faire mis j'aimerais que ce nouveau "sous-menu" , catégorie en gros ne soit pas après quitter (le menu comprend Jouer , aide , crédits , quitter) puis Bonus mais avant quitter et pas après , le problème c'est que je ne sais pas comment remplacer quitter par bonus et que quitter soit après x:

Voilà , j'espère que vous pourrez m'aider (j'ai pas encore fait les choix des flèches , seul les deux bugs m'importent pour le moment ;( )
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 05/11/2013 17:39 | #


Si les questions se suivent sans s'arrêter, c'est que tu n'as pas mis de boucle Getkey.
Comme ceci :
'1re question
While Getkey≠0
WhileEnd
While Getkey=0
WhileEnd
If Getkey=...
Then...
IfEnd
'2nde question


Et pour le menu, bah, une bête condition suffira :/ (If A=0 Then Locate...Else Locate blablabla)
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 05/11/2013 18:09 | #


Effectivement j'avais pas mis de getkeys mais du coup je suis perdu , pourquoi While Getkey =/ 0 et Whileend , le tout 2 fois ?
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 05/11/2013 18:28 | #


Regarde bien la différence entre les deux While, le premier comporte le signe !=, l'autre =
Ça oublie l'utilisateur a lâché la touche pour continuer le programme.
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 05/11/2013 18:30 | #


D'accord , les while c'est pas facile pour moi , et le If GetKey = ... , ca sert a quoi puisque n'ai une 1:... , un 2:... jusqu'a 4 ?
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 05/11/2013 18:33 | #


Ah oui, ça c'est une petite astuce qui vaut le détour
Supposons que tu appuies sur 1 à la première question pour choisir la réponse 1 (supposons seulement, ça peut très bien fonctionner différement). Comme ton programme est très rapide (enfin "très"...tout est relatif ), il affiche tout de suite la seconde question. Sauf qu'à ce moment là tu as encore le doigt sur le "1", donc il va sélectionner la 1re réponse sans que tu ais eu le temps de réagir.

En mettant un While Getkey≠0 WhileEnd entre les deux, tu as une boucle qui tourne tant que tu appuies sur une touche, donc tu dois relever le doigt avant qu'il n'affiche la question 2

Ensuite Il y'a une boucle qui tourne tant que tu n'appuies pas sur une touche, pour que cette fois tu aies le temps d'appuyer sur une touche.

Je n'ai pas pris en compte ce qu'il peut éventuellement y avoir entre deux questions ("Bravo c'est la bonne réponse appuyez sur EXE" par exemple). Si c'est le cas alors c'est différent, mais c'était juste pour expliquer la méthode.
J'espère que c'est clair
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 05/11/2013 18:46 | #


Oui , pour une fois j'ai assez bien compris , c'est pas mal cette astuce mais effectivement il y a des trucs entre et donc il me faut une autre méthode , sinon je vais devoir utiliser lesl istes ou matrice :/

Merci quand même c'est cool

Ajouté le 05/11/2013 à 23:20 :
Pour les questions je sais pas comment faire du coup pour afficher le texte entre 2 Qui est assez important

Pour mon "déblocage" , j'ai fait la matrice et l'ai mis a la fin , au moment de faire le Then "nouveau menu" , je fait comment pour que ce menu rentre dans la boucle de mon menu pour qu'il soit affiché en gros ?

Ajouté le 06/11/2013 à 07:34 :
Je réexplique pour le déblocage

A la fin de mon code , après l'affichage du score I (Nombre de coups) , j'ai :

If I=1
Then 1->Mat U[1,1]
IfEnd


J'ai un programme avec a l'intérieur l'initialisation ( {1,1}->Dim Mat U )

Et j'ai rajouté dans la boucle de mon viewwindows :

If Mat U[1,1]
Then Text 28,10,"Bonus"


Est-ce que ce que j'ai écrit correspond a un déblocage d'une nouvelle catégorie si I=1 ? Je pense qu'il y a des fautes :/
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 06/11/2013 18:31 | #


Non, c'est bon, par contre l'initialisation ne dois pas être dans le programme principal.
Sinon, il remet la matrice à 0 et ton bonus est à nouveau bloqué
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 06/11/2013 18:33 | #


Oui je sais tkt Positon C'est réglé ça , le problème actuel c'est le code de mon nouveau bonus , si je le recopie entièrement juste pour changer entre 1 et 100 par 1000 , ça va faire lourd pour rien , totoyo m'a donné une solution mis elle est bizarre et change ma prog
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Alex_1186 Hors ligne Membre Points: 1215 Défis: 46 Message

Citer : Posté le 06/11/2013 18:46 | #


Ah un truc: ne copie JAMAIS un long code identique ou presque à deux endroits d'un programme!
Déjà c'est ultra-lourd pour rien, et on peut "facilement" l'éviter avec "quelques" conditions...
(celui qui dit ça en a bavé à mort pendant une dizaine d'heures au total sur la scène finale de Timeless...)
Projets que je soutiens
Projets que je soutiens
Robscape 2 de Ray
Les tests vidéo de Marmotti
Mes projets
Mes projets
Une dizaine de projets top secrets...

Timeless Remix Airwolf
"And the dream will never die..."
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 06/11/2013 18:48 | #


Ah ah mais j'ai pas d'idées de condition pour que ça le refasse :/ J'ai vu les conditions de totoyo mais c'est incompréhensible

Pareil pour questions pour un champion je suis bloqué sur la suite des questions qui s'arrête pas , avec texte enter 2 bien sûr , c'est chiant )';
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 06/11/2013 19:07 | #


Je vois pas en quoi c'est incompréhensible. Lorsque tu génère un nombre aléatoire pour ton jeu, tu le génère entre 0 et 100, puis tu l'affecte à une variable.
Là, tu met juste

"Si le joueur joue entre 1 et 100"⇒RandInt#(0, 100)->A
"Si le joueur joue entre 1 et 1000"⇒RandInt#(0, 1000)->A

Bref, et pour le choix, tu peux faire

"Niveau 1 : 1" [green]'On affiche un petit texte[/green]
"Niveau 2 : 2" [green]'pour demander la difficulté[/green]
Do [green]'Boucle pour éviter que le joueur rentre 3, -4, etc.[/green]
?->R
LpWhile R≠1 And R≠2 [green]'La boucle tourne tant que le chois n'est pas correct[/green]
R=1⇒RandInt#(0, 100)->A [green]'On associe la valeur demandée en[/green]
R=2⇒RandInt#(0, 1000)->A [green]'fonction du chose de l'utilisateur[/green]

[green]... Puis tu lance le jeu comme d'habitude[/green]

Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 06/11/2013 19:10 | #


Ou même RanInt#(0,10^(R+1))
(ça donne 10² si R=1 et 10^3 si R=2)
Sachant que tu peux utiliser la touche *10^x pour ça, en bas de ton clavier
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 06/11/2013 19:12 | #


Oulà, lui complique pas la vie
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Alex_1186 Hors ligne Membre Points: 1215 Défis: 46 Message

Citer : Posté le 06/11/2013 19:12 | #


Il n'y a rien d'incompréhensible là-dedans!
Si tu veux de l'incompréhensible j'en ai à profusion!
Projets que je soutiens
Projets que je soutiens
Robscape 2 de Ray
Les tests vidéo de Marmotti
Mes projets
Mes projets
Une dizaine de projets top secrets...

Timeless Remix Airwolf
"And the dream will never die..."
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 06/11/2013 19:24 | #


Dark j'ai pas trop compris :huh:
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Kirafi Hors ligne Membre Points: 2180 Défis: 10 Message

Citer : Posté le 06/11/2013 19:25 | #


Encore plus simple les gens
Si niveau bonus non débloqué, 100->A
Si niveau bonus débloqué, 1000->A
RanInt#(0,A)
iPod
Pour des parties rapides
Jusqu'où pourras-tu aller dans ce jeu "partie rapide" qu'est Dextris (élu Jeu Du Mois)
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
Autres
Franchement ils valent le coups
Deviens l'amiral de la marine dans SeaRush (jeu concours) (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 06/11/2013 19:26 | #


Mais non Vous avez pas compris

J'ai la matrice qui fait que si le mec fait 1 seul coup pour trouver le chiffre , il débloque miraculeusement le niveau "Bonus" qui s'intègrera alors au menu , pas de Si niveau bonus ou pas x)
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Kirafi Hors ligne Membre Points: 2180 Défis: 10 Message

Citer : Posté le 06/11/2013 19:28 | #


Ben c'est ça alors :
Si il joue dans le mode normal, 100->A
Si il joue dans le mode Bonus, 1000->A
RanInt#(0,A)

@Positon : Pour économiser 1 octet tu peux faire RanInt#(0,100^A)
iPod
Pour des parties rapides
Jusqu'où pourras-tu aller dans ce jeu "partie rapide" qu'est Dextris (élu Jeu Du Mois)
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
Autres
Franchement ils valent le coups
Deviens l'amiral de la marine dans SeaRush (jeu concours) (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 06/11/2013 19:29 | #


Ben pour s'intégrer que si tu l'a débloqué, il faut une condition.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 112 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd