0
|
1 typedef float FVECTOR[4];
|
|
2 typedef float FMATRIX[4][4];
|
|
3
|
|
4 typedef struct width_height{
|
|
5 short w;
|
|
6 short h;
|
|
7 } WX;;
|
|
8
|
|
9 typedef struct surface {
|
|
10 int size;
|
|
11 char *name;
|
|
12 char *parent_name;
|
|
13 short w;
|
|
14 short h;
|
|
15 FVECTOR *data[4];
|
|
16 FVECTOR xyz;
|
|
17 FVECTOR angle;
|
|
18 int *texture; // pointer of this surface's texture
|
|
19 char *image_name;
|
|
20 struct surface *next;
|
|
21 struct surface *child;
|
|
22 struct surface *parent;
|
|
23 struct surface *brother;
|
|
24 } SURFACE;
|
|
25
|
|
26 typedef struct object {
|
|
27 FVECTOR xyz; // position
|
|
28 FVECTOR angle; // angle
|
|
29 FMATRIX transfer; // transfer matrix
|
|
30 char *name; // object's name
|
|
31 char *free_me; // pointer for free myself
|
|
32 SURFACE *surfaces;
|
|
33 } OBJECT;
|
|
34
|
|
35 void init_object(OBJECT *obj);
|
|
36 void free_object(OBJECT *obj);
|
|
37 OBJECT *font;
|
|
38 OBJECT *chara;
|
|
39 OBJECT *effect;
|
|
40 OBJECT *boss;
|