X-Git-Url: https://plomlompom.com/repos/?p=plomrogue;a=blobdiff_plain;f=libplomrogue.c;h=37cc8ef0085d6f4f341c7f9a05a2a27fba10a742;hp=d0b15a10bc5d260f4fcf1fc75af6551863e01157;hb=c94c0575b191d0162d8a1cbbbe4e59cca2e40324;hpb=a50806df8116a81729220bd79870639b18da9d8c diff --git a/libplomrogue.c b/libplomrogue.c index d0b15a1..37cc8ef 100644 --- a/libplomrogue.c +++ b/libplomrogue.c @@ -600,7 +600,8 @@ extern void age_some_memdepthmap_on_nonfov_cells(char * memdepthmap, } } -extern uint8_t set_cells_passable_on_memmap_to_65534_on_scoremap(char * mem_map) +extern uint8_t set_cells_passable_on_memmap_to_65534_on_scoremap(char * mem_map, + const char * symbols_passable) { if (!score_map) { @@ -610,10 +611,27 @@ extern uint8_t set_cells_passable_on_memmap_to_65534_on_scoremap(char * mem_map) uint16_t pos; for (pos = 0; pos < map_size; pos++) { - if ('.' == mem_map[pos]) + if (NULL != strchr(symbols_passable, mem_map[pos])) { score_map[pos] = 65534; } } return 0; } + + +extern void update_mem_and_memdepthmap_via_fovmap(char * map, char * fovmap, + char * memdepthmap, + char * memmap) +{ + uint32_t map_size = maplength * maplength; + uint16_t pos; + for (pos = 0; pos < map_size; pos++) + { + if ('v' == fovmap[pos]) + { + memdepthmap[pos] = '0'; + memmap[pos] = map[pos]; + } + } +}