Ce jeu a été programmé sur la g100+, il y a donc des risques que ce jeu fonctionne un peu moin bien sur les autres modèles de calculatrices.
Vous êtes dans un avion (représenter par un pixel pour que le jeu reste fluide) .
Esquivez les murs pour battre votre High Score.
Appuyez sur [EXE] pour monter mais l'avion a toujours tendance de tomber (il faut alors appuyer plusieurs fois sur la touche [EXE] pour que l'avion reste plus ou moins à la même hauteur)
Il y a une infinité de niveaux (la difficulté est croissante), les maps sont chargées aléatoirement, ce jeu est fluide, mais le temps de chargement est assez long (le temps de chargement dure environ sept secondes).
Dans ce jeu il y a aussi un éditeur de niveau, appuyez sur les touches de directions pour créer un niveau. D'abord, vous tracez le plafond puis le sol. Si vous êtes satisfait du résultat final vous pouvez enregistrer votre map dans un pict. Ce jeu utilise la Mat L[1,5] (pour le Hight Score) il est donc important que vous initialisez ce jeu au premier démarrage
Version:
Cliquez pour découvrir
Cliquez pour recouvrir
version 2 0:
j'ai rajouté un editeur de niveau
version 3.0:
-plus lisible
-concu pour graph 85
-plus joli
-avec choix du niveau de difficulté
nouveau, la version 4.0 propose les améliorations suivants:
-graphisme en couleur pour la g65
-optimisation
bientôt la version 5.0
si vous avez des idées d'amélioration faite m'en part ;).
édit 2 : Je vais essayer d'adapter ce jeu sur la prizm en C, avec le même scrolling que le jeu en javascript , je ne pense pas que ça va être difficile de faire ça
Ok, si tout va bien je peux te dire les résultats demain.
je complète au fur et à mesure : édit 1 du 1er décembre :
affichage des sprites
void G3A_main( void )
{
int i = 0;
for( i = 0; i<100;i++)
{
XORSprite(test,5,5,15,15);
Bdisp_PutDisp_DD();
}
}
boucle effectuer en 3.4s
Existe-til une fonction qui est équivalent à Bdisp_PutDisp_DD(); mais en plus rapide ? Car sans la foction Bdisp_PutDisp_DD(); cette boucle est effectuer en un peu moins d'une seconde environ
Non pas pour le moment Dommage, mais ce ne doit pas être très dur d'en faire une plus rapide.
Tu peux me dire comment est ton test ? L'écrire ici. J'aimerai bien utiliser cette fonction mais je ne sais pas comment, ou sous qu'elle forme mettre l'image a passer à la fonction.
EDIT : effectivement ça ne sert à rien de mettre bdisp dans la boucle.
Eiyo : monochromelib, avec sa fonction display VRAM ne marche que pour G85, vu que la VRAM ne fait pas la même taille que sur CG20.
Corrigez moi si je me trompe.
Oui je sais que ça ne sert à rien de mettre la fonction bdisp dans une boucle mais c'est juste pour tester la vitesse
Tu peux me dire comment est ton test ? L'écrire ici. J'aimerai bien utiliser cette fonction mais je ne sais pas comment, ou sous qu'elle forme mettre l'image a passer à la fonction.
La fonction XORSprite(...); enregiste une sprite dans la VRAM, on peut créé une sprite ici, dans la partie "Upload New File" tu ouvres une imagepuis tu clique sur "parse file", on obtient un truc de ce genre :
Après pour afficher le sprite il suffit d'écrire dans ton programme XORSprite(sprite,x,y,taille_longueur,taille_hauteur); //sprite est le nom du tableau (voir spoiler)
// KermMartian
void XORSprite(char* data, int x, int y, int width, int height)
{
int j, i;
char* VRAM = (char*)0xA8000000;
VRAM += 2*(LCD_WIDTH_PX*y + x);
for(j=y; j<y+height; j++) {
for(i=x; i<x+width; i++) {
*(VRAM++) ^= *(data++);
*(VRAM++) ^= *(data++);
}
VRAM += 2*(LCD_WIDTH_PX-width);
}
}
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