updated on Wed Jan 18 04:00:29 UTC 2012
[aur-mirror.git] / nethack-patch / hpmon.diff
blob6b14c825dfb6209a01627fd7485a17c34acb8d72
1 diff -urd nethack-3.4.3/src/botl.c nh343hpm/src/botl.c
2 --- nethack-3.4.3/src/botl.c 2003-12-08 01:39:13.000000000 +0200
3 +++ nh343hpm/src/botl.c 2004-07-13 17:19:08.163414760 +0300
4 @@ -3,6 +3,11 @@
5 /* NetHack may be freely redistributed. See license for details. */
7 #include "hack.h"
8 +#if defined(HPMON) && defined(TEXTCOLOR)
9 +# ifndef WINTTY_H
10 +# include "wintty.h"
11 +# endif
12 +#endif
14 #ifdef OVL0
15 extern const char *hu_stat[]; /* defined in eat.c */
16 @@ -248,6 +253,9 @@
17 char newbot2[MAXCO];
18 register char *nb;
19 int hp, hpmax;
20 +#ifdef HPMON
21 + int hpcolor, hpattr;
22 +#endif
23 int cap = near_capacity();
25 hp = Upolyd ? u.mh : u.uhp;
26 @@ -256,6 +264,15 @@
27 if(hp < 0) hp = 0;
28 (void) describe_level(newbot2);
29 Sprintf(nb = eos(newbot2),
30 +#ifdef HPMON
31 + "%c:%-2ld HP:", oc_syms[COIN_CLASS],
32 +#ifndef GOLDOBJ
33 + u.ugold
34 +#else
35 + money_cnt(invent)
36 +#endif
37 + );
38 +#else /* HPMON */
39 "%c:%-2ld HP:%d(%d) Pw:%d(%d) AC:%-2d", oc_syms[COIN_CLASS],
40 #ifndef GOLDOBJ
41 u.ugold,
42 @@ -263,6 +280,39 @@
43 money_cnt(invent),
44 #endif
45 hp, hpmax, u.uen, u.uenmax, u.uac);
46 +#endif /* HPMON */
47 +#ifdef HPMON
48 + curs(WIN_STATUS, 1, 1);
49 + putstr(WIN_STATUS, 0, newbot2);
51 + Sprintf(nb = eos(newbot2), "%d(%d)", hp, hpmax);
52 +#ifdef TEXTCOLOR
53 + if (iflags.use_color) {
54 + curs(WIN_STATUS, 1, 1);
55 + hpattr = ATR_NONE;
56 + if(hp == hpmax){
57 + hpcolor = NO_COLOR;
58 + } else if(hp > (hpmax*2/3)) {
59 + hpcolor = CLR_GREEN;
60 + } else if(hp <= (hpmax/3)) {
61 + hpcolor = CLR_RED;
62 + if(hp<=(hpmax/10))
63 + hpattr = ATR_BLINK;
64 + } else {
65 + hpcolor = CLR_YELLOW;
66 + }
67 + if (hpcolor != NO_COLOR)
68 + term_start_color(hpcolor);
69 + if(hpattr!=ATR_NONE)term_start_attr(hpattr);
70 + putstr(WIN_STATUS, hpattr, newbot2);
71 + if(hpattr!=ATR_NONE)term_end_attr(hpattr);
72 + if (hpcolor != NO_COLOR)
73 + term_end_color();
74 + }
75 +#endif /* TEXTCOLOR */
76 + Sprintf(nb = eos(newbot2), " Pw:%d(%d) AC:%-2d",
77 + u.uen, u.uenmax, u.uac);
78 +#endif /* HPMON */
80 if (Upolyd)
81 Sprintf(nb = eos(nb), " HD:%d", mons[u.umonnum].mlevel);