#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 13/07/2015 13:45 | #
C'est bon j'ai trouvé, erreur de copie-colle (un j a la place d'un i)
Erf, tu parles d'une erreur...
Citer : Posté le 14/07/2015 11:40 | #
Toujours moi,
J'ai une erreur lors d'une realloc, et je sais pas trop comment la régler ...
Le code
Si j'ai bien compris ce que tu m'as dit plus haut, je dois pouvoir faire ça mais si je le fait j'ai un SE directement >.<
Enfin bref c'est la merdouillle
Citer : Posté le 14/07/2015 11:42 | #
Ah mais c'est différent là !
Si tu veux modifier la donnée (les SpaceInv_Shoot), il te faut le pointeur dessus, donc le SpaceInv_Shoot *.
Maintenant si tu veux modifier le pointeur il te faut toujours le pointeur dessus donc là c'est bien un SpaceInv_Shoot ** !
La première fonction est celle qu'il faut utiliser !
Citer : Posté le 14/07/2015 11:44 | #
Ben du coup la derniere fois, avec la ligne 29, je pouvais pas changer le prototype si ?
Citer : Posté le 14/07/2015 11:47 | #
Ben du coup la derniere fois, avec la ligne 29, je pouvais pas changer le prototype si ?
Hmm, eh bien, tu vois...
Mais pourquoi tant de passages par pointeur aussi ? xD
On s'y pert...
Bon, mes excuses. J'avais pas remarqué cet appel de fonction, en fait : personnellement je n'alloue jamais en plein milieu d'une boucle de jeu donc je n'ai pas imaginé que tu puisses le faire aussi...
Citer : Posté le 14/07/2015 11:58 | #
Ben j'ai pas trop le choix de passer par les pointeurs, a part si je fait des globales, mais après on m’engueule
Et malgré les modifs, le realloc amene toujours au SE
Citer : Posté le 14/07/2015 11:58 | #
Non, ce qu'il faut faire, c'est utiliser les valeurs de retour pour éviter de tout modifier par pointeur
Citer : Posté le 14/07/2015 12:13 | #
The Prog, le global c'est pas non plus la mort, faut juste bien se dire "est-ce que c'est plus propre de faire ça en global ?". Par exemple l'inventaire dans un RPG. Vu le nombre de fonctions qui ont besoin d'y accéder, oui c'est plus propre de mettre une structure en global. Après faut bien faire des structures et pas mettre 50 variables globales en vrac
aclec Invité
Citer : Posté le 17/09/2015 19:58 | #
Bonjour, dans mes programmes j utilise la commande "IsKeyDown" mais on ma dit que pour un menu getkey est mieux. Pouvez vous me donnez la syntaxe d un getkey svp.
Citer : Posté le 18/09/2015 07:38 | #
En gros tu va avoir ça :
int choice = 0;
while(key != KEY_CTRL_EXE)
{
GetKet(&key);
switch(key)
{
case K_UP: choice--; break;
case K_DOWN: choice++; break;
}
if(choice < 0) choice = 4; // comportement du curseur si il va plus loin que le nombre de choix
if(choice > 4) choice = 0;
draw_menu(choice);
}
switch(choice)
{
case 0: play(); break;
…
}
aclec Invité
Citer : Posté le 07/10/2015 17:39 | #
Je ne peux pas utiliser le " - " avec la librairie EasyInput pourtant je l ai mit en caractère autorisé.
Citer : Posté le 07/10/2015 19:02 | #
Étonnant… Je regarde ça
aclec Invité
Citer : Posté le 08/10/2015 13:01 | #
Alors est-ce juste une erreur de ma part ??? Merdi d avance pour votre aide.
Citer : Posté le 08/10/2015 18:43 | #
Je viens de vérifier, si tu ajoute "-" à la liste (attention, le tiret anglais -, pas le cadratin ou demi cadratin : — ou –), tu devrais pouvoir récupérer des nombres négatifs.
Vérifie quand même que tu as bien la dernière version disponible en ligne (3.2 dans le read-me).
aclec Invité
Citer : Posté le 08/10/2015 19:19 | #
J ai mi à jour ma librairie, je clique sur le tiret du 6, j ai même copier coller ton moins et rien a faire, ça ne le prend toujours pas dans sdk.
aclec Invité
Citer : Posté le 08/10/2015 20:32 | #
Je te montre ma fonction :
EI_init();
EI_manage_config(EI_SET_START_MODE, EI_NORMAL);
PopUpWin(6);
locate(4, 2);
Print(phraseun);
locate(4, 4);
Print(phrasedeux);
locate(4, 6);
Print(phrasetrois);
EI_manage_config(EI_SET_ROW, 3);
EI_manage_config(EI_SET_COLUMN, 4);
recupvarun = EI_input_string(10, "0123456789.e-");
varun = atof(recupvarun);
EI_manage_config(EI_SET_ROW, 5);
EI_manage_config(EI_SET_COLUMN, 4);
recupvardeux = EI_input_string(10, "0123456789.e-");
vardeux = atof(recupvardeux);
EI_manage_config(EI_SET_ROW, 7);
EI_manage_config(EI_SET_COLUMN, 4);
recupvartrois = EI_input_string(10, "0123456789.e-");
vartrois = atof(recupvartrois);
}
Citer : Posté le 08/10/2015 21:35 | #
À la vue de ton code, je me demande si ça ne vient pas plutôt de la fonction atof. Est-ce que tu peux taper "-" lorsque tu exécute l'addin ?
Sinon, les variables recupvarun et autres, c'est bien des char* ?
aclec Invité
Citer : Posté le 08/10/2015 22:17 | #
Oui, ce sont des char* et quand j execute l addin, je clique sur le "-" mais rien ne se passe mais je crois que je peux cliquer dessus.
aclec Invité
Citer : Posté le 10/10/2015 22:39 | #
Je ne trouve aucune solution, vous n avez aucune idée svp ?? Et oui je peux cliquer mais rien ne se passe.
Citer : Posté le 10/10/2015 22:46 | #
Je n'ai pas mon PC avec moi ce WE, je regarderai ça plus tard
En attentand, essaie de regarder dans le code de EI si quelque chose cloche
aclec Invité
Citer : Posté le 10/10/2015 22:54 | #
Ok merci