1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int i,x;
int stat[6];//tableau de stat
const char ref[6][5]={"str","dex","con","int","wis","cha"};//tableau de référence: permet d'associer une stat à un attribut
FILE *f;
char string[256];
struct perso{
char nom[256];
int stat[6];
int modif[6];
//int magic[256];
//int misc[256];
//int combat[256];
//int bab[20];
}pers;
//int main constitue le menu.
int main(){
int a;
a=999;
while (a!=0) {
printf("pour creer un fiche de stat tapez 1\n");
printf("pour afficher une fiche de stat 2\n");
printf("pour créer un fiche de stat temporaire tapez 3\n");
printf("pour afficher un fiche de stat temporaire tapez 4\n");
printf("pour sauver un fiche de stat temporaire tapez 5\n");
printf("Lorsque vous avez termine tapez 0\n");
scanf("%d",&a);
switch (a){
case 1:save_struct();break;
case 2:affi_struct();break;
case 3:remp_stat();break;
case 4:affi_stat();break;
case 5:save();break;
}
}
}
//remplissage du tableau de stats temp
int remp_stat(){
for (i=0;i<6;i++) {
printf("entrez %c%c%c\n",ref[i][0],ref[i][1],ref[i][2]);
scanf("%d",&stat[i]);
pers.stat[i]=stat[i];
}
}
//affichage des stats temp
int affi_stat(){
for (i=0;i<6;i++) {
printf("%c%c%c:%d\n",ref[i][0],ref[i][1],ref[i][2],stat[i]);
}
return(0);
}
//sauvegarde d'un temp
int save (){
// Ouverture
naming();
FILE *f=fopen(string,"w");
for (i=0;i<6;i++) {
fprintf(f,"%c%c%c:%d\n",ref[i][0],ref[i][1],ref[i][2],stat[i]);
}
//Fermeture
fclose(f);
return 0;
}
//récupère nom de fichier et de perso
int naming (){
printf("entrez le chemin d'acces du fichier:");
scanf("%s",&string);
printf("entrez le nom du perso %s",pers.nom);
scanf("%s",&pers.nom);
}
int mod(){
for (i=0;i<6;i++) {
printf("entrez %c%c%c mod\n",ref[i][0],ref[i][1],ref[i][2]);
scanf("%d",&pers.modif[i]);
}
}
//////////////////////ici commence le travail sur fichier////////////////////////
int naming_file(){
printf("entrez le chemin d'acces du fichier:\n");
scanf("%s",&string);
printf("\n");
}
int naming_pers (){
printf("entrez le nom du perso %s",pers.nom);
scanf("%s",&pers.nom);
}
int save_struct (){
// Ouverture
naming_file();
naming_pers();
remp_stat();
mod();
//modifier();
//magic();
//misc();
//combat();
FILE *f=fopen(string,"w");
fprintf(f,pers.nom);
fprintf(f,"\n");
for (i=0;i<6;i++) {
x=pers.stat[i];
fprintf(f,"%c%c%c:%d\n",ref[i][0],ref[i][1],ref[i][2],x);
}
for (i=0;i<6;i++) {
x=pers.modif[i];
fprintf(f,"%c%c%c mod:%d\n",ref[i][0],ref[i][1],ref[i][2],x);
}
//Fermeture
fclose(f);
}
int affi_struct(){
char *pc;
int c;
i=0;
naming_file();
FILE *f=fopen(string,"r");
fscanf(f,"%s",&pers.nom);
printf("%s\n",pers.nom);
} |
Partager