23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
+
|
Uint32 generation_number;
Object**objects;
Uint32 nobjects;
Value globals[0x800];
Uint32 firstobj=VOIDLINK;
Uint32 lastobj=VOIDLINK;
Uint32 playfield[64*64]; // bottom-most object per cell
Uint32 bizplayfield[64*64]; // bizarro world
Uint8 pfwidth,pfheight;
Sint8 gameover,key_ignored;
Uint8 generation_number_inc;
Uint32 move_number;
unsigned char*quiz_text;
Inventory*inventory;
Uint32 ninventory;
|
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
|
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
|
-
+
|
if(n==VOIDLINK) break;
}
return t;
}
void annihilate(void) {
Uint32 i;
for(i=0;i<64*64;i++) playfield[i]=VOIDLINK;
for(i=0;i<64*64;i++) playfield[i]=bizplayfield[i]=VOIDLINK;
firstobj=lastobj=VOIDLINK;
if(quiz_text) {
sqlite3_free(quiz_text);
quiz_text=0;
}
if(!objects) return;
for(i=0;i<nobjects;i++) if(objects[i]) {
|