Follow-up Comment #4, patch #1341 (project freeciv):

I'll test these conditions to verify, but from code interpretation:

1) Because, unlike other requirements vectors, obsolete_by is disjunctive,
Barracks is interpreted as obsolete by improvement_obsolete(), so handled
appropriately.  Thinking about this, I suppose another way to consider bug
#21419 would have been to change the semantics to "sustained_until" or
similar, and have all the requirements negated, but if we did that, the result
would end up the same.

2) All calls to building_upgrades_to() are from constructions that check
can_city_build_improvement_foo(), so that one would build Barracks in that
city.  I suspect this is a bug, and that this behaviour should be prevented. 
I don't beleive the client offers the choice, or the AI tries to do it because
of improvement redundancy, but that's not sufficient guard (one could
construct a hacked client that would miss a client-only guard).


    _______________________________________________________

Reply to this item at:

  <http://gna.org/patch/?1341>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to