From: Pasi Kallinen Date: Tue, 7 Apr 2015 15:18:49 +0000 (+0300) Subject: Indicator glyph for good target positions X-Git-Tag: NetHack-3.6.0_RC01~488^2~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1c2f2af357ecc718800ea638676942a3b9de2ccc;p=nethack Indicator glyph for good target positions Add a new glyph, S_goodpos, to indicate valid locations instead of reusing the camera flash beam glyph. --- diff --git a/include/rm.h b/include/rm.h index cfc399300..4e57998f1 100644 --- a/include/rm.h +++ b/include/rm.h @@ -190,34 +190,35 @@ #define S_ss3 73 #define S_ss4 74 #define S_poisoncloud 75 +#define S_goodpos 76 /* valid position for targeting */ /* 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 */ +#define S_sw_tl 77 /* swallow top left [1] */ +#define S_sw_tc 78 /* swallow top center [2] Order: */ +#define S_sw_tr 79 /* swallow top right [3] */ +#define S_sw_ml 80 /* swallow middle left [4] 1 2 3 */ +#define S_sw_mr 81 /* swallow middle right [6] 4 5 6 */ +#define S_sw_bl 82 /* swallow bottom left [7] 7 8 9 */ +#define S_sw_bc 83 /* swallow bottom center [8] */ +#define S_sw_br 84 /* swallow bottom right [9] */ + +#define S_explode1 85 /* explosion top left */ +#define S_explode2 86 /* explosion top center */ +#define S_explode3 87 /* explosion top right Ex. */ +#define S_explode4 88 /* explosion middle left */ +#define S_explode5 89 /* explosion middle center /-\ */ +#define S_explode6 90 /* explosion middle right |@| */ +#define S_explode7 91 /* explosion bottom left \-/ */ +#define S_explode8 92 /* explosion bottom center */ +#define S_explode9 93 /* explosion bottom right */ /* end effects */ -#define MAXPCHARS 93 /* maximum number of mapped characters */ +#define MAXPCHARS 94 /* maximum number of mapped characters */ #define MAXDCHARS 41 /* maximum of mapped dungeon characters */ #define MAXTCHARS 22 /* maximum of mapped trap characters */ -#define MAXECHARS 30 /* maximum of mapped effects characters */ +#define MAXECHARS 31 /* maximum of mapped effects characters */ #define MAXEXPCHARS 9 /* number of explosion characters */ struct symdef { diff --git a/src/apply.c b/src/apply.c index 10bfdfd23..40249be1f 100644 --- a/src/apply.c +++ b/src/apply.c @@ -1396,7 +1396,7 @@ display_jump_positions(state) int state; { if (state == 0) { - tmp_at(DISP_BEAM, cmap_to_glyph(S_flashbeam)); + tmp_at(DISP_BEAM, cmap_to_glyph(S_goodpos)); } else if (state == 1) { int x,y, dx, dy; for (dx = -4; dx <= 4; dx++) @@ -2605,7 +2605,7 @@ display_polearm_positions(state) int state; { if (state == 0) { - tmp_at(DISP_BEAM, cmap_to_glyph(S_flashbeam)); + tmp_at(DISP_BEAM, cmap_to_glyph(S_goodpos)); } else if (state == 1) { int x,y, dx,dy; for (dx = -4; dx <= 4; dx++) diff --git a/src/drawing.c b/src/drawing.c index a08a7acc5..2f538c866 100644 --- a/src/drawing.c +++ b/src/drawing.c @@ -212,6 +212,7 @@ const struct symdef defsyms[MAXPCHARS] = { {'@', "", C(HI_ZAP)}, {'*', "", C(HI_ZAP)}, {'#', "poison cloud", C(CLR_BRIGHT_GREEN)}, /* [part of] a poison cloud */ + {'?', "valid position", C(CLR_BRIGHT_GREEN)}, /* valid position for targeting */ {'/', "", C(CLR_GREEN)}, /* swallow top left */ {'-', "", C(CLR_GREEN)}, /* swallow top center */ {'\\', "", C(CLR_GREEN)}, /* swallow top right */ @@ -647,6 +648,7 @@ struct symparse loadsyms[] = { {SYM_PCHAR, S_flashbeam, "S_flashbeam"}, {SYM_PCHAR, S_boomleft, "S_boomleft"}, {SYM_PCHAR, S_boomright, "S_boomright"}, + {SYM_PCHAR, S_goodpos, "S_goodpos"}, {SYM_PCHAR, S_ss1, "S_ss1"}, {SYM_PCHAR, S_ss2, "S_ss2"}, {SYM_PCHAR, S_ss3, "S_ss3"}, diff --git a/src/read.c b/src/read.c index 8c42fcfbe..a3d522072 100644 --- a/src/read.c +++ b/src/read.c @@ -886,7 +886,7 @@ display_stinking_cloud_positions(state) int state; { if (state == 0) { - tmp_at(DISP_BEAM, cmap_to_glyph(S_flashbeam)); + tmp_at(DISP_BEAM, cmap_to_glyph(S_goodpos)); } else if (state == 1) { int x,y, dx, dy; int dist = 6; diff --git a/win/share/other.txt b/win/share/other.txt index 61258f290..f2bcd148d 100644 --- a/win/share/other.txt +++ b/win/share/other.txt @@ -1458,6 +1458,25 @@ P = (108, 145, 182) BBBBBBGGGGBBBBBB BBBBBBBBBBBBBBBB } +# tile 76 (valid position) +{ + MMMMMMMMMMMMMMMM + MMMMMMMMMMMMMMMM + MMMMMGGGGMMMMMMM + MMMMGGGGGGMMMMMM + MMMGGFFFFGGMMMMM + MMMGGFMMMGGFMMMM + MMMMFFMMMGGFMMMM + MMMMMMMMGGFFMMMM + MMMMMMMGGFFMMMMM + MMMMMMGGFFMMMMMM + MMMMMMGGFMMMMMMM + MMMMMMMFFMMMMMMM + MMMMMMGGMMMMMMMM + MMMMMMGGFMMMMMMM + MMMMMMMFFMMMMMMM + MMMMMMMMMMMMMMMM +} # tile 75 (cmap 75) { AAAAAAADDDDDDAAA