Posté le 21/02/2016 11:58
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 109 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 21/02/2016 16:06 | #
Je pense qu'au lieu de mettre ≠ 0 il vaut mieux mettre <1 comme ça on peut mettre un événement-1
Ben c'est pas le but. On va se contenter des événements 2, 3, 4...
Citer : Posté le 21/02/2016 16:07 | #
Bah si ! Un truc ou on peut passer dessus mais où il se passe qqch !!
Genre une herbe dans pokemon
Les guerriers sombres: Venez tuer des monstres pour déjouer un très gros complot dans un jeu en basic mais très puissant
The Legend Of Link un add-in où on contrôlera des monstres....
Si vous avez des sprites 12*16 de monstres de zelda, vous êtes les bienvenus (Par MP )
Citer : Posté le 21/02/2016 16:22 | #
Ben oui mais faudrait le combiner avec le sprite d'herbe si la matrice fait la map, donc de toute façon les événements positifs suffiront à couvrir l'ensemble de la map, non ?
Citer : Posté le 21/02/2016 17:08 | #
Que dites-vous de ce décor ?
Citer : Posté le 21/02/2016 17:10 | #
Ça a l'air pas mal
Après il faudrait détailler, s'il y en a, le fonctionnement de chaque élément. Ou juste la représentation, c'est pas évident (Je vois les # comme des portes, les carrés comme des murs, mais le reste est plus difficile à repérer).
Citer : Posté le 21/02/2016 17:11 | #
Oui je préciserais mais je voulais juste votre avis...
Ajouté le 21/02/2016 à 18:37 :
Ca y est, le programme marche mais il est très lourd est malgré cette commande :
Getkey->G
LpWhile Not G
Mon getkey est très lent, y aurait-il un moyen de l'optimiser ?
Citer : Posté le 21/02/2016 18:54 | #
Si ta boucle est lente, c'est plutôt le code autour qu'il faut optimiser. Regarde si tu peux condenser les conditions et utiliser des opérations logiques.
Citer : Posté le 21/02/2016 18:55 | #
C'est marrant, moi je suis obligé de ralentir mes boucles de menu. Le curseur se déplace trop vite sinon.
Remplissez facilement vos listes avec Statistiques
Et des conversions des unités du système métrique.
Citer : Posté le 21/02/2016 18:56 | #
C'est fait, le personnage met beaucoup de temps à réagir.
Citer : Posté le 21/02/2016 19:20 | #
Ca y est, le programme marche mais il est très lourd
Tu as ajouté quoi de plus par rapport au code que je t'ai donné ?
Parce que c'est sensé être très réactif en faisant comme ça.
Citer : Posté le 21/02/2016 19:33 | #
En effet, c'est étonnant. Donne-nous le code de ton moteur de déplacement.
Vitesse des fonctions en Basic Casio | 7 days CPC | Casio Universal Wiki | Tutoriel Basic Casio
>>> Give me a click Brother <<< >>> Teste mon générateur de mots nouveaux <<<
>>> Random Youtube Video <<<
Citer : Posté le 21/02/2016 19:41 | #
Eh bien, il y a tellement de bloc dans la matrice que cela rend le getkey lent.
Il faudrait le rendre plus sensible. Sinon, Totoyo, j'utilise le même moteur de déplacement que dans ton tuto en mode texte.
Ou alors, c'est que j'ai placé ma boucle au mauvaise endroit ?
Citer : Posté le 21/02/2016 19:58 | #
Il n'y a pas de rapport entre la taille de ta matrice et ton getkey normalement. Tu peux nous donner ton code ?
Un beat them all pour les CPC 19
Un jeu de Tank multijoueur en version graphique
Un jeu de boxe rigolo
Le moteur de combat épique d'un RPG
soccer physics : Un jeu de foot totalement wtf !
Survie 1 & 2 te laisseras-tu attraper par la méchante IA ?
Séquestrez les tous avec Catch'em all !
Joué à la calcultarice et pécher ? Facile !
Battle un système de combat dément !!
Débombe pas tout à fait un démineur
Mon mario pour le concours des 10 ans de PC
Casio jump un doodle jump pas comme les autres !
Rush four your life : tu cours ou tu meurs
Cookie clicker ! More cookies MOOORE !
Move et esquive : bouge pour esquiver les ennemis !
Guitar Hero !! Let's rock !
INVASION : Au secours on se fait envahir !
Un devine nombre entièrement customisable (mon 1er jeu)
Un outil pour dessiner des sprites en super drawstat et qui vous le compile pour vous donner un code utilisable dans vos programmes
Un super programme de dessin bourré de trucs funcs
Sortir une version finale de Tankasio
Bien m'améliorer en C parce que pour l'instant c'est pas jojo
Une ou plusieurs idées qui mûrissent petit à petit
Citer : Posté le 21/02/2016 20:14 | # | Fichier joint
Voila le code, attention les yeux : programme en fichier joint car le code est très long...
Citer : Posté le 21/02/2016 20:58 | # | Fichier joint
Tu m'étonnes que ce soit lent
Déjà tu as énormément compliqué les conditions avec le Getkey !
Tu ne dois rien avoir dans la boucle du Getkey :
Do
Getkey→G
LpWhile Not G
//Et les conditions juste après :
G=27⇒X≠20⇒X+1→X
G=28⇒Y≠2⇒Y-1→Y
G=37⇒Y≠6⇒Y+1→Y
G=38⇒X≠2⇒X-1→X
Tu as juste besoin de faire ça :
Then C→X
D→Y
IfEnd
Car on n'a pas besoin de savoir dans quelle direction le joueur est allé. Du moment qu'il se retrouve dans un mur on annule le déplacement en récupérant les valeurs de C et D.
Ensuite ce qui ralenti vraiment ton jeu c'est qu'à chaque déplacement tu réaffiches TOUTE la carte. Pourquoi ?
En fait tu dois afficher la carte avant de lancer la boucle principale.
Et tu peux largement simplifier tout ce que tu as fait en procédant comme ça :
2→Mat A[2,7
//Etc... Tu prépares les valeurs de ta matrice
//Puis :
For 1→X To 21
For 1→Y To 7
Mat A[Y,X]→A
A=1⇒Locate X,Y,"■"
A=2⇒Locate X,Y,"#"
//Etc... pour tous les types de blocs
Next
Next
En fait une fois que tu as créer ta matrice ce code va ses cases une à une (avec les deux boucles for) et afficher le bloc correspondant.
(Si la case (x,y) de la matrice vaut 1, on affiche "■" en (x,y), si elle vaut 2 on affiche "#" etc...)
Donc après ce bout de code ta carte sera affichée.
Ensuite tout ce que tu as à faire entre chaque déplacement c'est d'effacer l'endroit où était le joueur avant, puis de le réafficher au nouvel endroit. Rien de plus.
Mat A[D,C]→A
A=1⇒Locate D,C,"■"
A=2⇒Locate D,C,"#"
Etc...
//Puis on affiche le joueur aux nouvelles coordonnées :
Locate X,Y,"θ"
(Pour ceux qui vont me dire d'utiliser StrMid, je sais mais je veux pas compliquer pour le moment )
Edit :
Voilà, je t'ai fait un programme pour te montrer comment faire ça.
J'ai quand même simplifié ça :
A=1⇒Locate D,C,"■"
A=2⇒Locate D,C,"#"
Par ça :
A≠0⇒Locate C,D,StrMid("■#",Mat A[D,C],1)
J'ai plus trop le temps d'expliquer mais c'est une petite astuce.
En fait StrMid("texte",n,1) va récupérer le nième caractère du texte.
Ici n vaut Mat A[D,C]. Donc si Mat A[D,C] vaut 1, ça va récupérer le premier caractère, donc "■". Si ça vaut 2 ça va récupérer "#", etc...
Citer : Posté le 21/02/2016 21:35 | #
Merci beaucoup