+void bd_unfill_recurse(entity minigame, entity player, int thetype, int letter, int number)
+{
+ string pos = minigame_tile_buildname(letter,number);
+ if(!bd_valid_tile(pos))
+ return;
+
+ entity targ = bd_find_piece(minigame, pos, true);
+ entity piece = bd_find_piece(minigame, pos, false);
+
+ if(targ && thetype == targ.bd_tiletype)
+ {
+ if(targ.netname) { strunzone(targ.netname); }
+ remove(targ);
+ }
+ else if(piece && thetype == piece.bd_tiletype)
+ {
+ if(piece.netname) { strunzone(piece.netname); }
+ remove(piece);
+ }
+ else return;
+
+ bd_unfill_recurse(minigame, player, thetype, letter - 1, number);
+ bd_unfill_recurse(minigame, player, thetype, letter + 1, number);
+ bd_unfill_recurse(minigame, player, thetype, letter, number - 1);
+ bd_unfill_recurse(minigame, player, thetype, letter, number + 1);
+}
+