Open MartinQuesada opened 8 months ago
@MartinQuesada I did an automatic translation of your issue, can you say if this is correct?
There has always been a small bug in the game: When you return a card, instead of going to a discard pile, it resets and goes back into stock. And that makes the card come out again before others that haven't come out yet. A while back I fixed that by adding a couple of lines to.h cards and.c cards. He passed on the changes to them in case they want to fix it.
@ranft Yes, It is. That's perfect.
Buenas,
Desde siempre hubo un pequeño error en el juego: Cuando devolvés una tarjeta, en lugar de ir a una pila de descarte, se reinicializa y vuelve al stock. Y eso hace que la tarjeta vuelva a salir antes que salgan otras que aún no salieron. Hace un tiempo solucioné eso agregando un par de líneas a tarjetas.h y tarjetas.c. Les pasó los cambios por si quieren arreglarlo.
tarjeta.h Insertar después de void tarjeta_inittarj(PTARJETA t);
void tarjeta_pilasdescarte( PTARJETA t ); /* Nueva línea de código*/
tarjeta.cpp Insertar después de void tarjeta_inittarj(PTARJETA t)
void tarjeta_piladescarte( PTARJETA t ) { t->usada = FALSE; t->numjug = -2; }
Cambiar
void tarjeta_poner(PTARJETA t) { tarjeta_inittarj(t); }
por
void tarjeta_poner(PTARJETA t) { tarjeta_piladescarte(t); }
Y por último, cambiar
bool tarjeta_es_libre(int i) { return(g_countries[i].tarjeta.numjug == -1); }
por
bool tarjeta_es_libre(int i) { if( !g_countries[i].tarjeta.numjug == -1 ) { for( i=0;i<COUNTRIES_CANT;i++ ) { if( g_countries[i].tarjeta.numjug == -2 ) { g_countries[i].tarjeta.numjug = -1; } } } return( g_countries[i].tarjeta.numjug == -1 ); }
Espero que les sirva.