Seuls les membres ayant 30 points peuvent parler sur le chat.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » [Projet] Elphorina
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

[Projet] Elphorina

Posté le 30/12/2020 12:25

Bonjour !
Je suis en train de créer un jeu vidéo pour Graph Monochrome, je vous laisse pour l'histoire avec le README du dépôt Git :
Elphorina est un jeu pour Casio Graph Monochromes.

L'histoire : Dans le royaume d'Elphorina, deux camps se livrent une bataille sans merci pour une terre : le comté de Hannenbourg.

Vous êtes le réconciliateur, c'est-à-dire que vous avez le pouvoir de réconcilier les camps ennemis.

Vous devez donc vous rendre dans le comté d'Hannenbourg, pour arrêter cette guerre, donc vous vous enfermez 2 mois dans votre maison pour réviser vos secrets de magiciens.

Au bout de ces 2 mois, on a oublié de vous dire un petit détail : le royaume a été ravagé par une tempête, qui a tout détruit sur son passage.

Votre but ? Le reconstruire pour pouvoir passer.

Mais vous ne pourrez pas toujours ne mettre qu'un bout de bois ! Il faudra faire preuve d'une grande ingéniosité pour reconstruire le chemin...



Je vais avancer progressivement là dessus, en attendant vous pouvez trouver le dépôt (mis à jour régulièrement) ici : https://gitea.planet-casio.com/Potter360/Elphorina

Enjoy


Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 10/01/2021 21:24 | #


Non, en fait je me suis trompé dans mon message, j'ai bien mis ==...
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Lephenixnoir En ligne Administrateur Points: 19128 Défis: 142 Message

Citer : Posté le 10/01/2021 21:26 | #


D'accord. Je vois aussi que cette remarque par KBD2 semble être passée complètement inaperçue (ce qui, volontairement ou pas, donne l'impression que tu ne lis qu'à moitié les réponses >_>).
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 10/01/2021 21:29 | #


Non non, j'avais changé mais il y a eu apparement un problème de sauvegarde, je vais voir ca...
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Dark storm En ligne Membre d'honneur Points: 11292 Défis: 176 Message

Citer : Posté le 11/01/2021 07:59 | #


Tu sais, le copier coller ça existe, et ça permet d'éviter ce genre d'erreurs quand tu partage ton code.

Pour la sauvegarde, prends le réflexe de ctrl+s très régulièrement
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 12/01/2021 19:52 | #


Bonjour,j'ai changé <= en < comme m'a dit Kbd2 mais ça ne change rien ...
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Kbd2 Hors ligne Membre Points: 215 Défis: 0 Message

Citer : Posté le 12/01/2021 22:40 | #


All it does is prevent a buffer overflow crash.
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 13/01/2021 13:59 | #


Oh yes, thanks !
Donc, si vous avez une idée...

Ajouté le 15/01/2021 à 17:26 :
Help
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Dark storm En ligne Membre d'honneur Points: 11292 Défis: 176 Message

Citer : Posté le 15/01/2021 17:34 | #


Dark storm a écrit :
On te répondra quand tu aura décrit et isolé ton problème, ce que tu as fait, ce que tu n'a pas fait, que tu pense faire, et prouvé que t'as un minimum bossé avant que les autres ne le fassent pour toi.

Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 15/01/2021 17:34 | #


Justement j'ai décris mon problème

Ajouté le 15/01/2021 à 17:35 :
(Evidemment je ne vous "presse" pas je relance juste le sujet sinon mon problème n'a aucune chance d'etre résolu)
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Dark storm En ligne Membre d'honneur Points: 11292 Défis: 176 Message

Citer : Posté le 15/01/2021 17:36 | #


Ben reprend sa description, rend le plus lisible, compréhensible, met en valeur ce que tu as fait entre temps, ce qui a changé, poste un petit bout de code qui peut contenir le problème, etc.

Si tu n'a pas de réponse, c'est probablement que la question est mal posée, surtout sur Planète Casio.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 15/01/2021 17:39 | #


Ok alors, :

Les objets sont definis entre autre par une bool isCommenced et isFinish (isCommenced indique si le bloc commence une ligne de blocs,donc si il y a un bloc avant, et isFinish si il ya un bloc après)
Le personnage est defini par entre autre isWalkableTop et isWalkableBack, je vous laisse comprendre
Donc dans mon code j'ai : désolé pour l'indentation dégueulasse, ce n'est pas comme ca dans mon code)
                
        current_player->isWalkableTop = true;
        for(i=0;i<=(sizeof(ListOfObjects) / sizeof(struct object));i++)
        {
                if(current_player->x == xref+current_object->XrefAdd && current_object->isFinish == true)
                {
                         current_player->isWalkableTop = false;
                
                }
          }


Ici isWalkableTop = true au départ, et si la position x du joueur est la meme que celle du bloc selectionné et que ce bloc a sa variable isFinish selectionée, alors on ne peut pas marcher donc isWalkableTop = false.
Ensuite j'ai juste : if(isWalkableTop = true)
xref=xref+1

J'ai envoyé ca, et on m'a dit de changer >= par >, ce que j'ai fait.
Là, pas d'erreurs à la compilation, mais le personnage n'est juste pas arreté.
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Dark storm En ligne Membre d'honneur Points: 11292 Défis: 176 Message

Citer : Posté le 15/01/2021 17:42 | #


Quel est le comportement attendu de ce code ? Sinon on ne pourra pas faire la différence entre un bug et une feature
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 15/01/2021 17:45 | #


Je l'ai dit dans mon message précedent :
Potter360 a écrit :
Ici isWalkableTop = true au départ, et si la position x du joueur est la meme que celle du bloc selectionné et que ce bloc a sa variable isFinish selectionée, alors on ne peut pas marcher donc isWalkableTop = false.

Le but c'est qu'il n'ya pas de blocs après les blocs avec isFinish = true, et que si le joueur est sur un de ses blocs, alors il ne pourra pas marcher.
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%

Dark storm En ligne Membre d'honneur Points: 11292 Défis: 176 Message

Citer : Posté le 15/01/2021 17:48 | #


Est-ce que tu as vérifié que la condition current_player->x == xref + current_object->XrefAdd est correctement exécutée ? Et a le comportement attendu ? Idem pour l'autre partie de la condition.
Est-ce que tu as vérifié que mettre current_player->isWalkableTop = false; empêche bien le personnage de bouger ?
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Potter360 Hors ligne Membre Points: 532 Défis: 0 Message

Citer : Posté le 15/01/2021 17:51 | #


Commencons par le plus facile : le deuxième :
        if(current_player->isWalkableTop == true)
            {
                xref = xref-1;
        }


Le 1er je vois pas trop comment faire...
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore
Déroule
Encore

Bravo, ça ne sert à rien !
Tu rages à...
   99%


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
Pour coloriser votre code, cliquez ici.
Sinon cliquez sur le bouton ci-dessous.
: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 v42 © créé par Neuronix et Muelsaco 2004 - 2021 | Il y a 77 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