Posté le 29/11/2018 20:15
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 120 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
Citer : Posté le 29/11/2018 20:20 | #
Pratique !!!
Vous êtes fan de « The legend of Zelda ocarina of Time »,si c’est le cas allez voir ZeldaGAME
mon projet de jeu basic casio
Citer : Posté le 29/11/2018 23:54 | #
Déplacé dans la bonne section.
Pas une mauvaise idée ! Mais où initialises-tu Ans ?
Citer : Posté le 30/11/2018 00:11 | #
Donc si je choisis le troisième choix, Ans sera décrémeté de 0. Si je choisis le deuxième choix, Ans sera décrémenté de 1. pour le premier choix, il sera décrémenté de 2.
Ce qui fait que si on initialise Ans à une valeur égale au nombre de sous-menus, alors les indices correspondent. Pas mal, bien joué !
Citer : Posté le 30/11/2018 07:49 | #
Déplacé dans la bonne section.
Pas une mauvaise idée ! Mais où initialises-tu Ans ?
Merci, je croyais l'avoir bien placé
J'avais mis un 3 avant le premier commentaire, c'est corrigé.
Donc si je choisis le troisième choix, Ans sera décrémeté de 0. Si je choisis le deuxième choix, Ans sera décrémenté de 1. pour le premier choix, il sera décrémenté de 2.
Ce qui fait que si on initialise Ans à une valeur égale au nombre de sous-menus, alors les indices correspondent. Pas mal, bien joué !
C'est exactement ça, merci
Citer : Posté le 30/11/2018 10:43 | #
Pourquoi ne pas utiliser une "vraie" variable pour effectuer la même logique ? C'est risqué d'utiliser Ans surtout si d'autres opérations sont effectuées dans les Lbl.
De plus, utiliser Ans empêche dans la suite du code de passer d'un sous menu à un autre...
La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !
Citer : Posté le 30/11/2018 11:30 | #
Merci, je croyais l'avoir bien placé
Vie Communutaire c'est tout ce qui est lié à l'association, les changements de postes, etc. C'est assez rare que les topics aillent ici.
Pourquoi ne pas utiliser une "vraie" variable pour effectuer la même logique ? C'est risqué d'utiliser Ans surtout si d'autres opérations sont effectuées dans les Lbl.
Je crois qu'ici le but c'est justement de ne mettre que les Ans-1 dans les label et d'écrire toute la logique de branchement à la fin.
Citer : Posté le 30/11/2018 13:17 | #
Pourquoi ne pas utiliser une "vraie" variable pour effectuer la même logique ? C'est risqué d'utiliser Ans surtout si d'autres opérations sont effectuées dans les Lbl.
Non justement, le principe est de placer les opérations tierces en dehors des labels pour éviter les codes illisibles.
De plus, utiliser Ans empêche dans la suite du code de passer d'un sous menu à un autre...
C'est-à-dire ? Je ne vois pas en quoi cela bloque désolé.
Citer : Posté le 30/11/2018 14:44 | #
Non justement, le principe est de placer les opérations tierces en dehors des labels pour éviter les codes illisibles.
Oui oui j'ai bien compris ! Mais ma remarque concerne surtout l'utilisation de Ans. Si le soucis principal de cet astuce est la lisibilité, alors il ne faut clairement pas l'utiliser...
Déjà que je trouve ça dommage de ne pas utiliser les Lbl qui sont ici pour une fois pleinement justifiés parce qu'ils structurent bien le code (un sous menu par Lbl, avec la possibilité de passer d'un sous menu à l'autre sans passer par le menu principal grâce à Goto)...
D'ailleurs je suis curieux de voir en quoi c'est plus (+) lisible d'imbriquer des conditionnelles ensuite en fonction de la valeur de Ans pour gérer les opérations tierces, plutôt que de les laisser sagement chacune dans leur Lbl... Pour moi c'est juste déplacer le problème. A moins que tu n'envisages une meilleur façon de gérer ta partie logique en fonction de Ans, auquel cas il faut compléter l'astuce.
C'est-à-dire ? Je ne vois pas en quoi cela bloque désolé.
Je crois qu'ici le but c'est justement de ne mettre que les Ans-1 dans les label et d'écrire toute la logique de branchement à la fin.
Pour faire simple : Ans c'est du one shot. Une fois que l'on sera rentré dans la partie logique après ce menu (qui n'a pas été rédigée ici mais qui sera de type conditionnelle), la valeur contenue dans Ans sera absolument inconnue car on aura fait d'autres opérations. Par conséquent, on ne peut pas donner une nouvelle valeur à Ans pour changer de sous menu sans passer par le menu principal. Et ça ça craint. Exemple : on se trouve dans le sous menu du jeu et on veut passer dans le sous menu des options ou dans le sous menu pour quitter. Dommage s'il faut se retaper le menu principal...
Alors qu'on peut garder cette même astuce et juste utiliser une vraie variable. Dans ce cas on sait exactement dans quel sous menu on est et on peut changer de sous menu sans passer par le menu principal, comme une vraie machine à état ! Et c'est clairement mieux niveau lisibilité et débogage.
Ce n'est pas la première "astuce" que l'on voit avec Ans ces derniers jours, mais je déconseille fermement. Il existe de trop nombreuses causes qui mènent à une modification de Ans. Surtout que là c'est pour gratter une pauvre variable qui sera utile de toute façon...
Do
If A = 4
Then
Menu "Titre ", "Choix 1", 1, "Choix 2", 2, "Choix 3", 3, "Quitter", Q //Menu type.
Lbl 1 //Le choix 1 du premier menu
A-1->A
Lbl 2 //Second choix du menu 1
A-1->A
Lbl 3 //Troisième choix du premier menu
A-1->A
Lbl Q //Quitter
A-1->A
Else If A = 3
Then // Faire les trucs du 1e sous-menu
// retourner au menu principal : 4->A
// revenir à l'état initial de ce sous-menu : 3->A
// passer au sous menu 2 sans passer par le menu principal : 2->A
// passer au sous menu 2 sans passer par le menu principal : 1->A
// quitter depuis ce sous menu sans passer par le menu principal : 0->A
Else If A = 2
Then // Faire les trucs du 2e sous-menu
[...]
Else If A = 1
Then // Faire les trucs du 3e sous-menu
[...]
Ifend
Ifend
Ifend
Ifend
LpWhile A
La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !