skip marker mode dig designations

develop
myk002 2021-06-27 12:15:21 -07:00
parent 1670cfab05
commit aa1cbc95db
No known key found for this signature in database
GPG Key ID: 8A39CA0FA0C16E78
2 changed files with 10 additions and 8 deletions

@ -2840,17 +2840,18 @@ Options:
dig-now
=======
Instantly completes dig designations, modifying tile shapes and creating
boulders, ores, and gems as if a miner were doing the mining or engraving. By
default, the entire map is processed and boulder generation follows standard
game rules, but the behavior is configurable.
Instantly completes non-marker dig designations, modifying tile shapes and
creating boulders, ores, and gems as if a miner were doing the mining or
engraving. By default, the entire map is processed and boulder generation
follows standard game rules, but the behavior is configurable.
Note that no units will get mining or engraving experience for the dug/engraved
tiles.
Trees, and roots will be ignored. Engravings are also not automatically
generated by this plugin as they depend on the skill and creative choices of
individual engravers.
Trees and roots are not currently handled by this plugin and will be skipped.
Requests for engravings are also skipped since they would depend on the skill
and creative choices of individual engravers. Other types of engraving (i.e.
smoothing and track carving) are handled.
Usage::

@ -566,7 +566,8 @@ static void do_dig(color_ostream &out, std::vector<DFCoord> &dug_coords,
DFCoord pos(x, y, z);
df::tile_designation td = map.designationAt(pos);
df::tile_occupancy to = map.occupancyAt(pos);
if (td.bits.dig != df::tile_dig_designation::No) {
if (td.bits.dig != df::tile_dig_designation::No &&
!to.bits.dig_marked) {
std::vector<dug_tile_info> dug_tiles;
if (dig_tile(out, map, pos, td.bits.dig, dug_tiles)) {
td = map.designationAt(pos);