switch(Cave[x+dx][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y] = dx > 0 ? Ystone_e : Ystone_w;
+ Next[x+dx][y] = Xstone_pause;
+ goto stone_walk;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
if (Cave[x+dx-1][y-1] == Xblank)
Cave[x+dx-1][y-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto stone_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y] = dx > 0 ? Ystone_e : Ystone_w;
- Next[x+dx][y] = Xstone_pause;
stone_walk:
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_roll, Xstone);
ply->x = x;
+ break;
}
ply->anim = PLY_push_n + anim;
switch(Cave[x+dx][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y] = dx > 0 ? Ybomb_e : Ybomb_w;
+ Next[x+dx][y] = Xbomb_pause;
+ goto bomb_walk;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
if (Cave[x+dx-1][y-1] == Xblank)
Cave[x+dx-1][y-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto bomb_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y] = dx > 0 ? Ybomb_e : Ybomb_w;
- Next[x+dx][y] = Xbomb_pause;
bomb_walk:
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_roll, Xbomb);
ply->x = x;
+ break;
}
ply->anim = PLY_push_n + anim;
switch(Cave[x+dx][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y] = dx > 0 ? Ynut_e : Ynut_w;
+ Next[x+dx][y] = Xnut_pause;
+ goto nut_walk;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
if (Cave[x+dx-1][y-1] == Xblank)
Cave[x+dx-1][y-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto nut_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y] = dx > 0 ? Ynut_e : Ynut_w;
- Next[x+dx][y] = Xnut_pause;
nut_walk:
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_roll, Xnut);
ply->x = x;
+ break;
}
ply->anim = PLY_push_n + anim;
switch(Cave[x+dx][y])
{
- case Xalien:
- case Xalien_pause:
- Cave[x][y] = dx > 0 ? Yspring_alien_eB : Yspring_alien_wB;
- Cave[x+dx][y] = dx > 0 ? Yspring_alien_e : Yspring_alien_w;
- Next[x][y] = Zplayer;
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y] = dx > 0 ? Yspring_e : Yspring_w;
Next[x+dx][y] = dx > 0 ? Xspring_e : Xspring_w;
- play_element_sound(x, y, SOUND_slurp, Xalien);
- lev.score += lev.slurp_score;
- ply->x = x;
- break;
+ goto spring_walk;
case Xacid_1:
case Xacid_2:
if (Cave[x+dx-1][y-1] == Xblank)
Cave[x+dx-1][y-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto spring_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y] = dx > 0 ? Yspring_e : Yspring_w;
- Next[x+dx][y] = dx > 0 ? Xspring_e : Xspring_w;
spring_walk:
+
Cave[x][y] = dx > 0 ? Yspring_eB : Yspring_wB;
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_roll, Xspring);
ply->x = x;
+ break;
+
+ case Xalien:
+ case Xalien_pause:
+ Cave[x][y] = dx > 0 ? Yspring_alien_eB : Yspring_alien_wB;
+ Cave[x+dx][y] = dx > 0 ? Yspring_alien_e : Yspring_alien_w;
+ Next[x][y] = Zplayer;
+ Next[x+dx][y] = dx > 0 ? Xspring_e : Xspring_w;
+ play_element_sound(x, y, SOUND_slurp, Xalien);
+ lev.score += lev.slurp_score;
+ ply->x = x;
+ break;
}
ply->anim = PLY_push_n + anim;
case Xballoon:
switch(Cave[x+dx][y+dy])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y+dy] = (dy ? (dy < 0 ? Yballoon_n : Yballoon_s) :
+ (dx > 0 ? Yballoon_e : Yballoon_w));
+ Next[x+dx][y+dy] = Xballoon;
+ goto balloon_walk;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
if (Cave[x+dx-1][y+dy-1] == Xblank)
Cave[x+dx-1][y+dy-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto balloon_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y+dy] = (dy ? (dy < 0 ? Yballoon_n : Yballoon_s) :
- (dx > 0 ? Yballoon_e : Yballoon_w));
- Next[x+dx][y+dy] = Xballoon;
balloon_walk:
+
Cave[x][y] = (dy ? (dy < 0 ? Yballoon_nB : Yballoon_sB) :
(dx > 0 ? Yballoon_eB : Yballoon_wB));
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_push, Xballoon);
ply->x = x;
ply->y = y;
+ break;
}
ply->anim = PLY_push_n + anim;
case Xandroid_2_w:
switch(Cave[x+dx][y+dy])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x+dx][y+dy] = (dy ? (dy < 0 ? Yandroid_n : Yandroid_s) :
+ (dx > 0 ? Yandroid_e : Yandroid_w));
+ Next[x+dx][y+dy] = (dy ? (dy < 0 ? Xandroid_2_n : Xandroid_2_s) :
+ (dx > 0 ? Xandroid_2_e : Xandroid_2_w));
+ goto android_walk;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
if (Cave[x+dx-1][y+dy-1] == Xblank)
Cave[x+dx-1][y+dy-1] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
- goto android_walk;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x+dx][y+dy] = (dy ? (dy < 0 ? Yandroid_n : Yandroid_s) :
- (dx > 0 ? Yandroid_e : Yandroid_w));
- Next[x+dx][y+dy] = (dy ? (dy < 0 ? Xandroid_2_n : Xandroid_2_s) :
- (dx > 0 ? Xandroid_2_e : Xandroid_2_w));
android_walk:
+
Cave[x][y] = (dy ? (dy < 0 ? Yandroid_nB : Yandroid_sB) :
(dx > 0 ? Yandroid_eB : Yandroid_wB));
Next[x][y] = Zplayer;
play_element_sound(x, y, SOUND_push, Xandroid);
ply->x = x;
ply->y = y;
+ break;
}
ply->anim = PLY_push_n + anim;
break;
door_walk:
+
if (!tab_blank[Cave[x+dx][y+dy]])
break;
goto wind_walk;
wind_walk:
+
play_element_sound(x, y, SOUND_press, element);
lev.wind_cnt = lev.wind_time;
break;
goto key_shoot;
key_shoot:
+
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_collect, element);
lev.score += lev.key_score;
{
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_nB;
+ Cave[x][y-1] = Yandroid_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xandroid;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_1_n);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_nB;
- Cave[x][y-1] = Yandroid_n;
- Next[x][y] = Xblank;
- Next[x][y-1] = Xandroid;
- play_element_sound(x, y, SOUND_android_move, Xandroid_1_n);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_nB;
+ Cave[x][y-1] = Yandroid_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xandroid_1_n;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_2_n);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_nB;
- Cave[x][y-1] = Yandroid_n;
- Next[x][y] = Xblank;
- Next[x][y-1] = Xandroid_1_n;
- play_element_sound(x, y, SOUND_android_move, Xandroid_2_n);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_eB;
+ Cave[x+1][y] = Yandroid_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xandroid;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_1_e);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_eB;
- Cave[x+1][y] = Yandroid_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xandroid;
- play_element_sound(x, y, SOUND_android_move, Xandroid_1_e);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_eB;
+ Cave[x+1][y] = Yandroid_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xandroid_1_e;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_2_e);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_eB;
- Cave[x+1][y] = Yandroid_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xandroid_1_e;
- play_element_sound(x, y, SOUND_android_move, Xandroid_2_e);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_sB;
+ Cave[x][y+1] = Yandroid_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xandroid;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_1_s);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_sB;
- Cave[x][y+1] = Yandroid_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xandroid;
- play_element_sound(x, y, SOUND_android_move, Xandroid_1_s);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_sB;
+ Cave[x][y+1] = Yandroid_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xandroid_1_s;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_2_s);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_sB;
- Cave[x][y+1] = Yandroid_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xandroid_1_s;
- play_element_sound(x, y, SOUND_android_move, Xandroid_2_s);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_wB;
+ Cave[x-1][y] = Yandroid_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xandroid;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_1_w);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_wB;
- Cave[x-1][y] = Yandroid_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xandroid;
- play_element_sound(x, y, SOUND_android_move, Xandroid_1_w);
- return;
-
default:
Landroid(x, y);
return;
{
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yandroid_wB;
+ Cave[x-1][y] = Yandroid_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xandroid_1_w;
+ play_element_sound(x, y, SOUND_android_move, Xandroid_1_w);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yandroid_wB;
- Cave[x-1][y] = Yandroid_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xandroid_1_w;
- play_element_sound(x, y, SOUND_android_move, Xandroid_1_w);
- return;
-
default:
Landroid(x, y);
return;
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yeater_nB;
+ Cave[x][y-1] = Yeater_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xeater_n;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yeater_nB;
- Cave[x][y-1] = Yeater_n;
- Next[x][y] = Xblank;
- Next[x][y-1] = Xeater_n;
- return;
-
default:
Next[x][y] = RANDOM(2) ? Xeater_e : Xeater_w;
play_element_sound(x, y, SOUND_eater, Xeater_n);
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yeater_eB;
+ Cave[x+1][y] = Yeater_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xeater_e;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yeater_eB;
- Cave[x+1][y] = Yeater_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xeater_e;
- return;
-
default:
Next[x][y] = RANDOM(2) ? Xeater_n : Xeater_s;
play_element_sound(x, y, SOUND_eater, Xeater_e);
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yeater_sB;
+ Cave[x][y+1] = Yeater_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xeater_s;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yeater_sB;
- Cave[x][y+1] = Yeater_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xeater_s;
- return;
-
default:
Next[x][y] = RANDOM(2) ? Xeater_e : Xeater_w;
play_element_sound(x, y, SOUND_eater, Xeater_s);
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yeater_wB;
+ Cave[x-1][y] = Yeater_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xeater_w;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yeater_wB;
- Cave[x-1][y] = Yeater_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xeater_w;
- return;
-
default:
Next[x][y] = RANDOM(2) ? Xeater_n : Xeater_s;
play_element_sound(x, y, SOUND_eater, Xeater_w);
{
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yalien_nB;
+ Cave[x][y-1] = Yalien_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xalien_pause;
+ play_element_sound(x, y, SOUND_alien, Xalien);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
-
+ }
+ }
+ else if (y < dy)
+ {
+ switch (Cave[x][y+1])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
case Xplant:
case Yplant:
case Zplayer:
- Cave[x][y] = Yalien_nB;
- Cave[x][y-1] = Yalien_n;
+ Cave[x][y] = Yalien_sB;
+ Cave[x][y+1] = Yalien_s;
Next[x][y] = Xblank;
- Next[x][y-1] = Xalien_pause;
+ Next[x][y+1] = Xalien_pause;
play_element_sound(x, y, SOUND_alien, Xalien);
return;
- }
- }
- else if (y < dy)
- {
- switch (Cave[x][y+1])
- {
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
Cave[x-1][y] = Xacid_splash_w;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yalien_sB;
- Cave[x][y+1] = Yalien_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xalien_pause;
- play_element_sound(x, y, SOUND_alien, Xalien);
- return;
}
}
}
{
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Yalien_eB;
+ Cave[x+1][y] = Yalien_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xalien_pause;
+ play_element_sound(x, y, SOUND_alien, Xalien);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
-
+ }
+ }
+ else if (x > dx)
+ {
+ switch (Cave[x-1][y])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
case Xplant:
case Yplant:
case Zplayer:
- Cave[x][y] = Yalien_eB;
- Cave[x+1][y] = Yalien_e;
+ Cave[x][y] = Yalien_wB;
+ Cave[x-1][y] = Yalien_w;
Next[x][y] = Xblank;
- Next[x+1][y] = Xalien_pause;
+ Next[x-1][y] = Xalien_pause;
play_element_sound(x, y, SOUND_alien, Xalien);
return;
- }
- }
- else if (x > dx)
- {
- switch (Cave[x-1][y])
- {
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Yalien_wB;
- Cave[x-1][y] = Yalien_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xalien_pause;
- play_element_sound(x, y, SOUND_alien, Xalien);
- return;
}
}
}
{
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ybug_nB;
+ Cave[x][y-1] = Ybug_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xbug_1_n;
+ play_element_sound(x, y, SOUND_bug, Xbug_1_n);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ybug_nB;
- Cave[x][y-1] = Ybug_n;
- Next[x][y] = Xblank;
- Next[x][y-1] = Xbug_1_n;
- play_element_sound(x, y, SOUND_bug, Xbug_1_n);
- return;
-
default:
Cave[x][y] = Ybug_n_w;
Next[x][y] = Xbug_2_w;
{
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ybug_eB;
+ Cave[x+1][y] = Ybug_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xbug_1_e;
+ play_element_sound(x, y, SOUND_bug, Xbug_1_e);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ybug_eB;
- Cave[x+1][y] = Ybug_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xbug_1_e;
- play_element_sound(x, y, SOUND_bug, Xbug_1_e);
- return;
-
default:
Cave[x][y] = Ybug_e_n;
Next[x][y] = Xbug_2_n;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ybug_sB;
+ Cave[x][y+1] = Ybug_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xbug_1_s;
+ play_element_sound(x, y, SOUND_bug, Xbug_1_s);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ybug_sB;
- Cave[x][y+1] = Ybug_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xbug_1_s;
- play_element_sound(x, y, SOUND_bug, Xbug_1_s);
- return;
-
default:
Cave[x][y] = Ybug_s_e;
Next[x][y] = Xbug_2_e;
{
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ybug_wB;
+ Cave[x-1][y] = Ybug_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xbug_1_w;
+ play_element_sound(x, y, SOUND_bug, Xbug_1_w);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ybug_wB;
- Cave[x-1][y] = Ybug_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xbug_1_w;
- play_element_sound(x, y, SOUND_bug, Xbug_1_w);
- return;
-
default:
Cave[x][y] = Ybug_w_s;
Next[x][y] = Xbug_2_s;
{
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ytank_nB;
+ Cave[x][y-1] = Ytank_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xtank_1_n;
+ play_element_sound(x, y, SOUND_tank, Xtank_1_n);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ytank_nB;
- Cave[x][y-1] = Ytank_n;
- Next[x][y] = Xblank;
- Next[x][y-1] = Xtank_1_n;
- play_element_sound(x, y, SOUND_tank, Xtank_1_n);
- return;
-
default:
Cave[x][y] = Ytank_n_e;
Next[x][y] = Xtank_2_e;
{
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ytank_eB;
+ Cave[x+1][y] = Ytank_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xtank_1_e;
+ play_element_sound(x, y, SOUND_tank, Xtank_1_e);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ytank_eB;
- Cave[x+1][y] = Ytank_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xtank_1_e;
- play_element_sound(x, y, SOUND_tank, Xtank_1_e);
- return;
-
default:
Cave[x][y] = Ytank_e_s;
Next[x][y] = Xtank_2_s;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ytank_sB;
+ Cave[x][y+1] = Ytank_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xtank_1_s;
+ play_element_sound(x, y, SOUND_tank, Xtank_1_s);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ytank_sB;
- Cave[x][y+1] = Ytank_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xtank_1_s;
- play_element_sound(x, y, SOUND_tank, Xtank_1_s);
- return;
-
default:
Cave[x][y] = Ytank_s_w;
Next[x][y] = Xtank_2_w;
{
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ytank_wB;
+ Cave[x-1][y] = Ytank_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xtank_1_w;
+ play_element_sound(x, y, SOUND_tank, Xtank_1_w);
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ytank_wB;
- Cave[x-1][y] = Ytank_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xtank_1_w;
- play_element_sound(x, y, SOUND_tank, Xtank_1_w);
- return;
-
default:
Cave[x][y] = Ytank_w_n;
Next[x][y] = Xtank_2_n;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yemerald_sB;
+ Cave[x][y+1] = Yemerald_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xemerald_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yemerald_sB;
- Cave[x][y+1] = Yemerald_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xemerald_fall;
- return;
-
case Xspring:
case Xspring_pause:
case Xspring_e:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yemerald_sB;
+ Cave[x][y+1] = Yemerald_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xemerald_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yemerald_sB;
- Cave[x][y+1] = Yemerald_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xemerald_fall;
- return;
-
default:
Cave[x][y] = Xemerald;
Next[x][y] = Xemerald;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Zplayer:
+ Cave[x][y] = Yemerald_sB;
+ Cave[x][y+1] = Yemerald_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xemerald_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Zplayer:
- Cave[x][y] = Yemerald_sB;
- Cave[x][y+1] = Yemerald_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xemerald_fall;
- return;
-
case Xwonderwall:
if (lev.wonderwall_time)
{
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ydiamond_sB;
+ Cave[x][y+1] = Ydiamond_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xdiamond_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ydiamond_sB;
- Cave[x][y+1] = Ydiamond_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xdiamond_fall;
- return;
-
case Xspring:
case Xspring_pause:
case Xspring_e:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ydiamond_sB;
+ Cave[x][y+1] = Ydiamond_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xdiamond_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ydiamond_sB;
- Cave[x][y+1] = Ydiamond_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xdiamond_fall;
- return;
-
default:
Cave[x][y] = Xdiamond;
Next[x][y] = Xdiamond;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Zplayer:
+ Cave[x][y] = Ydiamond_sB;
+ Cave[x][y+1] = Ydiamond_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xdiamond_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Zplayer:
- Cave[x][y] = Ydiamond_sB;
- Cave[x][y+1] = Ydiamond_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xdiamond_fall;
- return;
-
case Xwonderwall:
if (lev.wonderwall_time)
{
{
switch (Cave[x][y+1])
{
- case Xacid_1:
- case Xacid_2:
- case Xacid_3:
- case Xacid_4:
- case Xacid_5:
- case Xacid_6:
- case Xacid_7:
- case Xacid_8:
- Cave[x][y] = Ystone_sB;
- if (Cave[x+1][y] == Xblank)
- Cave[x+1][y] = Xacid_splash_e;
- if (Cave[x-1][y] == Xblank)
- Cave[x-1][y] = Xacid_splash_w;
- Next[x][y] = Xblank;
- play_element_sound(x, y, SOUND_acid, Xacid_1);
- return;
-
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
Next[x][y+1] = Xstone_fall;
return;
+ case Xacid_1:
+ case Xacid_2:
+ case Xacid_3:
+ case Xacid_4:
+ case Xacid_5:
+ case Xacid_6:
+ case Xacid_7:
+ case Xacid_8:
+ Cave[x][y] = Ystone_sB;
+ if (Cave[x+1][y] == Xblank)
+ Cave[x+1][y] = Xacid_splash_e;
+ if (Cave[x-1][y] == Xblank)
+ Cave[x-1][y] = Xacid_splash_w;
+ Next[x][y] = Xblank;
+ play_element_sound(x, y, SOUND_acid, Xacid_1);
+ return;
+
case Xsand:
Cave[x][y] = Xsand_stonein_1;
Cave[x][y+1] = Xsand_sandstone_1;
{
switch (Cave[x][y+1])
{
- case Xacid_1:
- case Xacid_2:
- case Xacid_3:
- case Xacid_4:
- case Xacid_5:
- case Xacid_6:
- case Xacid_7:
- case Xacid_8:
- Cave[x][y] = Ystone_sB;
- if (Cave[x+1][y] == Xblank)
- Cave[x+1][y] = Xacid_splash_e;
- if (Cave[x-1][y] == Xblank)
- Cave[x-1][y] = Xacid_splash_w;
- Next[x][y] = Xblank;
- play_element_sound(x, y, SOUND_acid, Xacid_1);
- return;
-
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
Next[x][y+1] = Xstone_fall;
return;
- default:
- Cave[x][y] = Xstone;
- Next[x][y] = Xstone;
- return;
- }
-}
-
-static void Lstone_fall(int x, int y)
-{
- switch (Cave[x][y+1])
- {
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
+ default:
+ Cave[x][y] = Xstone;
+ Next[x][y] = Xstone;
+ return;
+ }
+}
+
+static void Lstone_fall(int x, int y)
+{
+ switch (Cave[x][y+1])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
Next[x][y+1] = Xstone_fall;
return;
+ case Xacid_1:
+ case Xacid_2:
+ case Xacid_3:
+ case Xacid_4:
+ case Xacid_5:
+ case Xacid_6:
+ case Xacid_7:
+ case Xacid_8:
+ Cave[x][y] = Ystone_sB;
+ if (Cave[x+1][y] == Xblank)
+ Cave[x+1][y] = Xacid_splash_e;
+ if (Cave[x-1][y] == Xblank)
+ Cave[x-1][y] = Xacid_splash_w;
+ Next[x][y] = Xblank;
+ play_element_sound(x, y, SOUND_acid, Xacid_1);
+ return;
+
case Xnut:
case Xnut_pause:
Cave[x][y+1] = Ynut_stone;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ybomb_sB;
+ Cave[x][y+1] = Ybomb_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xbomb_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ybomb_sB;
- Cave[x][y+1] = Ybomb_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xbomb_fall;
- return;
-
case Xspring:
case Xspring_pause:
case Xspring_e:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ybomb_sB;
+ Cave[x][y+1] = Ybomb_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xbomb_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ybomb_sB;
- Cave[x][y+1] = Ybomb_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xbomb_fall;
- return;
-
default:
Cave[x][y] = Xbomb;
Next[x][y] = Xbomb;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ybomb_sB;
+ Cave[x][y+1] = Ybomb_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xbomb_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ybomb_sB;
- Cave[x][y+1] = Ybomb_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xbomb_fall;
- return;
-
default:
Cave[x][y] = Ybomb_blank;
Next[x][y] = Znormal;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ynut_sB;
+ Cave[x][y+1] = Ynut_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xnut_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ynut_sB;
- Cave[x][y+1] = Ynut_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xnut_fall;
- return;
-
case Xspring:
case Xspring_pause:
case Xspring_e:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Ynut_sB;
+ Cave[x][y+1] = Ynut_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xnut_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Ynut_sB;
- Cave[x][y+1] = Ynut_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xnut_fall;
- return;
-
default:
Cave[x][y] = Xnut;
Next[x][y] = Xnut;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Zplayer:
+ Cave[x][y] = Ynut_sB;
+ Cave[x][y+1] = Ynut_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xnut_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Zplayer:
- Cave[x][y] = Ynut_sB;
- Cave[x][y+1] = Ynut_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xnut_fall;
- return;
-
default:
Cave[x][y] = Xnut;
Next[x][y] = Xnut;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ Cave[x][y] = Yspring_sB;
+ Cave[x][y+1] = Yspring_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xspring_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- Cave[x][y] = Yspring_sB;
- Cave[x][y+1] = Yspring_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xspring_fall;
- return;
-
case Xspring:
case Xspring_pause:
case Xspring_e:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yspring_sB;
+ Cave[x][y+1] = Yspring_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xspring_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yspring_sB;
- Cave[x][y+1] = Yspring_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xspring_fall;
- return;
-
default:
Cave[x][y] = Xspring;
Next[x][y] = Xspring;
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yspring_sB;
+ Cave[x][y+1] = Yspring_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xspring_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yspring_sB;
- Cave[x][y+1] = Yspring_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xspring_fall;
- return;
-
case Xbumper:
Cave[x][y+1] = XbumperB;
}
switch (Cave[x+1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Yalien_nB:
+ case Yalien_eB:
+ case Yalien_sB:
+ case Yalien_wB:
+ Cave[x][y] = Yspring_eB;
+ Cave[x+1][y] = Yspring_e;
+ Next[x][y] = Xblank;
+ Next[x+1][y] = Xspring_e;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Yalien_nB:
- case Yalien_eB:
- case Yalien_sB:
- case Yalien_wB:
- Cave[x][y] = Yspring_eB;
- Cave[x+1][y] = Yspring_e;
- Next[x][y] = Xblank;
- Next[x+1][y] = Xspring_e;
- return;
-
case Xalien:
case Xalien_pause:
case Yalien_n:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yspring_sB;
+ Cave[x][y+1] = Yspring_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xspring_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yspring_sB;
- Cave[x][y+1] = Yspring_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xspring_fall;
- return;
-
case Xbumper:
Cave[x][y+1] = XbumperB;
}
switch (Cave[x-1][y])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Yalien_nB:
+ case Yalien_eB:
+ case Yalien_sB:
+ case Yalien_wB:
+ Cave[x][y] = Yspring_wB;
+ Cave[x-1][y] = Yspring_w;
+ Next[x][y] = Xblank;
+ Next[x-1][y] = Xspring_w;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Yalien_nB:
- case Yalien_eB:
- case Yalien_sB:
- case Yalien_wB:
- Cave[x][y] = Yspring_wB;
- Cave[x-1][y] = Yspring_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xspring_w;
- return;
-
case Xalien:
case Xalien_pause:
case Yalien_n:
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Zplayer:
+ Cave[x][y] = Yspring_sB;
+ Cave[x][y+1] = Yspring_s;
+ Next[x][y] = Xblank;
+ Next[x][y+1] = Xspring_fall;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Zplayer:
- Cave[x][y] = Yspring_sB;
- Cave[x][y+1] = Yspring_s;
- Next[x][y] = Xblank;
- Next[x][y+1] = Xspring_fall;
- return;
-
case Xbomb:
case Xbomb_pause:
Cave[x][y+1] = Ybomb_blank;
case 0: /* north */
switch (Cave[x][y-1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Yballoon_nB;
+ Cave[x][y-1] = Yballoon_n;
+ Next[x][y] = Xblank;
+ Next[x][y-1] = Xballoon;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
+ }
+ break;
+ case 1: /* east */
+ switch (Cave[x+1][y])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
- Cave[x][y] = Yballoon_nB;
- Cave[x][y-1] = Yballoon_n;
+ Cave[x][y] = Yballoon_eB;
+ Cave[x+1][y] = Yballoon_e;
Next[x][y] = Xblank;
- Next[x][y-1] = Xballoon;
+ Next[x+1][y] = Xballoon;
return;
- }
- break;
- case 1: /* east */
- switch (Cave[x+1][y])
- {
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
+ }
+ break;
+ case 2: /* south */
+ switch (Cave[x][y+1])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
- Cave[x][y] = Yballoon_eB;
- Cave[x+1][y] = Yballoon_e;
+ Cave[x][y] = Yballoon_sB;
+ Cave[x][y+1] = Yballoon_s;
Next[x][y] = Xblank;
- Next[x+1][y] = Xballoon;
+ Next[x][y+1] = Xballoon;
return;
- }
- break;
- case 2: /* south */
- switch (Cave[x][y+1])
- {
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
+ }
+ break;
+ case 3: /* west */
+ switch (Cave[x-1][y])
+ {
case Xblank:
case Xacid_splash_e:
case Xacid_splash_w:
- Cave[x][y] = Yballoon_sB;
- Cave[x][y+1] = Yballoon_s;
+ Cave[x][y] = Yballoon_wB;
+ Cave[x-1][y] = Yballoon_w;
Next[x][y] = Xblank;
- Next[x][y+1] = Xballoon;
+ Next[x-1][y] = Xballoon;
return;
- }
- break;
- case 3: /* west */
- switch (Cave[x-1][y])
- {
case Xacid_1:
case Xacid_2:
case Xacid_3:
Next[x][y] = Xblank;
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
-
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Yballoon_wB;
- Cave[x-1][y] = Yballoon_w;
- Next[x][y] = Xblank;
- Next[x-1][y] = Xballoon;
- return;
}
break;
}
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ case Xplant:
+ case Yplant:
+ case Zplayer:
+ Cave[x][y] = Ydrip_1_sB;
+ Cave[x][y+1] = Ydrip_1_s;
+ Next[x][y] = Xdrip_stretchB;
+ Next[x][y+1] = Xdrip_stretch;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- case Xplant:
- case Yplant:
- case Zplayer:
- Cave[x][y] = Ydrip_1_sB;
- Cave[x][y+1] = Ydrip_1_s;
- Next[x][y] = Xdrip_stretchB;
- Next[x][y+1] = Xdrip_stretch;
- return;
-
default:
switch (RANDOM(8))
{
{
switch (Cave[x][y+1])
{
+ case Xblank:
+ case Xacid_splash_e:
+ case Xacid_splash_w:
+ Cave[x][y] = Xsand_stonesand_quickout_1;
+ Cave[x][y+1] = Xsand_stoneout_1;
+ Next[x][y] = Xsand_stonesand_quickout_2;
+ Next[x][y+1] = Xsand_stoneout_2;
+ return;
+
case Xacid_1:
case Xacid_2:
case Xacid_3:
play_element_sound(x, y, SOUND_acid, Xacid_1);
return;
- case Xblank:
- case Xacid_splash_e:
- case Xacid_splash_w:
- Cave[x][y] = Xsand_stonesand_quickout_1;
- Cave[x][y+1] = Xsand_stoneout_1;
- Next[x][y] = Xsand_stonesand_quickout_2;
- Next[x][y+1] = Xsand_stoneout_2;
- return;
-
case Xsand:
Cave[x][y] = Xsand_stonesand_1;
Cave[x][y+1] = Xsand_sandstone_1;