EDIT: Ya está.. no hace falta que respondan
Buenas! Algun entendido me puede explicar porque mi codigo no funciona. Aqui la situacion:
Tengo una baraja de 52 cartas, robo las 4 primeras, y de ellas tengo que descartarme de 2.
Para ello, le muestro al jugador las 4 cartas de una en una.. es decir, si presiona L o R se cambia de carta mostrada... Si toco una carta una vez, la descarto, si la vuelvo a tocar la vuelve a coger.. y si tengo una descartada y toco otra me deberia de preguntar si ese es mi descarte definitivo. Aqui el codigo:
- Código: Seleccionar todo
int i,j=0,descartadas2=0,pos1=-1,pos2=-1;
*descarte1=0;
*descarte2=0;
for(i=0;i<4;i++){
Jugador->mano[i]=baraja[i];
baraja[i]=0;
}
MostrarCarta(Jugador->mano[j]);
while(!descartadas2){
while(!(*descarte1) || !(*descarte2)){
if(Pad.Newpress.L){
j--;
if(j<0) j=3;
MostrarCarta(Jugador->mano[j]);
}
if(Pad.Newpress.R){
j++;
if(j>3) j=0;
MostrarCarta(Jugador->mano[j]);
}
if(pos1==-1 && TocarCarta()){
pos1=j;
*descarte1=Jugador->mano[j];
}
if(TocarCarta() && j==pos1){
pos1=-1;
*descarte1=0;
}
if(pos2==-1 && TocarCarta() && pos1!=-1){ //En este if nunca entra, no se porque
pos2=j;
*descarte2=Jugador->mano[j];
}
PA_OutputText(1,1,1,"%d %d",*descarte1,*descarte2);
PA_WaitForVBL();
}
//Aqui preguntar si ese es tu descarte definitivo.
}
}
Me interesa saber las posiciones para luego borrar esas cartas de la mano. A ver si alguien me ilumina.. porque no veo la salida jaja