Author: cazfi Date: Sat Dec 27 07:36:15 2014 New Revision: 27416 URL: http://svn.gna.org/viewcvs/freeciv?rev=27416&view=rev Log: Multiply worker task want by 100 to get better resolution with integers
See patch #5561 Modified: trunk/ai/threaded/taicity.c trunk/client/gui-gtk-3.0/citydlg.c Modified: trunk/ai/threaded/taicity.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/ai/threaded/taicity.c?rev=27416&r1=27415&r2=27416&view=diff ============================================================================== --- trunk/ai/threaded/taicity.c (original) +++ trunk/ai/threaded/taicity.c Sat Dec 27 07:36:15 2014 @@ -38,6 +38,9 @@ #include "taimsg.h" #include "taicity.h" + +/* Task Want Multiplier */ +#define TWMP 100 struct tai_worker_task_req { @@ -164,8 +167,8 @@ int value = adv_city_worker_act_get(pcity, cindex, act); if (tile_worked(ptile) == pcity) { - if (value - orig_value > worked.want) { - worked.want = value - orig_value; + if ((value - orig_value) * TWMP > worked.want) { + worked.want = TWMP * (value - orig_value); worked.ptile = ptile; worked.act = act; worked.tgt = NULL; @@ -179,7 +182,7 @@ } else { if (value > orig_value && value > uw_max) { uw_max = value; - unworked.want = value - orig_value; + unworked.want = TWMP * (value - orig_value); unworked.ptile = ptile; unworked.act = act; unworked.tgt = NULL; @@ -247,8 +250,8 @@ value += extra; if (tile_worked(ptile) == pcity) { - if (value - orig_value > worked.want) { - worked.want = value - orig_value; + if ((value - orig_value) * TWMP > worked.want) { + worked.want = TWMP * (value - orig_value); worked.ptile = ptile; worked.act = ACTIVITY_GEN_ROAD; worked.tgt = NULL; @@ -262,7 +265,7 @@ } else { if (value > orig_value && value > uw_max) { uw_max = value; - unworked.want = value - orig_value; + unworked.want = TWMP * (value - orig_value); unworked.ptile = ptile; unworked.act = ACTIVITY_GEN_ROAD; unworked.tgt = NULL; @@ -291,8 +294,8 @@ value = adv_city_worker_extra_get(pcity, cindex, pextra); if (tile_worked(ptile) == pcity) { - if (value - orig_value > worked.want) { - worked.want = value - orig_value; + if ((value - orig_value) * TWMP > worked.want) { + worked.want = TWMP * (value - orig_value); worked.ptile = ptile; worked.act = ACTIVITY_BASE; worked.tgt = NULL; @@ -306,7 +309,7 @@ } else { if (value > orig_value && value > uw_max) { uw_max = value; - unworked.want = value - orig_value; + unworked.want = TWMP * (value - orig_value); unworked.ptile = ptile; unworked.act = ACTIVITY_BASE; unworked.tgt = NULL; @@ -322,7 +325,7 @@ } city_tile_iterate_end; if (worked.ptile == NULL - || (old_worst_worked < uw_max && uw_max - orig_worst_worked > worked.want)) { + || (old_worst_worked < uw_max && (uw_max - orig_worst_worked) * TWMP > worked.want)) { /* It's better to improve best yet unworked tile and take it to use after that, than to improve already worked tile. */ selected = &unworked; Modified: trunk/client/gui-gtk-3.0/citydlg.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-3.0/citydlg.c?rev=27416&r1=27415&r2=27416&view=diff ============================================================================== --- trunk/client/gui-gtk-3.0/citydlg.c (original) +++ trunk/client/gui-gtk-3.0/citydlg.c Sat Dec 27 07:36:15 2014 @@ -2664,7 +2664,7 @@ task.tile_id = ptile->index; task.activity = act; - task.want = 1; + task.want = 100; } send_packet_worker_task(&client.conn, &task); _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits