|
|
@ -65,6 +65,31 @@ bomb_explode (int p, int b, int net)
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
|
|
|
bomb_move (_bomb *bomb)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
_point npos;
|
|
|
|
|
|
|
|
if (bomb->pos.x==bomb->moveto.x) {
|
|
|
|
|
|
|
|
if (bomb->pos.y==bomb->moveto.y) {
|
|
|
|
|
|
|
|
bomb->moves=0;return;}
|
|
|
|
|
|
|
|
if (bomb->pos.y>bomb->moveto.y) {
|
|
|
|
|
|
|
|
npos.y=bomb->pos.y-bomb->moves; //move bomb up
|
|
|
|
|
|
|
|
npos.x=bomb->pos.x;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
npos.y=bomb->pos.y+bomb->moves; // move bomb down
|
|
|
|
|
|
|
|
npos.x=bomb->pos.x;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
if (bomb->pos.x>bomb->moveto.x) {
|
|
|
|
|
|
|
|
npos.x=bomb->pos.x-bomb->moves; //move bomb left
|
|
|
|
|
|
|
|
npos.y=bomb->pos.y;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
npos.x=bomb->pos.x+bomb->moves; // move bomb right
|
|
|
|
|
|
|
|
npos.y=bomb->pos.y;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int
|
|
|
|
int
|
|
|
|
bomb_loop ()
|
|
|
|
bomb_loop ()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -99,6 +124,7 @@ bomb_loop ()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
draw_bomb (bomb);
|
|
|
|
draw_bomb (bomb);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// if (bomb->moves>0) bomb_move(bomb);
|
|
|
|
b++; // Count ticking Bombs for Return value
|
|
|
|
b++; // Count ticking Bombs for Return value
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case BS_exploding:
|
|
|
|
case BS_exploding:
|
|
|
|