Untitled

 avatar
unknown
plain_text
2 years ago
1.7 kB
8
Indexable
void createCharacter( char pj_name[NAME_SIZE], char sire[NAME_SIZE] ) {

///Variables de los ficheros
    FILE *vampire;
    FILE *human;
    FILE *house;

    Character characterS;    
    Clan clanS;
    Sire sireS;
    
    int i = 0;
    
    char name[NAME_SIZE];
    
    strcpy ( name, pj_name );
    
    strcat ( name, ".bin" );

///Copiar del archivo binario del sire, su nombre, nombre clan, generación + 1.
    vampire = fopen ( "sire.bin", "rb" );

    fread ( &sireS, sizeof (Sire), 1, vampire );

    while ( !feof( vampire ) ) {
            
        if ( strcmp(sireS.name, sire) == 0 ) {
        
            strcpy ( characterS.sire_name, sireS.name );

            strcpy ( characterS.clan_name, sireS.clan_name );

            characterS.generation = sireS.generation + 1;

        }
        
        fread ( &sireS, sizeof (Sire), 1, vampire );
    }
    fclose ( vampire );


///Copiar del archivo binario del clan, disciplines, y bane.

    house = fopen ( "clans.bin", "rb" );

    fread ( &clanS, sizeof ( Clan ), 1, house );

    while ( !feof( house ) ) {

       if ( strcmp( characterS.clan_name, clanS.name ) == 0 ) {
            
        for ( i = 0; i < NUM_DISCIPLINES; i++ ) {
            
            strcpy ( characterS.disciplines[i], clanS.disciplines[i] );
            
        }  
        
        strcpy ( characterS.bane, clanS.bane);
        
       }
       

    }

    fclose ( house );


///Crear el fichero binario del personaje.
    human = fopen ( name, "wb" );

    fwrite ( &characterS, sizeof( Character ), 1, human );

    fclose ( human );



}
Editor is loading...