]> granicus.if.org Git - nethack/commitdiff
Indicator glyph for good target positions
authorPasi Kallinen <paxed@alt.org>
Tue, 7 Apr 2015 15:18:49 +0000 (18:18 +0300)
committerPasi Kallinen <paxed@alt.org>
Tue, 7 Apr 2015 15:18:54 +0000 (18:18 +0300)
Add a new glyph, S_goodpos, to indicate valid locations
instead of reusing the camera flash beam glyph.

include/rm.h
src/apply.c
src/drawing.c
src/read.c
win/share/other.txt

index cfc399300a69bce41d3389788a73b40cd4d3fc20..4e57998f1cc573454b9e477a92e32841710abda8 100644 (file)
 #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 {
index 10bfdfd2361b0138e02509753e7220ead35d9bb1..40249be1fd8e1708eb0f80ab4ffd5910d4577fe4 100644 (file)
@@ -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++)
index a08a7acc59bc13a98a6dbfbfca72dfcbe95ef4bf..2f538c866545409f3e8fbfa44a1dd77a36c011c4 100644 (file)
@@ -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"},
index 8c42fcfbe63efffeb1c2c2ad5ed7aa87047b05c0..a3d522072c5b81e34360759c4afe85fd3e214bd1 100644 (file)
@@ -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;
index 61258f290f3e21c2faa87da63c46d66704b738eb..f2bcd148d9406f1d5a69158448844d9f6748da1e 100644 (file)
@@ -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