diff -pruN slashem-0.0.7E7F1-official-release/include/dgn_char.h slashem-0.0.7E7F1-visenhance/include/dgn_char.h --- slashem-0.0.7E7F1-official-release/include/dgn_char.h 1970-01-01 01:00:00.000000000 +0100 +++ slashem-0.0.7E7F1-visenhance/include/dgn_char.h 2005-11-01 16:33:38.000000000 +0100 @@ -0,0 +1,123 @@ +/* start counter MAXPCHARS */ +/* start counter MAXDCHARS */ +#define S_unexplored 0 +#define S_vstone 1 +#define S_hstone 2 +#define S_tlcornstone 3 +#define S_trcornstone 4 +#define S_blcornstone 5 +#define S_brcornstone 6 +#define S_crstone 7 +#define S_tustone 8 +#define S_tdstone 9 +#define S_tlstone 10 +#define S_trstone 11 +#define S_vwall 12 +#define S_hwall 13 +#define S_tlcorn 14 +#define S_trcorn 15 +#define S_blcorn 16 +#define S_brcorn 17 +#define S_crwall 18 +#define S_tuwall 19 +#define S_tdwall 20 +#define S_tlwall 21 +#define S_trwall 22 +#define S_ndoor 23 +#define S_vodoor 24 +#define S_hodoor 25 +#define S_vcdoor 26 /* closed door, vertical wall */ +#define S_hcdoor 27 /* closed door, horizontal wall */ +#define S_bars 28 /* Added by KMH */ +#define S_tree 29 /* Added by KMH */ +#define S_room 30 +#define S_darkroom 31 +#define S_corr 32 +#define S_litcorr 33 +#define S_upstair 34 +#define S_dnstair 35 +#define S_upladder 36 +#define S_dnladder 37 +#define S_altar 38 +#define S_grave 39 +#define S_throne 40 +#define S_sink 41 +#define S_toilet 42 +#define S_fountain 43 +#define S_pool 44 +#define S_ice 45 +#define S_lava 46 +#define S_vodbridge 47 +#define S_hodbridge 48 +#define S_vcdbridge 49 /* closed drawbridge, vertical wall */ +#define S_hcdbridge 50 /* closed drawbridge, horizontal wall */ +#define S_air 51 +#define S_cloud 52 +#define S_water 53 +/* end counter MAXDCHARS */ +/* start counter MAXTCHARS */ +#define S_arrow_trap 54 +#define S_dart_trap 55 +#define S_falling_rock_trap 56 +#define S_squeaky_board 57 +#define S_bear_trap 58 +#define S_land_mine 59 +#define S_rolling_boulder_trap 60 +#define S_sleeping_gatrap 61 +#define S_rust_trap 62 +#define S_fire_trap 63 +#define S_pit 64 +#define S_spiked_pit 65 +#define S_hole 66 +#define S_trap_door 67 +#define S_teleportation_trap 68 +#define S_level_teleporter 69 +#define S_magic_portal 70 +#define S_web 71 +#define S_statue_trap 72 +#define S_magic_trap 73 +#define S_anti_magic_trap 74 +#define S_polymorph_trap 75 +/* end counter MAXTCHARS */ +/* start counter MAXECHARS */ +#define S_vbeam 76 /* The 4 zap beam symbols. Do NOT separate. */ +#define S_hbeam 77 /* To change order or add, see function */ +#define S_lslant 78 /* zapdir_to_glyph() in display.c. */ +#define S_rslant 79 +#define S_digbeam 80 /* dig beam symbol */ +#define S_flashbeam 81 /* camera flash symbol */ +#define S_boomleft 82 /* thrown boomerang, open left, e.g ')' */ +#define S_boomright 83 /* thrown boomerand, open right, e.g. '(' */ +#define S_ss1 84 /* 4 magic shield glyphs */ +#define S_ss2 85 +#define S_ss3 86 +#define S_ss4 87 +#define S_sw_tl 88 /* swallow top left [1] */ +#define S_sw_tc 89 /* swallow top center [2] Order: */ +#define S_sw_tr 90 /* swallow top right [3] */ +#define S_sw_ml 91 /* swallow middle left [4] 1 2 3 */ +#define S_sw_mr 92 /* swallow middle right [6] 4 5 6 */ +#define S_sw_bl 93 /* swallow bottom left [7] 7 8 9 */ +#define S_sw_bc 94 /* swallow bottom center [8] */ +#define S_sw_br 95 /* swallow bottom right [9] */ +/* start counter MAXEXPCHARS */ +#define S_explode1 96 /* explosion top left */ +#define S_explode2 97 /* explosion top center */ +#define S_explode3 98 /* explosion top right Ex. */ +#define S_explode4 99 /* explosion middle left */ +#define S_explode5 100 /* explosion middle center /-\ */ +#define S_explode6 101 /* explosion middle right |@| */ +#define S_explode7 102 /* explosion bottom left \-/ */ +#define S_explode8 103 /* explosion bottom center */ +#define S_explode9 104 /* explosion bottom right */ +/* end counter MAXEXPCHARS */ +/* end counter MAXECHARS */ +/* end counter MAXPCHARS */ + +/* Totals */ + +#define MAXPCHARS 105 +#define MAXDCHARS 54 +#define MAXTCHARS 22 +#define MAXECHARS 29 +#define MAXEXPCHARS 9 diff -pruN slashem-0.0.7E7F1-official-release/include/dgn_char.in slashem-0.0.7E7F1-visenhance/include/dgn_char.in --- slashem-0.0.7E7F1-official-release/include/dgn_char.in 1970-01-01 01:00:00.000000000 +0100 +++ slashem-0.0.7E7F1-visenhance/include/dgn_char.in 2005-11-01 16:33:38.000000000 +0100 @@ -0,0 +1,140 @@ +# +# lines starting with hash '#' are comments. +# lines starting with a fullstop '.' are counter start/end points +# +# first word is the define (S_ is auto-prefixed), rest of line is a comment +# + +.MAXPCHARS + +# begin dungeon characters + +.MAXDCHARS +unexplored +vstone +hstone +tlcornstone +trcornstone +blcornstone +brcornstone +crstone +tustone +tdstone +tlstone +trstone +vwall +hwall +tlcorn +trcorn +blcorn +brcorn +crwall +tuwall +tdwall +tlwall +trwall +ndoor +vodoor +hodoor +vcdoor closed door, vertical wall +hcdoor closed door, horizontal wall +bars Added by KMH +tree Added by KMH +room +darkroom +corr +litcorr +upstair +dnstair +upladder +dnladder +altar +grave +throne +sink +toilet +fountain +pool +ice +lava +vodbridge +hodbridge +vcdbridge closed drawbridge, vertical wall +hcdbridge closed drawbridge, horizontal wall +air +cloud +water +.MAXDCHARS maximum of mapped dungeon characters + +# end dungeon characters, begin traps + +.MAXTCHARS +arrow_trap +dart_trap +falling_rock_trap +squeaky_board +bear_trap +land_mine +rolling_boulder_trap +sleeping_gatrap +rust_trap +fire_trap +pit +spiked_pit +hole +trap_door +teleportation_trap +level_teleporter +magic_portal +web +statue_trap +magic_trap +anti_magic_trap +polymorph_trap +.MAXTCHARS maximum of mapped trap characters + +# end traps, begin special effects + +.MAXECHARS +vbeam The 4 zap beam symbols. Do NOT separate. +hbeam To change order or add, see function +lslant zapdir_to_glyph() in display.c. +rslant +digbeam dig beam symbol +flashbeam camera flash symbol +boomleft thrown boomerang, open left, e.g ')' +boomright thrown boomerand, open right, e.g. '(' +ss1 4 magic shield glyphs +ss2 +ss3 +ss4 + +# The 8 swallow symbols. Do NOT separate. To change order or add, see +# the function swallow_to_glyph() in display.c. + +sw_tl swallow top left [1] +sw_tc swallow top center [2] Order: +sw_tr swallow top right [3] +sw_ml swallow middle left [4] 1 2 3 +sw_mr swallow middle right [6] 4 5 6 +sw_bl swallow bottom left [7] 7 8 9 +sw_bc swallow bottom center [8] +sw_br swallow bottom right [9] + +.MAXEXPCHARS +explode1 explosion top left +explode2 explosion top center +explode3 explosion top right Ex. +explode4 explosion middle left +explode5 explosion middle center /-\ +explode6 explosion middle right |@| +explode7 explosion bottom left \-/ +explode8 explosion bottom center +explode9 explosion bottom right + +.MAXEXPCHARS number of explosion characters +.MAXECHARS maximum of mapped effects characters + +# end effects + +.MAXPCHARS maximum number of mapped characters diff -pruN slashem-0.0.7E7F1-official-release/include/flag.h slashem-0.0.7E7F1-visenhance/include/flag.h --- slashem-0.0.7E7F1-official-release/include/flag.h 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/include/flag.h 2005-11-01 16:33:38.000000000 +0100 @@ -71,6 +71,7 @@ struct flag { #ifdef MAC boolean page_wait; /* put up a --More-- after a page of messages */ #endif + boolean passages; /* part of visenhance, show passages */ boolean perm_invent; /* keep full inventories up until dismissed */ boolean pickup; /* whether you pickup or move and look */ boolean pickup_thrown; /* auto-pickup items you threw */ diff -pruN slashem-0.0.7E7F1-official-release/include/rm.h slashem-0.0.7E7F1-visenhance/include/rm.h --- slashem-0.0.7E7F1-official-release/include/rm.h 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/include/rm.h 2005-11-01 16:33:38.000000000 +0100 @@ -105,119 +105,7 @@ * Note: {ibm|dec}_graphics[] arrays (also in drawing.c) must be kept in synch. */ -/* begin dungeon characters */ - -#define S_stone 0 -#define S_vwall 1 -#define S_hwall 2 -#define S_tlcorn 3 -#define S_trcorn 4 -#define S_blcorn 5 -#define S_brcorn 6 -#define S_crwall 7 -#define S_tuwall 8 -#define S_tdwall 9 -#define S_tlwall 10 -#define S_trwall 11 -#define S_ndoor 12 -#define S_vodoor 13 -#define S_hodoor 14 -#define S_vcdoor 15 /* closed door, vertical wall */ -#define S_hcdoor 16 /* closed door, horizontal wall */ -#define S_bars 17 /* Added by KMH */ -#define S_tree 18 /* Added by KMH */ -#define S_room 19 -#define S_corr 20 -#define S_litcorr 21 -#define S_upstair 22 -#define S_dnstair 23 -#define S_upladder 24 -#define S_dnladder 25 -#define S_altar 26 -#define S_grave 27 -#define S_throne 28 -#define S_sink 29 -#define S_toilet 30 -#define S_fountain 31 -#define S_pool 32 -#define S_ice 33 -#define S_lava 34 -#define S_vodbridge 35 -#define S_hodbridge 36 -#define S_vcdbridge 37 /* closed drawbridge, vertical wall */ -#define S_hcdbridge 38 /* closed drawbridge, horizontal wall */ -#define S_air 39 -#define S_cloud 40 -#define S_water 41 - -/* end dungeon characters, begin traps */ - -#define S_arrow_trap 42 -#define S_dart_trap 43 -#define S_falling_rock_trap 44 -#define S_squeaky_board 45 -#define S_bear_trap 46 -#define S_land_mine 47 -#define S_rolling_boulder_trap 48 -#define S_sleeping_gas_trap 49 -#define S_rust_trap 50 -#define S_fire_trap 51 -#define S_pit 52 -#define S_spiked_pit 53 -#define S_hole 54 -#define S_trap_door 55 -#define S_teleportation_trap 56 -#define S_level_teleporter 57 -#define S_magic_portal 58 -#define S_web 59 -#define S_statue_trap 60 -#define S_magic_trap 61 -#define S_anti_magic_trap 62 -#define S_polymorph_trap 63 - -/* end traps, begin special effects */ - -#define S_vbeam 64 /* The 4 zap beam symbols. Do NOT separate. */ -#define S_hbeam 65 /* To change order or add, see function */ -#define S_lslant 66 /* zapdir_to_glyph() in display.c. */ -#define S_rslant 67 -#define S_digbeam 68 /* dig beam symbol */ -#define S_flashbeam 69 /* camera flash symbol */ -#define S_boomleft 70 /* thrown boomerang, open left, e.g ')' */ -#define S_boomright 71 /* thrown boomerand, open right, e.g. '(' */ -#define S_ss1 72 /* 4 magic shield glyphs */ -#define S_ss2 73 -#define S_ss3 74 -#define S_ss4 75 - -/* The 8 swallow symbols. Do NOT separate. To change order or add, see */ -/* the function swallow_to_glyph() in display.c. */ -#define S_sw_tl 76 /* swallow top left [1] */ -#define S_sw_tc 77 /* swallow top center [2] Order: */ -#define S_sw_tr 78 /* swallow top right [3] */ -#define S_sw_ml 79 /* swallow middle left [4] 1 2 3 */ -#define S_sw_mr 80 /* swallow middle right [6] 4 5 6 */ -#define S_sw_bl 81 /* swallow bottom left [7] 7 8 9 */ -#define S_sw_bc 82 /* swallow bottom center [8] */ -#define S_sw_br 83 /* swallow bottom right [9] */ - -#define S_explode1 84 /* explosion top left */ -#define S_explode2 85 /* explosion top center */ -#define S_explode3 86 /* explosion top right Ex. */ -#define S_explode4 87 /* explosion middle left */ -#define S_explode5 88 /* explosion middle center /-\ */ -#define S_explode6 89 /* explosion middle right |@| */ -#define S_explode7 90 /* explosion bottom left \-/ */ -#define S_explode8 91 /* explosion bottom center */ -#define S_explode9 92 /* explosion bottom right */ - -/* end effects */ - -#define MAXPCHARS 93 /* maximum number of mapped characters */ -#define MAXDCHARS 42 /* maximum of mapped dungeon characters */ -#define MAXTCHARS 22 /* maximum of mapped trap characters */ -#define MAXECHARS 29 /* maximum of mapped effects characters */ -#define MAXEXPCHARS 9 /* number of explosion characters */ +#include "dgn_char.h" struct symdef { uchar sym; diff -pruN slashem-0.0.7E7F1-official-release/src/bones.c slashem-0.0.7E7F1-visenhance/src/bones.c --- slashem-0.0.7E7F1-official-release/src/bones.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/bones.c 2005-11-01 16:33:42.000000000 +0100 @@ -357,7 +357,7 @@ struct obj *corpse; for(x=0; xwaslit) { /* Floor spaces are dark if unlit. Corridors are dark if unlit. */ if (lev->typ == ROOM && cmap == S_room) - cmap = S_stone; + cmap = S_darkroom; else if (lev->typ == CORR && cmap == S_litcorr) cmap = S_corr; } @@ -337,9 +337,9 @@ unmap_object(x, y) /* turn remembered dark room squares dark */ if (!lev->waslit && lev->glyph == cmap_to_glyph(S_room) && lev->typ == ROOM) - lev->glyph = cmap_to_glyph(S_stone); + lev->glyph = cmap_to_glyph(S_darkroom); } else - levl[x][y].glyph = cmap_to_glyph(S_stone); /* default val */ + levl[x][y].glyph = cmap_to_glyph(S_unexplored); /* default val */ #endif } @@ -652,23 +652,23 @@ feel_location(x, y) map_background(x, y, 1); } else { #ifdef DISPLAY_LAYERS - lev->mem_bg = lev->waslit ? S_room : S_stone; + lev->mem_bg = lev->waslit ? S_room : S_darkroom; #else lev->glyph = lev->waslit ? cmap_to_glyph(S_room) : - cmap_to_glyph(S_stone); + cmap_to_glyph(S_darkroom); #endif show_glyph(x, y, memory_glyph(x, y)); } #ifdef DISPLAY_LAYERS - } else if ((lev->mem_bg >= S_stone && lev->mem_bg < S_room) || + } else if ((lev->mem_bg >= S_unexplored && lev->mem_bg < S_darkroom) || memory_is_invisible(x, y)) { - lev->mem_bg = lev->waslit ? S_room : S_stone; + lev->mem_bg = lev->waslit ? S_room : S_darkroom; #else - } else if ((lev->glyph >= cmap_to_glyph(S_stone) && - lev->glyph < cmap_to_glyph(S_room)) || + } else if ((lev->glyph >= cmap_to_glyph(S_unexplored) && + lev->glyph < cmap_to_glyph(S_darkroom)) || glyph_is_invisible(levl[x][y].glyph)) { lev->glyph = lev->waslit ? cmap_to_glyph(S_room) : - cmap_to_glyph(S_stone); + cmap_to_glyph(S_darkroom); #endif show_glyph(x, y, memory_glyph(x, y)); } @@ -714,7 +714,7 @@ feel_location(x, y) /* Floor spaces are dark if unlit. Corridors are dark if unlit. */ #ifdef DISPLAY_LAYERS if (lev->typ == ROOM && lev->mem_bg == S_room && !lev->waslit) { - lev->mem_bg = S_stone; + lev->mem_bg = S_darkroom; show_glyph(x,y, memory_glyph(x, y)); } else if (lev->typ == CORR && lev->mem_bg == S_litcorr && !lev->waslit) { @@ -724,7 +724,7 @@ feel_location(x, y) #else if (lev->typ == ROOM && lev->glyph == cmap_to_glyph(S_room) && !lev->waslit) - show_glyph(x,y, lev->glyph = cmap_to_glyph(S_stone)); + show_glyph(x,y, lev->glyph = cmap_to_glyph(S_darkroom)); else if (lev->typ == CORR && lev->glyph == cmap_to_glyph(S_litcorr) && !lev->waslit) show_glyph(x,y, lev->glyph = cmap_to_glyph(S_corr)); @@ -875,14 +875,14 @@ newsym(x,y) lev->mem_bg = S_corr; show_glyph(x, y, memory_glyph(x, y)); } else if (lev->mem_bg == S_room && lev->typ == ROOM) { - lev->mem_bg = S_stone; + lev->mem_bg = S_darkroom; show_glyph(x, y, memory_glyph(x, y)); } #else /* DISPLAY_LAYERS */ if (lev->glyph == cmap_to_glyph(S_litcorr) && lev->typ == CORR) show_glyph(x, y, lev->glyph = cmap_to_glyph(S_corr)); else if (lev->glyph == cmap_to_glyph(S_room) && lev->typ == ROOM) - show_glyph(x, y, lev->glyph = cmap_to_glyph(S_stone)); + show_glyph(x, y, lev->glyph = cmap_to_glyph(S_darkroom)); #endif /* DISPLAY_LAYERS */ else goto show_mem; @@ -1104,7 +1104,7 @@ swallowed(first) /* Clear old location */ for (y = lasty-1; y <= lasty+1; y++) for (x = lastx-1; x <= lastx+1; x++) - if (isok(x,y)) show_glyph(x,y,cmap_to_glyph(S_stone)); + if (isok(x,y)) show_glyph(x,y,cmap_to_glyph(S_unexplored)); } #ifdef ALLEG_FX @@ -1179,13 +1179,13 @@ under_water(mode) for (y = lasty-1; y <= lasty+1; y++) for (x = lastx-1; x <= lastx+1; x++) if (isok(x,y)) - show_glyph(x,y,cmap_to_glyph(S_stone)); + show_glyph(x,y,cmap_to_glyph(S_unexplored)); } for (x = u.ux-1; x <= u.ux+1; x++) for (y = u.uy-1; y <= u.uy+1; y++) if (isok(x,y) && is_pool(x,y)) { if (Blind && !(x == u.ux && y == u.uy)) - show_glyph(x,y,cmap_to_glyph(S_stone)); + show_glyph(x,y,cmap_to_glyph(S_unexplored)); else newsym(x,y); } @@ -1370,7 +1370,7 @@ docrt() for (x = 1; x < COLNO; x++) { lev = &levl[x][0]; for (y = 0; y < ROWNO; y++, lev++) - if ((glyph = memory_glyph(x,y)) != cmap_to_glyph(S_stone)) + if ((glyph = memory_glyph(x,y)) != cmap_to_glyph(S_unexplored)) show_glyph(x,y,glyph); } @@ -1486,9 +1486,9 @@ show_glyph(x,y,glyph) } -static gbuf_entry nul_gbuf = { 0, cmap_to_glyph(S_stone) }; +static gbuf_entry nul_gbuf = { 0, cmap_to_glyph(S_unexplored) }; /* - * Turn the 3rd screen into stone. + * Turn the 3rd screen into unexplored area. */ void clear_glyph_buffer() @@ -1506,7 +1506,7 @@ clear_glyph_buffer() } /* - * Assumes that the indicated positions are filled with S_stone glyphs. + * Assumes that the indicated positions are filled with S_unexplored glyphs. */ void row_refresh(start,stop,y) @@ -1515,7 +1515,7 @@ row_refresh(start,stop,y) register int x; for (x = start; x <= stop; x++) - if (gbuf[y][x].glyph != cmap_to_glyph(S_stone)) + if (gbuf[y][x].glyph != cmap_to_glyph(S_unexplored)) print_glyph(WIN_MAP,x,y,gbuf[y][x].glyph); } @@ -1569,6 +1569,164 @@ flush_screen(cursor_on_u) /* ========================================================================= */ /* + * is_stone_cmap() + * + * checks if a typ at a specific map location is a stone type, + * or if othertypes is TRUE it checks if it's something that a + * stone typ could connect to. + */ +STATIC_OVL int +is_stone_cmap(x,y,othertypes) + int x,y; + int othertypes; +{ + int within; + + within=(x>0) && (y>=0) && (x<=79) && (y<=20); + return ( othertypes && (!within) ) || + ( within && + levl[x][y].seenv && + ( (levl[x][y].typ==STONE) || + othertypes && + ( (IS_WALL(levl[x][y].typ) ) || + (levl[x][y].typ==SDOOR) || + (levl[x][y].typ==SCORR) ) ) ); +} + +/* ========================================================================= */ + +/* + * get_stone_cmap() + * + * calculate the cmap for a stone typ at a specific area + */ +STATIC_OVL int +get_stone_cmap(x,y,iterate) + xchar x,y; + int iterate; +{ + int u,d,l,r; + int cmap; + + if (!flags.passages) return S_unexplored; + + if (iterate) { + u=is_stone_cmap(x,y-1,FALSE); + d=is_stone_cmap(x,y+1,FALSE); + l=is_stone_cmap(x-1,y,FALSE); + r=is_stone_cmap(x+1,y,FALSE); + + if (u) { + cmap=get_stone_cmap(x,y-1,FALSE); +#ifdef DISPLAY_LAYERS + levl[x][y-1].mem_bg=cmap; +#else + levl[x][y-1].glyph=cmap_to_glyph(cmap); +#endif + show_glyph(x,y-1, cmap_to_glyph(cmap)); + } + if (d) { + cmap=get_stone_cmap(x,y+1,FALSE); +#ifdef DISPLAY_LAYERS + levl[x][y+1].mem_bg=cmap; +#else + levl[x][y+1].glyph=cmap_to_glyph(cmap); +#endif + show_glyph(x,y+1, cmap_to_glyph(cmap)); + } + if (l) { + cmap=get_stone_cmap(x-1,y,FALSE); +#ifdef DISPLAY_LAYERS + levl[x-1][y].mem_bg=cmap; +#else + levl[x-1][y].glyph=cmap_to_glyph(cmap); +#endif + show_glyph(x-1,y, cmap_to_glyph(cmap)); + } + if (r) { + cmap=get_stone_cmap(x+1,y,FALSE); +#ifdef DISPLAY_LAYERS + levl[x+1][y].mem_bg=cmap; +#else + levl[x+1][y].glyph=cmap_to_glyph(cmap); +#endif + show_glyph(x+1,y, cmap_to_glyph(cmap)); + } + + } + + u=is_stone_cmap(x,y-1,TRUE); + d=is_stone_cmap(x,y+1,TRUE); + l=is_stone_cmap(x-1,y,TRUE); + r=is_stone_cmap(x+1,y,TRUE); + + if (u) { + if (d) { + if (l) { + if (r) { + return S_crstone; + } else { + return S_tlstone; + } + } else { + if (r) { + return S_trstone; + } else { + return S_vstone; + } + } + } else { + if (l) { + if (r) { + return S_tustone; + } else { + return S_brcornstone; + } + } else { + if (r) { + return S_blcornstone; + } else { + return S_vstone; + } + } + } + } else { + if (d) { + if (l) { + if (r) { + return S_tdstone; + } else { + return S_trcornstone; + } + } else { + if (r) { + return S_tlcornstone; + } else { + return S_vstone; + } + } + } else { + if (l) { + if (r) { + return S_hstone; + } else { + return S_hstone; + } + } else { + if (r) { + return S_hstone; + } else { + return S_hstone; + } + } + } + } + +} + +/* ========================================================================= */ + +/* * back_to_cmap() * * Use the information in the rm structure at the given position to create @@ -1594,9 +1752,11 @@ back_to_cmap(x,y) /* KMH -- support arboreal levels */ case SCORR: case STONE: - idx = level.flags.arboreal ? S_tree : S_stone; + idx = level.flags.arboreal ? S_tree : get_stone_cmap(x,y,TRUE); + break; + case ROOM: + idx = (!cansee(x,y) && !ptr->waslit) ? S_darkroom : S_room; break; - case ROOM: idx = S_room; break; case CORR: idx = (ptr->waslit || flags.lit_corridor) ? S_litcorr : S_corr; break; @@ -1612,7 +1772,7 @@ back_to_cmap(x,y) case TLWALL: case TRWALL: case SDOOR: - idx = ptr->seenv ? wall_angle(ptr) : S_stone; + idx = ptr->seenv ? wall_angle(ptr,x,y) : S_unexplored; break; case IRONBARS: idx = S_bars; break; case DOOR: @@ -1654,11 +1814,11 @@ back_to_cmap(x,y) case DB_MOAT: idx = S_pool; break; case DB_LAVA: idx = S_lava; break; case DB_ICE: idx = S_ice; break; - case DB_FLOOR: idx = S_room; break; + case DB_FLOOR: idx = (!cansee(x,y) && !ptr->waslit) ? S_darkroom : S_room; break; default: impossible("Strange db-under: %d", ptr->drawbridgemask & DB_UNDER); - idx = S_room; /* something is better than nothing */ + idx = (!cansee(x,y) && !ptr->waslit) ? S_darkroom : S_room; /* something is better than nothing */ break; } break; @@ -1667,7 +1827,7 @@ back_to_cmap(x,y) break; default: impossible("back_to_glyph: unknown level type [ = %d ]",ptr->typ); - idx = S_room; + idx = (!cansee(x,y) && !ptr->waslit) ? S_darkroom : S_room; break; } return idx; @@ -2048,10 +2208,10 @@ set_seenv(lev, x0, y0, x, y) #define T_tdwall 4 static const int wall_matrix[4][5] = { - { S_stone, S_tlcorn, S_trcorn, S_hwall, S_tdwall }, /* tdwall */ - { S_stone, S_trcorn, S_brcorn, S_vwall, S_tlwall }, /* tlwall */ - { S_stone, S_brcorn, S_blcorn, S_hwall, S_tuwall }, /* tuwall */ - { S_stone, S_blcorn, S_tlcorn, S_vwall, S_trwall }, /* trwall */ + { S_hstone, S_tlcorn, S_trcorn, S_hwall, S_tdwall }, /* tdwall */ + { S_hstone, S_trcorn, S_brcorn, S_vwall, S_tlwall }, /* tlwall */ + { S_hstone, S_brcorn, S_blcorn, S_hwall, S_tuwall }, /* tuwall */ + { S_hstone, S_blcorn, S_tlcorn, S_vwall, S_trwall }, /* trwall */ }; @@ -2114,8 +2274,9 @@ t_warn(lev) * seen vector (SV). */ STATIC_OVL int -wall_angle(lev) +wall_angle(lev,x,y) struct rm *lev; + int x,y; { register unsigned int seenv = lev->seenv & 0xff; const int *row; @@ -2229,6 +2390,7 @@ do_twall: break; } idx = row[col]; + if (idx==S_hstone) idx=get_stone_cmap(x,y,TRUE); break; case SDOOR: @@ -2236,17 +2398,17 @@ do_twall: /* fall through */ case VWALL: switch (lev->wall_info & WM_MASK) { - case 0: idx = seenv ? S_vwall : S_stone; break; + case 0: idx = seenv ? S_vwall : get_stone_cmap(x,y,TRUE); break; case 1: idx = seenv & (SV1|SV2|SV3|SV4|SV5) ? S_vwall : - S_stone; + get_stone_cmap(x,y,TRUE); break; case 2: idx = seenv & (SV0|SV1|SV5|SV6|SV7) ? S_vwall : - S_stone; + get_stone_cmap(x,y,TRUE); break; default: impossible("wall_angle: unknown vwall mode %d", lev->wall_info & WM_MASK); - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); break; } break; @@ -2254,17 +2416,17 @@ do_twall: case HWALL: horiz: switch (lev->wall_info & WM_MASK) { - case 0: idx = seenv ? S_hwall : S_stone; break; + case 0: idx = seenv ? S_hwall : get_stone_cmap(x,y,TRUE); break; case 1: idx = seenv & (SV3|SV4|SV5|SV6|SV7) ? S_hwall : - S_stone; + get_stone_cmap(x,y,TRUE); break; case 2: idx = seenv & (SV0|SV1|SV2|SV3|SV7) ? S_hwall : - S_stone; + get_stone_cmap(x,y,TRUE); break; default: impossible("wall_angle: unknown hwall mode %d", lev->wall_info & WM_MASK); - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); break; } break; @@ -2272,12 +2434,12 @@ horiz: #define set_corner(idx, lev, which, outer, inner, name) \ switch ((lev)->wall_info & WM_MASK) { \ case 0: idx = which; break; \ - case WM_C_OUTER: idx = seenv & (outer) ? which : S_stone; break; \ - case WM_C_INNER: idx = seenv & ~(inner) ? which : S_stone; break; \ + case WM_C_OUTER: idx = seenv & (outer) ? which : get_stone_cmap(x,y,TRUE); break; \ + case WM_C_INNER: idx = seenv & ~(inner) ? which : get_stone_cmap(x,y,TRUE); break; \ default: \ impossible("wall_angle: unknown %s mode %d", name, \ (lev)->wall_info & WM_MASK); \ - idx = S_stone; \ + idx = get_stone_cmap(x,y,TRUE); \ break; \ } @@ -2338,7 +2500,7 @@ horiz: row = cross_matrix[C_br]; do_crwall: if (seenv == SV4) - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); else { seenv = seenv & ~SV4; /* strip SV4 */ if (seenv == SV0) { @@ -2377,7 +2539,7 @@ do_crwall: else if ( only(seenv, SV5|SV6|SV7) ) idx = S_trcorn; else if ( only(seenv, SV0|SV4) ) - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); else idx = S_crwall; break; @@ -2388,21 +2550,21 @@ do_crwall: else if ( only(seenv, SV3|SV4|SV5) ) idx = S_tlcorn; else if ( only(seenv, SV2|SV6) ) - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); else idx = S_crwall; break; default: impossible("wall_angle: unknown crosswall mode"); - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); break; } break; default: impossible("wall_angle: unexpected wall type %d", lev->typ); - idx = S_stone; + idx = get_stone_cmap(x,y,TRUE); } return idx; } diff -pruN slashem-0.0.7E7F1-official-release/src/drawing.c slashem-0.0.7E7F1-visenhance/src/drawing.c --- slashem-0.0.7E7F1-official-release/src/drawing.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/drawing.c 2005-11-01 16:33:42.000000000 +0100 @@ -212,7 +212,18 @@ const struct symdef def_warnsyms[WARNCOU * Note: {ibm|dec|mac}_graphics[] arrays also depend on this symbol order. */ const struct symdef defsyms[MAXPCHARS] = { -/* 0*/ {' ', "dark part of a room",C(NO_COLOR)}, /* stone */ +/* 0*/ {' ', "unexplored area",C(NO_COLOR)}, /* unexplored */ + {'|', "stone", C(CLR_BROWN)}, /* vstone */ + {'-', "stone", C(CLR_BROWN)}, /* hstone */ + {'-', "stone", C(CLR_BROWN)}, /* tlcornstone */ + {'-', "stone", C(CLR_BROWN)}, /* trcornstone */ + {'-', "stone", C(CLR_BROWN)}, /* blcornstone */ + {'-', "stone", C(CLR_BROWN)}, /* brcornstone */ + {'-', "stone", C(CLR_BROWN)}, /* crstone */ + {'-', "stone", C(CLR_BROWN)}, /* tustone */ + {'-', "stone", C(CLR_BROWN)}, /* tdstone */ +/*10*/ {'|', "stone", C(CLR_BROWN)}, /* tlstone */ + {'|', "stone", C(CLR_BROWN)}, /* trstone */ {'|', "wall", C(CLR_GRAY)}, /* vwall */ {'-', "wall", C(CLR_GRAY)}, /* hwall */ {'-', "wall", C(CLR_GRAY)}, /* tlcorn */ @@ -232,6 +243,7 @@ const struct symdef defsyms[MAXPCHARS] = {'#', "iron bars", C(HI_METAL)}, /* bars */ {'#', "tree", C(CLR_GREEN)}, /* tree */ {'.', "floor of a room",C(CLR_GRAY)}, /* room */ + {'.', "dark part of a room",C(CLR_BLACK)}, /* dark room */ /*20*/ {'#', "corridor", C(CLR_BLACK)}, /* dark corr */ {'#', "lit corridor", C(CLR_GRAY)}, /* lit corr (see mapglyph.c) */ {'<', "staircase up", C(CLR_WHITE)}, /* upstair */ @@ -326,7 +338,18 @@ void NDECL((*ibmgraphics_mode_callback)) #endif /* PC9800 */ static uchar ibm_graphics[MAXPCHARS] = { -/* 0*/ g_FILLER(S_stone), +/* 0*/ g_FILLER(S_unexplored), + 0xb3, /* S_vstone: meta-3, vertical rule */ + 0xc4, /* S_hstone: meta-D, horizontal rule */ + 0xda, /* S_tlcornstone: meta-Z, top left corner */ + 0xbf, /* S_trcornstone: meta-?, top right corner */ + 0xc0, /* S_blcornstone: meta-@, bottom left */ + 0xd9, /* S_brcornstone: meta-Y, bottom right */ + 0xc5, /* S_crstone: meta-E, cross */ + 0xc1, /* S_tustone: meta-A, T up */ + 0xc2, /* S_tdstone: meta-B, T down */ +/*10*/ 0xb4, /* S_tlstone: meta-4, T left */ + 0xc3, /* S_trstone: meta-C, T right */ 0xb3, /* S_vwall: meta-3, vertical rule */ 0xc4, /* S_hwall: meta-D, horizontal rule */ 0xda, /* S_tlcorn: meta-Z, top left corner */ @@ -346,6 +369,7 @@ static uchar ibm_graphics[MAXPCHARS] = { 240, /* S_bars: equivalency, courtesy Sascha */ 241, /* S_tree: plus or minus symbol */ 0xfa, /* S_room: meta-z, centered dot */ + g_FILLER(S_darkroom), /* S_darkroom: meta-z, centered dot */ /*20*/ 0xb0, /* S_corr: meta-0, light shading */ 0xb1, /* S_litcorr: meta-1, medium shading */ g_FILLER(S_upstair), @@ -426,7 +450,18 @@ static uchar ibm_graphics[MAXPCHARS] = { void NDECL((*decgraphics_mode_callback)) = 0; /* set in tty_start_screen() */ static uchar dec_graphics[MAXPCHARS] = { -/* 0*/ g_FILLER(S_stone), +/* 0*/ g_FILLER(S_unexplored), + 0xf8, /* S_vstone: meta-x, vertical rule */ + 0xf1, /* S_hstone: meta-q, horizontal rule */ + 0xec, /* S_tlcornstone: meta-l, top left corner */ + 0xeb, /* S_trcornstone: meta-k, top right corner */ + 0xed, /* S_blcornstone: meta-m, bottom left */ + 0xea, /* S_brcornstone: meta-j, bottom right */ + 0xee, /* S_crstone: meta-n, cross */ + 0xf6, /* S_tustone: meta-v, T up */ + 0xf7, /* S_tdstone: meta-w, T down */ +/*10*/ 0xf5, /* S_tlstone: meta-u, T left */ + 0xf4, /* S_trstone: meta-t, T right */ 0xf8, /* S_vwall: meta-x, vertical rule */ 0xf1, /* S_hwall: meta-q, horizontal rule */ 0xec, /* S_tlcorn: meta-l, top left corner */ @@ -446,6 +481,7 @@ static uchar dec_graphics[MAXPCHARS] = { 0xfb, /* S_bars: meta-{, small pi, courtesy Pat Rankin */ 0xe7, /* S_tree: meta-g, plus-or-minus, courtesy Pat Rankin */ 0xfe, /* S_room: meta-~, centered dot */ + g_FILLER(S_darkroom), /* S_darkroom: meta-~, centered dot */ /*20*/ g_FILLER(S_corr), g_FILLER(S_litcorr), g_FILLER(S_upstair), @@ -524,7 +560,18 @@ static uchar dec_graphics[MAXPCHARS] = { #ifdef MAC_GRAPHICS_ENV static uchar mac_graphics[MAXPCHARS] = { -/* 0*/ g_FILLER(S_stone), +/* 0*/ g_FILLER(S_unexplored), + 0xba, /* S_vstone */ + 0xcd, /* S_hstone */ + 0xc9, /* S_tlcornstone */ + 0xbb, /* S_trcornstone */ + 0xc8, /* S_blcornstone */ + 0xbc, /* S_brcornstone */ + 0xce, /* S_crstone */ + 0xca, /* S_tustone */ + 0xcb, /* S_tdstone */ +/*10*/ 0xb9, /* S_tlstone */ + 0xcc, /* S_trstone */ 0xba, /* S_vwall */ 0xcd, /* S_hwall */ 0xc9, /* S_tlcorn */ @@ -544,6 +591,7 @@ static uchar mac_graphics[MAXPCHARS] = { 0xf0, /* S_bars: equivalency symbol */ 0xf1, /* S_tree: plus-or-minus */ g_FILLER(S_Room), + g_FILLER(S_darkroom), /* S_darkroom */ /*20*/ 0xB0, /* S_corr */ g_FILLER(S_litcorr), g_FILLER(S_upstair), @@ -837,6 +885,17 @@ boolean is_rlevel; # ifdef ASCIIGRAPH } else { /* a la EPYX Rogue */ + showsyms[S_vstone] = 0xba; /* all walls now use */ + showsyms[S_hstone] = 0xcd; /* double line graphics */ + showsyms[S_tlcornstone] = 0xc9; + showsyms[S_trcornstone] = 0xbb; + showsyms[S_blcornstone] = 0xc8; + showsyms[S_brcornstone] = 0xbc; + showsyms[S_crstone] = 0xce; + showsyms[S_tustone] = 0xca; + showsyms[S_tdstone] = 0xcb; + showsyms[S_tlstone] = 0xb9; + showsyms[S_trstone] = 0xcc; showsyms[S_vwall] = 0xba; /* all walls now use */ showsyms[S_hwall] = 0xcd; /* double line graphics */ showsyms[S_tlcorn] = 0xc9; diff -pruN slashem-0.0.7E7F1-official-release/src/Makefile slashem-0.0.7E7F1-visenhance/src/Makefile --- slashem-0.0.7E7F1-official-release/src/Makefile 2005-10-25 18:17:16.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/Makefile 2005-11-01 16:33:42.000000000 +0100 @@ -498,7 +498,7 @@ HACKINCL = align.h amiconf.h artifact.h os2conf.h patchlevel.h pcconf.h permonst.h prop.h rect.h region.h rm.h \ sp_lev.h spell.h system.h tcap.h timeout.h tosconf.h tradstdc.h \ trampoli.h trap.h unixconf.h vault.h vision.h vmsconf.h wintty.h \ - winX.h winprocs.h wintype.h you.h youprop.h + winX.h winprocs.h wintype.h you.h youprop.h dgn_char.h HSOURCES = $(HACKINCL) date.h onames.h pm.h vis_tab.h\ lev_comp.h dgn_comp.h dgn_file.h @@ -599,6 +599,9 @@ objects.o: ../include/filename.h: $(MAKEDEFS) ../util/makedefs -f +../include/dgn_char.h: $(MAKEDEFS) + ../util/makedefs -c + # Qt windowport meta-object-compiler output qt_kde0.moc: ../include/qt_kde0.h $(QTBINDIR)/moc -o qt_kde0.moc ../include/qt_kde0.h @@ -717,7 +720,8 @@ $(HACK_H): ../include/hack.h $(CONFIG_H) ../include/timeout.h ../include/trap.h ../include/flag.h \ ../include/rm.h ../include/vision.h ../include/display.h \ ../include/engrave.h ../include/rect.h ../include/region.h \ - ../include/winprocs.h ../include/wintty.h ../include/trampoli.h + ../include/winprocs.h ../include/wintty.h ../include/trampoli.h \ + ../include/dgn_char.h touch $(HACK_H) # tos.o: ../sys/atari/tos.c $(HACK_H) ../include/tcap.h diff -pruN slashem-0.0.7E7F1-official-release/src/mapglyph.c slashem-0.0.7E7F1-visenhance/src/mapglyph.c --- slashem-0.0.7E7F1-official-release/src/mapglyph.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/mapglyph.c 2005-11-01 16:33:42.000000000 +0100 @@ -116,7 +116,7 @@ unsigned *ospecial; color = CLR_MAGENTA; else if (offset == S_corr || offset == S_litcorr) color = CLR_GRAY; - else if (offset >= S_room && offset <= S_water) + else if (offset >= S_room && offset <= S_water && offset != S_darkroom) color = CLR_GREEN; else color = NO_COLOR; diff -pruN slashem-0.0.7E7F1-official-release/src/mklev.c slashem-0.0.7E7F1-visenhance/src/mklev.c --- slashem-0.0.7E7F1-official-release/src/mklev.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/mklev.c 2005-11-01 16:33:42.000000000 +0100 @@ -558,9 +558,9 @@ STATIC_OVL void clear_level_structures() { #ifdef DISPLAY_LAYERS - static struct rm zerorm = { S_stone, 0, 0, 0, 0, 0, + static struct rm zerorm = { S_unexplored, 0, 0, 0, 0, 0, #else - static struct rm zerorm = { cmap_to_glyph(S_stone), + static struct rm zerorm = { cmap_to_glyph(S_unexplored), #endif 0, 0, 0, 0, 0, 0, 0, 0 }; register int x,y; diff -pruN slashem-0.0.7E7F1-official-release/src/options.c slashem-0.0.7E7F1-visenhance/src/options.c --- slashem-0.0.7E7F1-official-release/src/options.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/options.c 2005-11-01 16:33:42.000000000 +0100 @@ -175,6 +175,7 @@ static struct Bool_Opt #else {"page_wait", (boolean *)0, FALSE, SET_IN_FILE}, #endif + {"passages", &flags.passages, TRUE, SET_IN_FILE}, {"perm_invent", &flags.perm_invent, FALSE, SET_IN_GAME}, {"pickup_thrown", &flags.pickup_thrown, TRUE, SET_IN_GAME}, {"popup_dialog", &iflags.wc_popup_dialog, FALSE, SET_IN_GAME}, /*WC*/ @@ -684,6 +685,11 @@ initoptions() Sdlgl_parse_options(opts, TRUE, FALSE); #endif + if (flags.lit_corridor && iflags.use_color) { + showsyms[S_darkroom]=showsyms[S_room]; + } else { + showsyms[S_darkroom]=showsyms[S_unexplored]; + } return; } @@ -2529,6 +2535,9 @@ goodfruit: else lan_mail_finish(); } #endif + else if ((boolopt[i].addr) == &flags.passages) { + need_redraw = TRUE; + } else if ((boolopt[i].addr) == &flags.lit_corridor) { /* * All corridor squares seen via night vision or @@ -2541,6 +2550,7 @@ goodfruit: { vision_recalc(2); /* shut down vision */ vision_full_recalc = 1; /* delayed recalc */ + if (iflags.use_color) need_redraw = TRUE; /* darkroom refresh */ } } else if ((boolopt[i].addr) == &iflags.use_inverse || @@ -3013,8 +3023,14 @@ doset() } destroy_nhwindow(tmpwin); - if (need_redraw) + if (need_redraw) { + if (flags.lit_corridor && iflags.use_color) { + showsyms[S_darkroom]=showsyms[S_room]; + } else { + showsyms[S_darkroom]=showsyms[S_unexplored]; + } (void) doredraw(); + } return 0; } diff -pruN slashem-0.0.7E7F1-official-release/src/pager.c slashem-0.0.7E7F1-visenhance/src/pager.c --- slashem-0.0.7E7F1-official-release/src/pager.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/pager.c 2005-11-01 16:33:42.000000000 +0100 @@ -281,7 +281,7 @@ lookat(x, y, buf, monbuf) int tnum = what_trap(glyph_to_trap(glyph)); Strcpy(buf, defsyms[trap_to_defsym(tnum)].explanation); } else if(!glyph_is_cmap(glyph)) { - Strcpy(buf,"dark part of a room"); + Strcpy(buf,"unexplored area"); } else switch(glyph_to_cmap(glyph)) { case S_altar: if(!In_endgame(&u.uz)) @@ -655,8 +655,8 @@ do_look(quick) for (hit_trap = FALSE, i = 0; i < MAXPCHARS; i++) { x_str = defsyms[i].explanation; if (sym == (from_screen ? showsyms[i] : defsyms[i].sym) && *x_str) { - /* avoid "an air", "a water", or "a floor of a room" */ - int article = (i == S_room) ? 2 : /* 2=>"the" */ + /* avoid "an air", "a water", "a floor of a room", "a dark part of a room" */ + int article = ((i == S_room)||(i == S_darkroom)) ? 2 : /* 2=>"the" */ !(strcmp(x_str, "air") == 0 || /* 1=>"an" */ strcmp(x_str, "water") == 0); /* 0=>(none)*/ diff -pruN slashem-0.0.7E7F1-official-release/src/read.c slashem-0.0.7E7F1-visenhance/src/read.c --- slashem-0.0.7E7F1-official-release/src/read.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/src/read.c 2005-11-01 16:33:42.000000000 +0100 @@ -718,7 +718,7 @@ forget_map(howmuch) /* Zonk all memory of this location. */ levl[zx][zy].seenv = 0; levl[zx][zy].waslit = 0; - clear_memory_glyph(zx, zy, S_stone); + clear_memory_glyph(zx, zy, S_unexplored); } } diff -pruN slashem-0.0.7E7F1-official-release/sys/msdos/vidvga.c slashem-0.0.7E7F1-visenhance/sys/msdos/vidvga.c --- slashem-0.0.7E7F1-official-release/sys/msdos/vidvga.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/sys/msdos/vidvga.c 2005-11-01 16:33:42.000000000 +0100 @@ -154,8 +154,8 @@ STATIC_VAR struct map_struct { } map[ROWNO][COLNO]; /* track the glyphs */ # define vga_clearmap() { int x,y; for (y=0; y < ROWNO; ++y) \ - for (x=0; x < COLNO; ++x) { map[y][x].glyph = cmap_to_glyph(S_stone); \ - map[y][x].ch = S_stone; map[y][x].attr = 0; map[y][x].special = 0;} } + for (x=0; x < COLNO; ++x) { map[y][x].glyph = cmap_to_glyph(S_unexplored); \ + map[y][x].ch = S_unexplored; map[y][x].attr = 0; map[y][x].special = 0;} } # define TOP_MAP_ROW 1 # if defined(OVLB) STATIC_VAR int vgacmap[CLR_MAX] = {0,3,5,9,4,8,12,14,11,2,6,7,1,8,12,13}; @@ -545,13 +545,13 @@ boolean clearfirst; for (y = 0; y < ROWNO; ++y) { # endif if (iflags.traditional_view) { - if (!(clearfirst && map[y][x].ch == S_stone)) + if (!(clearfirst && map[y][x].ch == S_unexplored)) vga_WriteChar( (unsigned char)map[y][x].ch, x,y + TOP_MAP_ROW,map[y][x].attr); } else { t = map[y][x].glyph; - if (!(clearfirst && t == cmap_to_glyph(S_stone))) { + if (!(clearfirst && t == cmap_to_glyph(S_unexplored))) { if (!iflags.over_view) { if (!ReadPlanarTileFile(glyph2tile[t], &planecell)) { diff -pruN slashem-0.0.7E7F1-official-release/sys/unix/Makefile.src slashem-0.0.7E7F1-visenhance/sys/unix/Makefile.src --- slashem-0.0.7E7F1-official-release/sys/unix/Makefile.src 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/sys/unix/Makefile.src 2005-11-01 16:33:42.000000000 +0100 @@ -498,7 +498,7 @@ HACKINCL = align.h amiconf.h artifact.h os2conf.h patchlevel.h pcconf.h permonst.h prop.h rect.h region.h rm.h \ sp_lev.h spell.h system.h tcap.h timeout.h tosconf.h tradstdc.h \ trampoli.h trap.h unixconf.h vault.h vision.h vmsconf.h wintty.h \ - winX.h winprocs.h wintype.h you.h youprop.h + winX.h winprocs.h wintype.h you.h youprop.h dgn_char.h HSOURCES = $(HACKINCL) date.h onames.h pm.h vis_tab.h\ lev_comp.h dgn_comp.h dgn_file.h @@ -599,6 +599,9 @@ objects.o: ../include/filename.h: $(MAKEDEFS) ../util/makedefs -f +../include/dgn_char.h: $(MAKEDEFS) + ../util/makedefs -c + # Qt windowport meta-object-compiler output qt_kde0.moc: ../include/qt_kde0.h $(QTBINDIR)/moc -o qt_kde0.moc ../include/qt_kde0.h @@ -717,7 +720,8 @@ $(HACK_H): ../include/hack.h $(CONFIG_H) ../include/timeout.h ../include/trap.h ../include/flag.h \ ../include/rm.h ../include/vision.h ../include/display.h \ ../include/engrave.h ../include/rect.h ../include/region.h \ - ../include/winprocs.h ../include/wintty.h ../include/trampoli.h + ../include/winprocs.h ../include/wintty.h ../include/trampoli.h \ + ../include/dgn_char.h touch $(HACK_H) # tos.o: ../sys/atari/tos.c $(HACK_H) ../include/tcap.h diff -pruN slashem-0.0.7E7F1-official-release/util/makedefs.c slashem-0.0.7E7F1-visenhance/util/makedefs.c --- slashem-0.0.7E7F1-official-release/util/makedefs.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/util/makedefs.c 2005-11-01 16:33:42.000000000 +0100 @@ -77,6 +77,8 @@ static const char SCCS_Id[] = "@(#)maked #define FILE_H "file.h" /*output*/ #define FILENAME_H "filename.h" +#define DGN_CHAR_IN "dgn_char.in" +#define DGN_CHAR "dgn_char.h" /* locations for those files */ #ifdef AMIGA @@ -175,6 +177,7 @@ void NDECL(do_questtxt); void NDECL(do_rumors); void NDECL(do_oracles); void NDECL(do_vision); +void NDECL(do_dgnchar); /*WAC filenames*/ void NDECL(do_filenames); @@ -336,6 +339,9 @@ char *options; case 'z': case 'Z': do_vision(); break; + case 'c': + case 'C': do_dgnchar(); + break; default: Fprintf(stderr, "Unknown option '%c'.\n", *options); (void) fflush(stderr); @@ -2345,6 +2351,110 @@ clear_path(you_row,you_col,y2,x2) } #endif /* VISION_TABLES */ +typedef struct { + char name[80]; + void *next; + int count_start; + int count; +} dgnchar_count; + +void +do_dgnchar() +{ + char *infile; + char char_name[80]; + char *char_comment; + char *char_comment_end; + int counter; + int spc_cnt; + dgnchar_count *dgn_counter_start; + dgnchar_count *dgn_counter_use; + int counter_closing; + + filename[0]='\0'; + Sprintf(filename, INCLUDE_TEMPLATE, DGN_CHAR); + + infile = malloc(strlen(filename) - strlen(DGN_CHAR) + strlen(DGN_CHAR_IN) + 1); + Sprintf(infile, INCLUDE_TEMPLATE, DGN_CHAR_IN); + + if (!(ofp = fopen(filename, WRTMODE))) { + perror(filename); + exit(EXIT_FAILURE); + } + + if (!(ifp = fopen(infile, RDTMODE))) { + perror(infile); + Fclose(ofp); + Unlink(filename); /* kill empty output file */ + exit(EXIT_FAILURE); + } + counter=0; + dgn_counter_start=NULL; + while (fgets(in_line,sizeof in_line, ifp)) { + if ((*in_line == '#') || (*in_line == '\n') || (*in_line == '\t') || (*in_line == ' ')) { + continue; + } + + if (*in_line == '.') { + sscanf(in_line,".%s",char_name); + dgn_counter_use=dgn_counter_start; + counter_closing=FALSE; + while (dgn_counter_use&&(!counter_closing)) { + if (!strcmp(char_name,dgn_counter_use->name)) { + dgn_counter_use->count=counter-dgn_counter_use->count_start; + fprintf(ofp,"/* end counter %s */\n",char_name); + counter_closing=TRUE; + continue; + } + dgn_counter_use=dgn_counter_use->next; + } + if (!counter_closing) { + if (!dgn_counter_start) { + dgn_counter_start=malloc(sizeof(dgnchar_count)); + dgn_counter_use=dgn_counter_start; + } else { + dgn_counter_use=dgn_counter_start; + while (dgn_counter_use->next) dgn_counter_use=dgn_counter_use->next; + dgn_counter_use->next=malloc(sizeof(dgnchar_count)); + dgn_counter_use=dgn_counter_use->next; + } + dgn_counter_use->next=NULL; + dgn_counter_use->count_start=counter; + strcpy(dgn_counter_use->name,char_name); + fprintf(ofp,"/* start counter %s */\n",char_name); + } + + continue; + } + + sscanf(in_line,"%s",char_name); + char_comment=(char *)(((int)(&in_line))+strlen(char_name)); + while ((*char_comment==' ')||(*char_comment=='\t')) char_comment++; + for(char_comment_end=char_comment;(*char_comment_end!='\0')&&(*char_comment_end!='\n');char_comment_end++); + *char_comment_end='\0'; + fprintf(ofp,"#define S_%s",char_name); + for (spc_cnt=strlen(char_name);spc_cnt<32;spc_cnt++) fprintf(ofp," "); + fprintf(ofp,"%3d",counter); + if (strlen(char_comment)>0) { + fprintf(ofp," /* %s */",char_comment); + } + fprintf(ofp,"\n"); + counter++; + } + + fprintf(ofp,"\n/* Totals */\n\n"); + + dgn_counter_use=dgn_counter_start; + while (dgn_counter_use) { + fprintf(ofp,"#define %s",dgn_counter_use->name); + for (spc_cnt=strlen(dgn_counter_use->name);spc_cnt<32;spc_cnt++) fprintf(ofp," "); + fprintf(ofp,"%3d\n",dgn_counter_use->count); + dgn_counter_use=dgn_counter_use->next; + } + + Fclose(ofp); + +} /* KMH -- Now supports upper, lower, and mixed case filenames */ void diff -pruN slashem-0.0.7E7F1-official-release/win/gnome/gnworn.c slashem-0.0.7E7F1-visenhance/win/gnome/gnworn.c --- slashem-0.0.7E7F1-official-release/win/gnome/gnworn.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/win/gnome/gnworn.c 2005-11-01 16:33:42.000000000 +0100 @@ -80,7 +80,7 @@ image_of_worn_object(struct obj *o) if (o) glyph = obj_to_glyph(o); else - glyph = cmap_to_glyph(S_stone); + glyph = cmap_to_glyph(S_unexplored); im = ghack_image_from_glyph(glyph, FALSE); diff -pruN slashem-0.0.7E7F1-official-release/win/Qt/qt_win.cpp slashem-0.0.7E7F1-visenhance/win/Qt/qt_win.cpp --- slashem-0.0.7E7F1-official-release/win/Qt/qt_win.cpp 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/win/Qt/qt_win.cpp 2005-11-01 16:33:42.000000000 +0100 @@ -1569,7 +1569,7 @@ void NetHackQtMapWindow::Scroll(int dx, void NetHackQtMapWindow::Clear() { - unsigned short stone=cmap_to_glyph(S_stone); + unsigned short stone=cmap_to_glyph(S_unexplored); /* * Tile set may have changed if tileset option changed via doset(). --ALI @@ -3500,7 +3500,7 @@ void NetHackQtInvUsageWindow::drawWorn(Q else if (canbe) glyph=cmap_to_glyph(S_room); else - glyph=cmap_to_glyph(S_stone); + glyph=cmap_to_glyph(S_unexplored); qt_settings->glyphs().drawCell(painter,glyph,x,y); } diff -pruN slashem-0.0.7E7F1-official-release/win/share/oth32mi.txt slashem-0.0.7E7F1-visenhance/win/share/oth32mi.txt --- slashem-0.0.7E7F1-official-release/win/share/oth32mi.txt 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/win/share/oth32mi.txt 2005-11-01 16:33:42.000000000 +0100 @@ -814,6 +814,41 @@ C$ = (255, 255, 255) AEAO_VAO_VAO_VAO_V_V_R_R_R_VAO_VAO_VABAEABAEAB_R_R_R_RAO_V_V_R_R _V_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R } +# tile 19 (dark part of a room) +{ + _9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9 + _9_RAB_RAB_RAB_9_R_R_RAB_RAB_RAB_RAB_RAB_RAB_RAB_R_R_RAB_RAB_R_O + _9AB_R_9_9_9_9_RAB_R_R_R_9_9_9_9_9_9_9_9_9_R_9_9_O_RAB_9_9_9AB_R + _9_R_9AB_9AB_9_9_R_R_RAB_9_9_9_9AB_9_9_9_9_9_9AB_RAB_R_9AB_9_9_R + _9AB_9_9_9_9_9_9AB_R_R_RAB_R_9_9_9_9_9AB_9_9_9_R_R_R_9_9_9_9_R_R + _9_R_9_9_9_R_9_9_9AB_RAB_9AB_RAB_R_9AB_9_R_9AB_RAB_9AB_9_9_9AB_R + _9AB_R_9_9AB_9_R_9_R_R_9_R_O_R_R_R_R_R_RAB_O_R_R_R_R_RAB_RAB_R_R + _9_9_9_9_9_9_9_9_9AB_R_O_RAB_RAB_RAB_R_R_R_RAB_RAB_R_R_R_R_RAB_R + _9AB_R_9AB_9_9_9AB_R_RAB_RAB_R_9AB_RAB_R_R_RAB_9_RAB_RAB_R_R_R_R + _9_9_9_9_RAB_RAB_R_RAB_R_9_9_9_9_9_RAB_R_RAB_9_9_9_9_9_R_9_R_R_R + _9_O_RAB_R_R_R_R_R_R_R_9_9_9AB_9_R_9_9AB_R_R_9_9_9_9_9_9_9AB_R_R + _9_R_R_R_R_RAB_RAB_RABAB_9_9_R_9_9_9_9_R_R_RAB_9_9AB_9AB_R_R_R_R + _9_9AB_9AB_9_9AB_R_9_O_RAB_9_9_9_9_9_9AB_R_R_R_9_RAB_R_R_R_R_R_R + _9AB_R_9_9_9_9_9_9AB_R_RAB_R_9_9AB_9AB_R_R_R_R_R_R_R_R_R_RAB_9_R + _9_9_9_9_9_9_R_9_9_R_R_RAB_9_9_9_9_9_R_R_RAB_RAB_R_R_R_R_R_9_R_O + _9AB_9_R_9AB_9_9_9ABAB_R_RAB_RAB_RAB_R_RAB_R_9_9AB_9_R_RAB_RAB_R + _9_9_9AB_9_9_9_9_9_R_R_R_R_R_R_R_R_R_R_R_R_9_9_9_RAB_R_R_R_9AB_R + _9_R_9_9_9_9_9AB_RAB_R_RAB_RAB_R_R_R_R_RAB_9_9AB_9_RAB_RAB_9_9_R + _9AB_RAB_R_9_RAB_R_R_9AB_R_9_9AB_9_O_RAB_9_9_9_9_9AB_R_R_RAB_R_R + _9_R_R_R_R_R_R_R_RAB_R_9_9_9_9_9_RAB_R_R_9_9_R_9_9_9_R_R_R_9AB_R + _9_9AB_9AB_9_O_R_R_R_9_9_9AB_9_9_9_R_RAB_9_9AB_9_9AB_RABAB_9_R_R + _9_RAB_R_9_RAB_9_O_9AB_9_9_9_9_9_RAB_RAB_R_9_9_R_9_R_R_R_9_R_R_R + _9AB_9_9_9_9_9_R_R_O_RAB_RAB_RAB_9_O_R_R_9AB_9_9_9AB_R_R_O_R_R_R + _9_R_9AB_9_9_9_RAB_R_RAB_9_R_R_R_R_R_R_R_O_9AB_9_9_R_RAB_RAB_R_R + _9AB_9_9_9AB_9_9AB_R_R_R_R_RAB_9AB_RAB_RAB_R_R_RAB_R_RAB_9_RAB_R + _9_R_9_9_9_9_9_9_9AB_R_R_R_RAB_R_9_9_R_9AB_RAB_R_R_RAB_9_9_9_R_R + _9AB_9_R_9_9_9_9_9_RAB_RAB_R_9_9_9_9_9AB_9_9_RAB_R_R_R_9AB_9AB_R + _9_R_9_9_R_9_9_9_9AB_R_R_R_9_9AB_9_9_9_9_9_9_9AB_R_RAB_9_9_9_R_R + _9AB_9_9_9_9_9_R_9_RAB_RAB_R_9_9_9_9_9_9_R_9_9_RAB_R_RAB_9_9AB_R + _9_RAB_9_9_9_9_9ABAB_R_O_9AB_9_9_9_9_9_9_9_9_RAB_R_R_R_9_9AB_R_R + _9AB_RAB_RAB_RAB_R_R_R_R_R_RAB_RAB_RAB_9AB_9AB_R_R_R_RAB_R_R_R_R + _R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R_R +} # tile 19 (corridor) { AEAB_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_VAO_V_OAO_R diff -pruN slashem-0.0.7E7F1-official-release/win/share/other.txt slashem-0.0.7E7F1-visenhance/win/share/other.txt --- slashem-0.0.7E7F1-official-release/win/share/other.txt 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/win/share/other.txt 2005-11-01 16:33:42.000000000 +0100 @@ -14,7 +14,7 @@ M = (71, 108, 108) N = (255, 255, 255) O = (218, 218, 182) P = (108, 145, 182) -# tile 0 (dark part of a room) +# tile 0 (unexplored area) { AAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAA @@ -33,6 +33,215 @@ P = (108, 145, 182) AAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAA } +# tile 185 (stone walls 0) +{ + AJJKKKACJAAJJJAA + AJKKKACLJJAJJJJA + AJKKACLCKJJAJJJA + AAKACLCKJJJJAAAA + AAACLLKKJJJJJJAA + AACLLKKKAAJJJJJA + ACKKKKKACJAJJJJA + AKKKKKACLJJAJJJA + AAKKKACLKJJJAJAA + AAKKACLKKJJJJJAA + AACCCKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AAKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 186 (stone walls 1) +{ + AJAAAAAAJJAAAJAA + JJJAAAJJJJJAAAAJ + JJJACJAJJJACCJAJ + AAACLJJAJACCLJJA + AACLCKJJACCLCKJJ + ACKCKKJJJCKCKKJA + CJKKKKJJCKCKJJAC + KJJKCJJCKKKJJJCK + KJKKKJJKJKJJJJKK + JJJKCJKKJKJJJCKJ + JJJJJJKJKKJJJKKJ + JJJJJKJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + AAAAAAAAAAAAAAAA +} +# tile 187 (stone walls 2) +{ + AAAAAAKCCKKJAAAA + AAAAKKCLCJKJJAAA + AAKKKCLCKJJJKKAA + AKKKCLCKJJJJJJKA + AKKCLLKKJJJJJJJA + AKCLLKKKAAJJJJJJ + ACKKKKKACJAJJJJJ + AKKKKKACLJJAAJJJ + AAKKKCLLKJJJAJAJ + AAKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AAKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 188 (stone walls 3) +{ + AAAAAAKCCKKJAAAA + AAAAKKCLCJKJJAAA + AAKKKCLCKJJJKKAA + AKKCCLCKJJJJJJKA + KKCCLLKKJJJJJJJA + KKCLKKKKAAJJJJJA + KCLKKKKACJAJJJJA + CKKKKKACLJJAAJJA + KAKKKCLLKJJJAJAA + AKKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AKKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 189 (stone walls 4) +{ + AKKKAAKKKKAAJJJA + AKKAAKCCCJJJAAJA + AKKAALLJJJACCJAA + AKAACLJJJACCLJJA + AAACCKJJACLLCKJJ + AAACLKJJJCKCKKJA + AACLKKJJCKCKJJAC + AAKKCJJCKKKJJJCK + ACKKKJJKJKJJJJKK + ACKKCJKKJKJJJCKJ + AKKKJJKJKKJJJKKJ + ACKJJKJJJJJJJJJJ + AKJJJJJJJJJJJJJJ + AKJJJJJJJJJJJJJJ + AJJJJJJJJJJJJJJJ + AAAAAAAAAAAAAAAA +} +# tile 190 (stone walls 5) +{ + AKKAAAKKAAAAJJJA + AKAAKKLCKAAAAAJA + AAKKCLCJJACCAJJA + AKKCLJJJACCCLAJA + AKCKKKJACCCLCAAA + ACKKKKJACCKCKKAA + CJKKKKACCKCKJJAA + KJJKCJJCKKKJJJAA + KJKKKJJKJKJJJJJA + JJJKCJKKJKJJJJJA + JJJJJJKJKKJJJJJA + JJJJJKJJJJJJJJJA + JJJJJJJJJJJJJJJA + JJJJJJJJJJJJJJJA + JJJJJJJJJJJJJJJA + AAAAAAAAAAAAAAAA +} +# tile 191 (stone walls 6) +{ + AAAAAAKCCKKJAAAA + AAAAKCCLCJKJJAAA + AAKKCCLCKJJJKKAA + AKKKCLCKJJJJJJKA + KKKCLKKKJJJJJJJA + KKCLKKKKAAJJJJJJ + KCKLKKKACJAJJJJJ + CKKKKKACLJJAAJJJ + KAKKKCLLKJJJAJAJ + AKKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AKKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 192 (stone walls 7) +{ + AKKAAAKKKKAAJJJA + AKAAKKLCCJJJAAJA + AAKKCLCJJJACCJAA + AKKCLJJJJACCLJJA + AKCLCKJJACCLCKJJ + ACKCKKJJJCKCKKJA + CJKKKKJJCKCKJJAC + KJJKCJJCKKKJJJCK + KJKKKJJKJKJJJJKK + JJJKCJKKJKJJJCKJ + JJJJJJKJKKJJJKKJ + JJJJJKJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + JJJJJJJJJJJJJJJJ + AAAAAAAAAAAAAAAA +} +# tile 193 (stone walls 8) +{ + AAAAAAKCCKKJAAAA + AAAAKCCLCJKJJAAA + AAKKKCLCKJJJKKAA + AKKKCLCKJJJJJJKA + KKCCLLKKJJJJJJJA + KKCLLKKKAAJJJJJJ + KCLLKKKACJAJJJJJ + CKLKKKACLJJAAJJJ + KAKKKCLLKJJJAJAJ + AKKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AKKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 194 (stone walls 9) +{ + AKKAACKCCKKJAJJA + AKACKKKLLJKJJAJA + AAKKKCCCKJJJKKAA + AKKKCCLKJJJJJJKA + AKKCLLKKJJJJJJJA + AKCLLKKKAAJJJJJJ + ACLKKKKACJAJJJJJ + AKKKKKACLJJAAJJJ + AAKKKCLLKJJJAJAJ + AAKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AAKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} +# tile 195 (stone walls 10) +{ + AKKAACKCCKKJAJJA + AKACKKCLCJKJJAJA + AAKKCCLCKJJJKKAA + AKKCLLCKJJJJJJKA + KKCCLLKKJJJJJJJA + KCKLLKKKAAJJJJJA + CCKKKKKACJAJJJJA + CKKKKKACLJJAAJJA + KAKKKCLLKJJJAJAA + AKKKCCCKKJJJAJAA + AACCKKKAAJJJJJJA + ACCKKKACJAJJJJJA + ACKKKACLJJAJJJJA + AKKKACLCKJJAJJAA + AAJACKCKKJJJAJAA + AAJCKKJAAAJJJJJA +} # tile 1 (wall) { ANNOAMPPPPPMNNOA @@ -394,6 +603,25 @@ P = (108, 145, 182) MMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMM } +# tile 20 (dark part of a room) +{ + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAPPMAMAMAM + MAMAMAMPPAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM + MAMAMAMAMAMAMAMA + AMAMAMAMAMAMAMAM +} # tile 20 (corridor) { MMMMMMMMMMMMMMMM diff -pruN slashem-0.0.7E7F1-official-release/win/X11/winmap.c slashem-0.0.7E7F1-visenhance/win/X11/winmap.c --- slashem-0.0.7E7F1-official-release/win/X11/winmap.c 2005-07-02 09:24:44.000000000 +0200 +++ slashem-0.0.7E7F1-visenhance/win/X11/winmap.c 2005-11-01 16:33:42.000000000 +0100 @@ -965,20 +965,20 @@ display_map_window(wp) } /* - * Set all map tiles to S_stone + * Set all map tiles to S_unexplored */ static void -map_all_stone(map_info) +map_all_unexplored(map_info) struct map_info_t *map_info; { int i; - unsigned short *sp, stone; - stone = cmap_to_glyph(S_stone); + unsigned short *sp, unexplored; + unexplored = cmap_to_glyph(S_unexplored); for (sp = (unsigned short *) map_info->mtype.tile_map->glyphs, i = 0; i < ROWNO*COLNO; sp++, i++) - *sp = stone; + *sp = unexplored; } /* @@ -1026,7 +1026,7 @@ clear_map_window(wp) set_map_size(wp, COLNO, ROWNO); } if (map_info->is_tile) { - map_all_stone(map_info); + map_all_unexplored(map_info); } else { /* Fill text with spaces, and update */ (void) memset((genericptr_t) map_info->mtype.text_map->text, ' ', @@ -1693,7 +1693,7 @@ create_map_window(wp, create_popup, pare } if (map_info->is_tile) { - map_all_stone(map_info); + map_all_unexplored(map_info); } }