Update of /cvsroot/netrek/client/netrekxp/src
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv23390/src
Modified Files:
data.c defaults.c local.c map.c mswindow.c option.c
Log Message:
Added "planetHighlighting: on/(off)" to draw a circle around the galaxy planet in the
color of the team owner, and a 2nd white circle if planet has more than 4 armies. Mostly
useful for new planets to easier tell race owner, and army status at a quick glance.
Index: mswindow.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/mswindow.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- mswindow.c 6 Jun 2006 08:23:06 -0000 1.32
+++ mswindow.c 6 Jun 2006 19:50:39 -0000 1.33
@@ -3309,6 +3309,7 @@
int x,
int y,
int r,
+ int highlight,
W_Color color)
{
DBHEADER_VOID;
@@ -3321,11 +3322,16 @@
SelectPalette (hdc, NetrekPalette, FALSE);
RealizePalette (hdc);
}
+
SelectObject (hdc, colortable[color].pen);
SelectObject (hdc, GetStockObject (NULL_BRUSH));
Ellipse (hdc, x - r, y - r, x + r, y + r);
-
+ if (highlight) // Add extra white circle
+ {
+ SelectObject (hdc, colortable[W_White].pen);
+ Ellipse (hdc, x - r - 1, y - r - 1, x + r + 1, y + r + 1);
+ }
if (!sdb || !doubleBuffering || !ingame)
ReleaseDC (win->hwnd, hdc);
}
Index: local.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/local.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- local.c 3 Jun 2006 21:52:11 -0000 1.39
+++ local.c 6 Jun 2006 19:50:39 -0000 1.40
@@ -364,7 +364,7 @@
else // This should never be called
planet_bits = planet_rock1;
}
- else if (p->pl_flags & PLCORE) // Not functional yet due to server
+ else if (p->pl_flags & PLCORE)
{
if (p->pl_flags & PLAGRI)
planet_bits = planet_agri1;
@@ -1112,7 +1112,7 @@
{
if (myPlayer(j) || isObsLockPlayer(j))
{
- W_WriteCircle(w, WINSIDE/2, WINSIDE/2, DETDIST/SCALE, W_Red);
+ W_WriteCircle(w, WINSIDE/2, WINSIDE/2, DETDIST/SCALE, 0, W_Red);
clearzone[0][clearcount] = WINSIDE/2 - (DETDIST/SCALE);
clearzone[1][clearcount] = WINSIDE/2 - (DETDIST/SCALE);
clearzone[2][clearcount] = 2*DETDIST/SCALE;
Index: defaults.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/defaults.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- defaults.c 2 Jun 2006 21:06:55 -0000 1.23
+++ defaults.c 6 Jun 2006 19:50:39 -0000 1.24
@@ -380,6 +380,12 @@
NULL
}
},
+ {"planetHighlighting", &planetHighlighting, RC_BOOL,
+ {
+ "Highlight galactic planets by race and army status",
+ NULL
+ }
+ },
{"playerListHack", &playerListHack, RC_BOOL,
{
"Suppose that players with letter greater than \'f\' are observers",
Index: data.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/data.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -d -r1.33 -r1.34
--- data.c 6 Jun 2006 08:23:06 -0000 1.33
+++ data.c 6 Jun 2006 19:50:39 -0000 1.34
@@ -108,6 +108,7 @@
int planetBitmap = 0;
int planetBitmapGalaxy = 0;
+int planetHighlighting = 0;
int rotatePlanets = 1;
int logging = 0;
Index: option.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/option.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- option.c 2 Jun 2006 21:06:55 -0000 1.21
+++ option.c 6 Jun 2006 19:50:39 -0000 1.22
@@ -279,6 +279,7 @@
{1, "Page %d (click to change)", &MenuPage, 0, 0, 0, NULL, &Menus_Range},
{1, "", &planetBitmap, 0, 0, 0, planetbitmapmess, &planetbitmaprange},
{1, "", &planetBitmapGalaxy, 0, 0, 0, planetbitmapgalaxymess, &planetbitmapgalaxyrange},
+ {1, "highlight planets", &planetHighlighting, 0, 0, 0, NULL, NULL},
{1, "rotate planets (new planets only)", &rotatePlanets, 0, 0, 0, NULL, NULL},
{1, "show planet names on local", &showPlanetNames, 0, 0, 0, NULL, NULL},
{1, "show army count on orbit", &showArmy, 0, 0, 0, NULL, NULL},
@@ -875,7 +876,7 @@
/* Actions to be taken when certain options are selected.
* (Yes, this is a hack). */
- if (op->op_option == &showPlanetOwner)
+ if (op->op_option == &showPlanetOwner || op->op_option == &planetHighlighting)
redrawall = 1;
#ifdef HOCKEY_LINES
else if (op->op_option == &showHockeyLinesMap)
Index: map.c
===================================================================
RCS file: /cvsroot/netrek/client/netrekxp/src/map.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- map.c 2 Jun 2006 21:06:55 -0000 1.17
+++ map.c 6 Jun 2006 19:50:39 -0000 1.18
@@ -310,7 +310,7 @@
else // This should never be called
mplanet_bits = mplanet_rock1;
}
- else if (p->pl_flags & PLCORE) // Not functional yet due to server
+ else if (p->pl_flags & PLCORE)
{
if (p->pl_flags & PLAGRI)
mplanet_bits = mplanet_agri1;
@@ -545,10 +545,14 @@
W_WriteBitmap (dx - (BMP_MPLANET_WIDTH / 2),
dy - (BMP_MPLANET_HEIGHT / 2), planetmBitmap (l),
planetColor (l), mapw);
+
}
#ifdef BEEPLITE
}
#endif
+ if (planetHighlighting) /* Draw halo */
+ W_WriteCircle(mapw, dx, dy, BMP_MPLANET_WIDTH / 2,
+ l->pl_armies > 4 ? 1 : 0, planetColor(l));
if ((l->pl_flags & PLAGRI) && (l->pl_info & me->p_team))
{