lunes, 10 de marzo de 2008

¿Arrays de enteros o array de struct?

Me he dado cuenta de que la forma de almacenar los datos del juego, como los eventos por escena, los nombres de los ficheros y demás, que estoy utilizando es, sinceramente, una chapuza.
Casi todos los datos son listas de enteros y enums. Los meto en arrays de esta forma:

int datosTextos[]= {
12, 0, 0, NORMAL_PEQ, 128, 128, 128, 50, 50,
12, 0, 1, NORMAL_PEQ, 128, 128, 128, 50, 50,
12, 1, 2, ABERRED_GRA,255, 0, 0, 200,300
};

Luego, en los constructores de los objetos, por ejemplo claseEscena, utilizo funciones que me sacan los datos y construyo las propiedades privadas que necesito en ese momento.
El problema que tiene esta forma de trabajar es que sólo puedo meter enteros en los arrays. Los literales de texto van a parte en funciones específicas. He ahí la chapuza.
Estoy pensando en utilizar structs. Así, podría meter un literal char * junto con los int para cada elemento del array. Podría mantener las llamadas a las funciones y la librería de datos quedaría mucho más clara.
Ya veremos qué hago. Lo dejamos en la lista de "estaría bien si...".

No hay comentarios: