Hola. He estao haciendo avances en mi juego, en el ordenador va bien, pero en la gp hay una parte del codigo que no me funciona como debiera. La parte es esta:
Código:
Process ponmapa(libreria)
Private
planox,planoy,finx,finy,i,j;
Begin
Loop
Frame;
//Hallo la fila y columna que contendra el grafico del tile que ira en la esquina superior izquierda
planox=(xp/32)-4
If (planox<0) planox=0;
Else
If(planox+10>anchura)
planox=anchura-9;
End
End
planoy=(yp/32)-3;
If (planoy<0) planoy=0;
Else
If(planoy+8>altura)
planoy=altura-7;
End
End
//Recorro la matriz para colocar los graficos de los tiles: 8 tiles de altura y 10 de anchura (Lo de dentro es simplemente poner la imagen que corresponda, hay tantas distinciones porque hago una especie de scroll sobre el mapa)
From i=0 To 8;
From j=0 To 10;
If (planoy==0||planoy==altura-7)
If ((yp/32)-3==0||(yp/32)+7==altura)
If((planox==0||planox==anchura-9))
If ((xp/32)-4==0||(xp/32)+9==anchura)
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+32-(yp MOD 32)-16);
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+16,32*(i)+32-(yp MOD 32)-16);
End
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+32-(yp MOD 32)-16);
End
Else
If((planox==0||planox==anchura-9))
If ((xp/32)-4==0||(xp/32)+8==anchura)
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+16);
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+16,32*(i)+16);
End
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+16);
End
End
Else
If((planox==0||planox==anchura-9))
If ((xp/32)-4==0||(xp/32)+9==anchura)
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+32-(yp MOD 32)-16);
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+16,32*(i)+32-(yp MOD 32)-16);
End
Else
put(libreria,mapa[i+planoy][j+planox],32*(j)+32-(xp MOD 32)-16,32*(i)+32-(yp MOD 32)-16);
End
End
End
End
End
End
Como ya digo el codigo esta bien (funciona en el ordenador), asi que supongo que el problema es que uso alguna funcion o algo que no este bien definido en el fenix de la gp. Yo creo que puede ser el MOD, creo que es de las primeras veces que lo uso y ademas el resto de codigo usas cosas muy secillitas y que ya he usado antes y no me han dao problemas. Si alguien me puede decir si puede ser eso, o si viendo el codigo se le ocurre que podria hacer, que me lo diga. Gracias y hasta luego.
Marcadores