boom[x+1][y+1] = element;
}
-static void Lboom_bug(int x, int y, int by_element)
+static void Lboom_bug(int x, int y)
{
next[x][y] = Zbug;
Lboom_generic(x, y, Xemerald, Xdiamond);
#if PLAY_ELEMENT_SOUND
- play_element_sound(x, y, SOUND_boom, by_element);
+ play_element_sound(x, y, SOUND_boom, Xbug_1_n);
#endif
}
-static void Lboom_tank(int x, int y, int by_element)
+static void Lboom_tank(int x, int y)
{
next[x][y] = Ztank;
Lboom_generic(x, y, Xblank, Xblank);
#if PLAY_ELEMENT_SOUND
- play_element_sound(x, y, SOUND_boom, by_element);
+ play_element_sound(x, y, SOUND_boom, Xtank_1_n);
#endif
}
-static void Lboom_eater(int x, int y, int by_element)
+static void Lboom_eater(int x, int y)
{
next[x][y] = Zeater;
lev.eater_pos = (lev.eater_pos + 1) & 7;
#if PLAY_ELEMENT_SOUND
- play_element_sound(x, y, SOUND_boom, by_element);
+ play_element_sound(x, y, SOUND_boom, Xeater_n);
#endif
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_1_n);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_2_n);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_1_e);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_2_e);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_1_s);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_2_s);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_1_w);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_bug(x, y, Xbug_2_w);
+ Lboom_bug(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_1_n);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_2_n);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_1_e);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_2_e);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_1_s);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_2_s);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_1_w);
+ Lboom_tank(x, y);
return;
}
is_amoeba[cave[x][y+1]] ||
is_amoeba[cave[x-1][y]])
{
- Lboom_tank(x, y, Xtank_2_w);
+ Lboom_tank(x, y);
return;
}
case Xeater_w:
cave[x][y] = Ystone_sB;
cave[x][y+1] = Yeater_stone;
- Lboom_eater(x, y+1, Xstone_fall);
+ Lboom_eater(x, y+1);
score += lev.eater_score;
return;
case Xalien_pause:
cave[x][y] = Ystone_sB;
cave[x][y+1] = Yalien_stone;
- Lboom_tank(x, y+1, Xstone_fall);
+ Lboom_tank(x, y+1);
score += lev.alien_score;
return;
case Xbug_2_w:
cave[x][y] = Ystone_sB;
cave[x][y+1] = Ybug_stone;
- Lboom_bug(x, y+1, Xstone_fall);
+ Lboom_bug(x, y+1);
score += lev.bug_score;
return;
case Xtank_2_w:
cave[x][y] = Ystone_sB;
cave[x][y+1] = Ytank_stone;
- Lboom_tank(x, y+1, Xstone_fall);
+ Lboom_tank(x, y+1);
score += lev.tank_score;
return;
case Xbomb:
case Xbomb_pause:
cave[x][y+1] = Ybomb_blank;
- Lboom_tank(x, y+1, Xstone_fall);
+ Lboom_tank(x, y+1);
return;
case Xnut:
default:
cave[x][y] = Ybomb_blank;
- Lboom_tank(x, y, Xbomb_fall);
+ Lboom_tank(x, y);
return;
}
}
case Xeater_w:
cave[x][y] = Yspring_sB;
cave[x][y+1] = Yeater_spring;
- Lboom_eater(x, y+1, Xspring_fall);
+ Lboom_eater(x, y+1);
score += lev.eater_score;
return;
case Xalien_pause:
cave[x][y] = Yspring_sB;
cave[x][y+1] = Yalien_spring;
- Lboom_tank(x, y+1, Xspring_fall);
+ Lboom_tank(x, y+1);
score += lev.alien_score;
return;
case Xbug_2_w:
cave[x][y] = Yspring_sB;
cave[x][y+1] = Ybug_spring;
- Lboom_bug(x, y+1, Xspring_fall);
+ Lboom_bug(x, y+1);
score += lev.bug_score;
return;
case Xtank_2_w:
cave[x][y] = Yspring_sB;
cave[x][y+1] = Ytank_spring;
- Lboom_tank(x, y+1, Xspring_fall);
+ Lboom_tank(x, y+1);
score += lev.tank_score;
return;
case Xbomb:
case Xbomb_pause:
cave[x][y+1] = Ybomb_blank;
- Lboom_tank(x, y+1, Xspring_fall);
+ Lboom_tank(x, y+1);
return;
default:
case Xpause: Lpause(x, y); break;
- case Xboom_bug: Lboom_bug(x, y, Xboom_bug); break;
- case Xboom_tank: Lboom_tank(x, y, Xboom_tank); break;
+ case Xboom_bug: Lboom_bug(x, y); break;
+ case Xboom_tank: Lboom_tank(x, y); break;
case Xboom_android: Lboom_android(x, y); break;
case Xboom_1: Lboom_1(x, y); break;
case Xboom_2: Lboom_2(x, y); break;