<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40387 >

This was reported on the forums:

http://forum.freeciv.org/viewtopic.php?t=4699

Patch attached.
Index: client/gui-sdl/citydlg.c
===================================================================
--- client/gui-sdl/citydlg.c	(revision 15005)
+++ client/gui-sdl/citydlg.c	(working copy)
@@ -3410,8 +3410,8 @@
   if (pCity->specialists[SP_ELVIS]) {
     pBuf = get_tax_surface(O_LUXURY);
     
-    pCityDlg->specs_area[0].x = dest.x;
-    pCityDlg->specs_area[0].y = dest.y;
+    pCityDlg->specs_area[0].x = pWindow->dst->dest_rect.x + dest.x;
+    pCityDlg->specs_area[0].y = pWindow->dst->dest_rect.y + dest.y;
     pCityDlg->specs_area[0].w = pBuf->w;
     pCityDlg->specs_area[0].h = pBuf->h;
     for (i = 0; i < pCity->specialists[SP_ELVIS]; i++) {
@@ -3427,8 +3427,8 @@
   if (pCity->specialists[SP_TAXMAN]) {
     pBuf = get_tax_surface(O_GOLD);
     
-    pCityDlg->specs_area[1].x = dest.x;
-    pCityDlg->specs_area[1].y = dest.y;
+    pCityDlg->specs_area[1].x = pWindow->dst->dest_rect.x + dest.x;
+    pCityDlg->specs_area[1].y = pWindow->dst->dest_rect.y + dest.y;
     pCityDlg->specs_area[1].w = pBuf->w;
     pCityDlg->specs_area[1].h = pBuf->h;
     for (i = 0; i < pCity->specialists[SP_TAXMAN]; i++) {
@@ -3444,8 +3444,8 @@
   if (pCity->specialists[SP_SCIENTIST]) {
     pBuf = get_tax_surface(O_SCIENCE);
     
-    pCityDlg->specs_area[2].x = dest.x;
-    pCityDlg->specs_area[2].y = dest.y;
+    pCityDlg->specs_area[2].x = pWindow->dst->dest_rect.x + dest.x;
+    pCityDlg->specs_area[2].y = pWindow->dst->dest_rect.y + dest.y;
     pCityDlg->specs_area[2].w = pBuf->w;
     pCityDlg->specs_area[2].h = pBuf->h;
     for (i = 0; i < pCity->specialists[SP_SCIENTIST]; i++) {
_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to