Posté le 09/05/2019 22:35
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 230 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 09/05/2019 22:42 | #
Il faut situer ton code, la tête de ta matrice... le bug pourrait être n'importe où, mais je penche pour la ligne 18.
Citer : Posté le 10/05/2019 07:02 | #
J'ai vérifiez plusieurs fois ma ligne 18 et les autres, il n'y a pas l' air d'avoir de bug. Qu'entend tu pars situer mon code.
Citer : Posté le 10/05/2019 07:11 | #
Ben donner le contexte pour que l'on ait une idée de ton code..
-Planétarium 2
Citer : Posté le 10/05/2019 10:19 | #
1= mur
[[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]
[[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1→mat A
Voici le code de ma matrice.
Citer : Posté le 10/05/2019 10:22 | #
Alors imaginons, que ton joueur soit sur la case (X ; Y).
Si ton joueur veut aller vers le haut, tu testes la case de la matrice (X ; Y-1) si cette case est égale à 0, elle est vide, donc tu peux y mettre ton joueur.
C'est le même principe pour le bas, la droite la gauche.
Citer : Posté le 10/05/2019 12:48 | #
Donc si j'ai bien compris, je peux écrire:
if mat A [x,y-1]≠0
then
break
else
if end
Citer : Posté le 10/05/2019 13:00 | #
Presque, inverse les coordonnées de la matrice, c'est [y, x]
-Planétarium 2
Citer : Posté le 10/05/2019 13:00 | #
Fais aussi attention au fait que les indices commencent à 1 et que y=1 est la ligne du haut.
Citer : Posté le 10/05/2019 13:19 | #
merci beaucoup, ce doit être donc :
if mat A [y-1,x]≠0
then
break
else
if end
Ajouté le 10/05/2019 à 13:22 :
Est ce que je doit l’insérer dans une boucle ?
Citer : Posté le 10/05/2019 14:39 | #
Tu dois l'insérer à chaque fois que tu testes les collisions, ce que tu fais dans le test te regarde. Le Break n'est que la logique du programme.
Citer : Posté le 10/05/2019 14:51 | #
Ok,merci