Hola gente del foro, me encuentro haciendo gráficos para un LCD de 20x4, ya programé pelotas que rebotan por toda la pantalla, pero ahora quiero poner bloques con los cuales choquen, para lo cuál hice una función que me genera los bloques en la pantalla, previamente definiendo sus coordenadas y su tamaño, pues bien, primero defino mis bloques:
int8 block_1[2][2]= {1,1, // coordenadas
2,2 }; // tamaño
int8 block_2[2][2]= {1,18, // coordenadas
3,3 }; // tamaño
int8 block_3[2][2]= {2,6, // coordenadas
1,1 }; // tamaño
y cuando quiero imprimir un bloque, lo tengo que hacer según la siguiente función:
void print_block(int8 block_number) // Imprime un bloque en la pantalla
{
if(block_number==1)
{
// trabaja con block_1
}
else if(block_number==2)
{
// trabaja con block_2
}
else if(block_number==3)
{
// trabaja con block_3
}
}
Mi pregunta es: alguien sabe una forma de escribir mi función print_block(no. de block) para no tener que poner un if en cada número de bloque, ya que mis bloques se llaman block_1[][], block_2[][] y block_3[][], y me encantaría poder llamarlos genericamente como print_block(1), donde el 1 sería el _1 de block.
O poder definir mis bloques como block(n), para así distinguirlos con una variable??
La cosa es que me gustaría trabajr dentro de mi función asi:
print_block(int8 no_block)
{
block(no_block)
}
Gracias por adelantado a toda la ayuda que me puedan brindar.