#include "fxlib.h"
#include "stdio.h"
unsigned int key;
int caractere, caractere2;
char chaine[21];
char ident[21];
char domaine[30];
char mdp[30];
char destinataire[40];
char sujet[30];
char corps[50];
int AddIn_main(int isAppli, unsigned short OptionNum){
Bdisp_AllClr_DDVRAM();
demmarage();
identif();
return 1;
}
demmarage(){
int key;
Bdisp_AllClr_DDVRAM();
PrintMini(80,58,"Version 1.0",0);
Bdisp_DrawLineVRAM(10,10,10,50);
Bdisp_DrawLineVRAM(10,50,117,50);
Bdisp_DrawLineVRAM(117,50,117,10);
Bdisp_DrawLineVRAM(10,10,117,10);
Bdisp_DrawLineVRAM(10,10,63,25);
Bdisp_DrawLineVRAM(117,10,63,25);
locate(7,5);
Print("Messagerie");
do{
GetKey(&key);
} while(key != 30004);
Bdisp_AllClr_DDVRAM();
}
identif(){
Bdisp_AllClr_DDVRAM();
locate(1,1);
Print("Identifiant:");
locate(1,2);
Print("+------------------+");
locate(1,3);
Print("| |");
locate(1,4);
Print("+------------------+");
remplichaine();
caractere2=0;
do{
caractere2++;
ident[caractere2] = chaine[caractere2];
} while(caractere2+1 != caractere);
========================== > ICI < ========
locate(2,3);
Print(ident);
do{
GetKey(&key);
} while(key != 30004);
}
remplichaine(){
caractere=0;
do{
caractere++;
======================= > ET ICI < ========
locate(2,3);
Print(chaine);
GetKey(&key);
//==========Conversion==========
if (key==48)key= 71;
if (key==46)key= 61;
if (key==15)key= 51;
if (key==135)key= 41;
if (key==30004)key= 31;
if (key==49)key= 72;
if (key==50)key= 62;
if (key==51)key= 52;
if (key==137)key= 42;
if (key==153)key= 32;
if (key==52)key= 73;
if (key==53)key= 63;
if (key==54)key= 53;
if (key==169)key= 43;
if (key==185)key= 33;
if (key==55)key= 74;
if (key==56)key= 64;
if (key==57)key= 54;
if (key==30025)key= 44;
if (key==30015)key= 34;
if (key==187)key= 75;
if (key==30046)key= 65;
if (key==40)key= 55;
if (key==41)key= 45;
if (key==44)key= 35;
if (key==14)key= 25;
if (key==30001)key= 76;
if (key==149)key= 66;
if (key==133)key= 56;
if (key==129)key= 46;
if (key==130)key= 36;
if (key==131)key= 26;
if (key==30007)key= 77;
if (key==205)key= 67;
if (key==168)key= 57;
if (key==30002)key= 47;
if (key==30023)key= 37;
if (key==30021)key= 27;
if (key==30006)key= 78;
if (key==30008)key= 68;
if (key==30016)key= 58;
if (key==30020)key= 38;
if (key==30018)key= 28;
if (key==30009)key= 79;
if (key==30010)key= 69;
if (key==30011)key= 59;
if (key==30012)key= 49;
if (key==30013)key= 39;
if (key==30014)key= 29;
//==============================
if(key==31)caractere=19;
if(key==76)chaine[caractere]='a';
if(key==66)chaine[caractere]='b';
if(key==56)chaine[caractere]='c';
if(key==46)chaine[caractere]='d';
if(key==36)chaine[caractere]='e';
if(key==26)chaine[caractere]='f';
if(key==75)chaine[caractere]='g';
if(key==65)chaine[caractere]='h';
if(key==55)chaine[caractere]='i';
if(key==45)chaine[caractere]='j';
if(key==35)chaine[caractere]='k';
if(key==25)chaine[caractere]='l';
if(key==74)chaine[caractere]='m';
if(key==64)chaine[caractere]='n';
if(key==54)chaine[caractere]='o';
if(key==73)chaine[caractere]='p';
if(key==63)chaine[caractere]='q';
if(key==53)chaine[caractere]='r';
if(key==43)chaine[caractere]='s';
if(key==33)chaine[caractere]='t';
if(key==72)chaine[caractere]='u';
if(key==62)chaine[caractere]='v';
if(key==52)chaine[caractere]='w';
if(key==42)chaine[caractere]='x';
if(key==32)chaine[caractere]='y';
if(key==71)chaine[caractere]='z';
if(key==61)chaine[caractere]='.';
if(key==57)chaine[caractere]='@';
} while(caractere!=19);
if(key==31)chaine[caractere]='\0';
if(key!=31)chaine[caractere+1]='\0';
}
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
int InitializeSystem(int isAppli, unsigned short OptionNum){return INIT_ADDIN_APPLICATION(isAppli, OptionNum);}
#pragma section
Citer : Posté le 30/03/2014 19:06 | #
Ok si c'est une convention
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Citer : Posté le 02/04/2014 22:16 | #
set SHC_INC=D:\programfiles\OS\SH\include
set PATH=D:\programfiles\OS\SH\bin
set SHC_LIB=D:\programfiles\OS\SH\bin
set SHC_TMP=C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\Debug
"D:\programfiles\OS\SH\bin\shc.exe" -subcommand=C:\Users\PIERROT\AppData\Local\Temp\hmk52B2.tmp
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(27) : C2202 (E) Number of parameters mismatch
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(28) : C2500 (E) Illegal token "}"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(29) : C2500 (E) Illegal token "while"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(34) : C2500 (E) Illegal token "}"
HMAKE MAKE UTILITY Ver. 1.1
Copyright (C) Hitachi Micro Systems Europe Ltd. 1998
Copyright (C) Hitachi Ltd. 1998
ERROR: Process failed with return code: 1
Build was not successful.
/* */
/* CASIO fx-9860G SDK Library */
/* */
/* File name : [ProjectName].c */
/* */
/* Copyright (c) 2006 CASIO COMPUTER CO., LTD. */
/* */
/*****************************************************************/
#include "fxlib.h"
#include "MonochromeLib.c"
#include "MonochromeLib.h"
const unsigned char A[]={
0x20,
0x30,
0x28,
0x20,
0x30,
0x28,
0x20,
0x0
};
print (unsigned char A)
{
print( A, 0,0)
}
while(1){
GetKey(&key);
}
return 1;
}
//****************************************************************************
//************** ****************
//************** Notice! ****************
//************** ****************
//************** Please do not change the following source. ****************
//************** ****************
//****************************************************************************
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
//****************************************************************************
// InitializeSystem
//
// param : isAppli : 1 = Application / 0 = eActivity
// OptionNum : Option Number (only eActivity)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int InitializeSystem(int isAppli, unsigned short OptionNum)
{
return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}
#pragma section
pourquoi ça marche pas ??
Je suis de l'autre coté de la manche maintenant. Yay.
Citer : Posté le 02/04/2014 22:21 | #
BEn... Ton code n'est même pas dans la fonction main (ou une autre fonction) qui n'existe même pas d'alleursi ... :S
T'as au moins réfléchi avant de nous montrer ça ? J'en doute un peu...
Et puis peut être deux trois petits mots en plus de "pourquoi ça ne marche pas"
auraient été les bienvenus...
Citer : Posté le 02/04/2014 22:22 | #
Tu m'expliques ou est passé ton main?
code correct :
#include "fxlib.h"
#include "MonochromeLib.h"//on inclut que les .h
print (unsigned char* A)// on doit recevoir une chaine de caracteres
{
print( A, 0,0)
}
int AddIn_main(int isAppli, unsigned short OptionNum)
{
const unsigned char A[]={
0x20,
0x30,
0x28,
0x20,
0x30,
0x28,
0x20,
0x0
};//on evite les variables globales
unsigned int key;
while(1){
print(A);
GetKey(&key);
}
return 1;
}
//****************************************************************************
//************** ****************
//************** Notice! ****************
//************** ****************
//************** Please do not change the following source. ****************
//************** ****************
//****************************************************************************
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
//****************************************************************************
// InitializeSystem
//
// param : isAppli : 1 = Application / 0 = eActivity
// OptionNum : Option Number (only eActivity)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int InitializeSystem(int isAppli, unsigned short OptionNum)
{
return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}
#pragma section
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2
merci a tout le monde pour son soutien
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm
(dont je connais le nom, mais pas vous )Arcuz !Citer : Posté le 02/04/2014 22:44 | #
/* */
/* CASIO fx-9860G SDK Library */
/* */
/* File name : [ProjectName].c */
/* */
/* Copyright (c) 2006 CASIO COMPUTER CO., LTD. */
/* */
/*****************************************************************/
#include "fxlib.h"
#include "MonochromeLib.h"
int AddIn_main(int isAppli, unsigned short OptionNum)
{
const unsigned char A[]={
0x20,
0x30,
0x28,
0x20,
0x30,
0x28,
0x20,
0x0
};
print (unsigned char* A)
{
print( A, 0,0)
}unsigned int key;
while(1){
print(A);
GetKey(&key);
}
return 1;
}
//****************************************************************************
//************** ****************
//************** Notice! ****************
//************** ****************
//************** Please do not change the following source. ****************
//************** ****************
//****************************************************************************
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
//****************************************************************************
// InitializeSystem
//
// param : isAppli : 1 = Application / 0 = eActivity
// OptionNum : Option Number (only eActivity)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int InitializeSystem(int isAppli, unsigned short OptionNum)
{
return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}
#pragma section
set SHC_INC=D:\programfiles\OS\SH\include
set PATH=D:\programfiles\OS\SH\bin
set SHC_LIB=D:\programfiles\OS\SH\bin
set SHC_TMP=C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\Debug
"D:\programfiles\OS\SH\bin\shc.exe" -subcommand=C:\Users\PIERROT\AppData\Local\Temp\hmk5976.tmp
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(28) : C2500 (E) Illegal token "unsigned"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(29) : C2500 (E) Illegal token "{"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(31) : C2500 (E) Illegal token "}"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(31) : C2500 (E) Illegal token "unsigned"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(31) : C2225 (E) Undeclared name "key"
C:\Users\PIERROT\Desktop\fichiersprogrammes\slider\Slider\EDIT.c(34) : C1016 (W) Argument mismatch
HMAKE MAKE UTILITY Ver. 1.1
Copyright (C) Hitachi Micro Systems Europe Ltd. 1998
Copyright (C) Hitachi Ltd. 1998
ERROR: Process failed with return code: 1
Build was not successful.
je comprends pas la logique, ça ne marche toujours pas
Je suis de l'autre coté de la manche maintenant. Yay.
Citer : Posté le 02/04/2014 22:48 | #
Tu as des accolades en trop autour du deuxieme print et il manque un point virgule après ce dernier et le premier aussi ... Et key n'est pas déclaré..
Ça m'a l'air très ambitieux un DigDugger pour l'instant
Ajouté le 02/04/2014 à 22:51 :
En plus t'utilises print de deux manières différentes... Je ne connais pas son prototype mais c'est bizarre un peu... (A moins qu'il y ait un nombre variable d'arguments, je ne connais pas la fonction )
Citer : Posté le 02/04/2014 22:51 | #
Tu devrais lire le tuto du sdz, tu ne m'as pas l'air d'avoir compris les fonctions.
Tu dois les déclarer en dehors de ton main pour pouvoir les utiliser dans ton main.
Et il te manque un ou deux ;
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2
merci a tout le monde pour son soutien
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm
(dont je connais le nom, mais pas vous )Arcuz !Citer : Posté le 06/04/2014 20:05 | #
Comment on fait pour afficher une image complète que j'ai dessiné sur paint, sans prendre trop de mémoire
Un peut comme un sprite :huh:
Ajouté le 06/04/2014 à 20:06 :
Et aussi l'équivalent de While(Getkey) : WhileEnd en C
J'ai essayé des trucs mais bon... ça n'a pas fonctionné
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Citer : Posté le 06/04/2014 20:21 | #
Tu convertit ton sprite en tableau de char avec SpriteCoder => http://wiki.planet-casio.com/tools/SpriteCoder/
Puis avec ML, tu fait :
ML_bmp_or(monImage, x, y, tailleX, tailleY);
ML_display_vram();
Tu devrais lire la doc de ML
Ajouté le 06/04/2014 à 20:22 :
Et pour le While Getkey != 42 :
{
... // actions à faire
}
Citer : Posté le 06/04/2014 20:28 | #
Ok pour l'affichage du sprite, c'est juste que je pensais pas que Monochrome.lib pouvais afficher des sprite 128*64
et pour le Getkey, en fait, je voudrais une boucle (vide) qui tourne tant que l'on appuis sur le clavier
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Citer : Posté le 06/04/2014 20:46 | #
Si c'est pour un fond d'écran, inclus "string.h" (librairie de base), et fait
C'est 128*64 fois plus rapide
Citer : Posté le 06/04/2014 21:11 | #
Ok et pour le truc de l'appuis des touche, soit, rester dans la boucle tant qu'une touche (n'importe laquelle) est pressée ?
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Citer : Posté le 06/04/2014 21:14 | #
Heu, si tu veux sans GetKey, faudra faire touche par touche (et/ou utiliser TL pour celles du bas)...
Citer : Posté le 06/04/2014 21:18 | #
Bon, ok, je pensais qu'il y avais un truc fait exprès, comme le Getkey qui vaut 0 si on appuis sur rien
Bon, je vais faire ça uniquement pour les touche fléchées alors
Et Dark storm, ensuite je t'envois le code pour que tu y incluse ton code touche.lib par contre, yahoo ne trouve pas ton adresse mail
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Citer : Posté le 06/04/2014 21:21 | #
GetKeyWait aurait parfaitement répondu à ton besoin... si elle fonctionnait.
Citer : Posté le 23/04/2014 19:44 | #
Bon voila j'etait fier de moi, j'avais fait une fonctions pour lire les scores dans un fichier:
{
unsigned int key;
int i;
int j;
int buf_score;
int handle;
char buffer[101];
FONTCHARACTER filename[]={'\\','\\','f','l','s','0','\\','s','n','i','p','r','.','s','c','r',0};
handle = Bfile_OpenFile(filename,_OPENMODE_READ);
// SI FICHIER OUVERT
if(handle!=-1){
Bfile_ReadFile(handle,buffer,100,0);
// LECTURE SCORES ENREGISTRES
for(i=0;i<5;i++){
for(j=0;j<3;j++){
buf_score = 0;
switch(buffer[i*4+j]){
case '0': buf_score += 0*pow(10,2-j);
break;
case '1': buf_score += 1*pow(10,2-j);
break;
case '2': buf_score += 2*pow(10,2-j);
break;
case '3': buf_score += 3*pow(10,2-j);
break;
case '4': buf_score += 4*pow(10,2-j);
break;
case '5': buf_score += 5*pow(10,2-j);
break;
case '6': buf_score += 6*pow(10,2-j);
break;
case '7': buf_score += 7*pow(10,2-j);
break;
case '8': buf_score += 8*pow(10,2-j);
break;
case '9': buf_score += 9*pow(10,2-j);
break;
default : buf_score += 0*pow(10,2-j);
}
scores[i]=buf_score;
}
}
}
// SINON CREATION
else{
//*vitesse = 5;
SaveDisp(1);
Bdisp_AllClr_DDVRAM();
Bfile_CreateFile(filename, 8);
handle = Bfile_OpenFile(filename,_OPENMODE_READWRITE);
sprintf(buffer,"110+053+022+009+004");
Bfile_WriteFile(handle,buffer,19);
locate(1,1);
Print("Un fichier a ete cree");
locate(6,2);
Print("snipr.scr");
locate(1,3);
Print(" Merci de ne pas le");
locate(1,4);
Print("supprimer.");
locate(5,6);
Print("Press [ExE]");
do{
GetKey(&key);
}while(key!=30004);
lect_scores(scores);
RestoreDisp(1);
}
Bfile_CloseFile(handle);
}
Mais elle me renvoie pas les bons scores
Citer : Posté le 23/04/2014 19:48 | #
Tu te casses la tête !
int main()
{
char ch[4] = "1475";
int x;
sscanf(ch,"%d",&x);
// et c'est bon !
}
Ça c'est plus facile.
Et puis les puissances... rien de très optimisé
Citer : Posté le 23/04/2014 19:49 | #
Pourquoi ne pas enregistrer les scores en hexadécimal ?
Genre pour écrire (c'est plus de l'algo que du C, mais la méthode est correcte)
handle = openFile(); // on ouvre le fichier
writeFile(bestScores, 10*sizeof(int)); // on écrit le contenu
closeFile();
Pour lire :
handle = openFile(); // on ouvre le fichier
readFile(bestScores, 10*sizeof(int)); // on récupère le contenu
closeFile();
Ajouté le 23/04/2014 à 19:50 :
5000 points
Citer : Posté le 24/04/2014 16:31 | #
Alors la je vous avourait ne rien avoir compris
Citer : Posté le 24/04/2014 16:36 | #
C'est vrai que j'ai fait compliqué. Tu veux lire un entier, il a quelque chose justement faite pour ça dans la bibliothèque standard: la fonction atoi().
int main()
{
int x = atoi("1387493");
}
Cette fonction renvoie dans x la valeur "lue" dans la chaîne de caractères.
Citer : Posté le 24/04/2014 16:53 | #
oui mais admetont que mes scores sont enregistrés dans le fichier sous la forme
"123+234+123+432+001"
Faut que ca me lise le fichier seulement score par score vu que apres je stocke dans un tableau (scores[])