Author: sveinung Date: Wed May 13 15:39:26 2015 New Revision: 29079 URL: http://svn.gna.org/viewcvs/freeciv?rev=29079&view=rev Log: Unhardcode the rule that a unit must have moves left to found a city.
See patch #6085 Modified: trunk/common/unit.c trunk/data/alien/game.ruleset trunk/data/civ1/game.ruleset trunk/data/civ2/game.ruleset trunk/data/civ2civ3/game.ruleset trunk/data/classic/game.ruleset trunk/data/experimental/game.ruleset trunk/data/multiplayer/game.ruleset trunk/doc/README.actions trunk/fc_version trunk/server/rscompat.c Modified: trunk/common/unit.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/common/unit.c?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/common/unit.c (original) +++ trunk/common/unit.c Wed May 13 15:39:26 2015 @@ -395,7 +395,12 @@ if (!is_build) { return UAB_NOT_BUILD_UNIT; } - if (punit->moves_left == 0) { + if (punit->moves_left == 0 + /* TODO: Remove UAB_NO_MOVES_BUILD when doing so is safe. */ + /* The ruleset may allow founding cities when out of move + * fragments. */ + && !utype_may_act_move_frags(unit_type(punit), + ACTION_FOUND_CITY, 0)) { return UAB_NO_MOVES_BUILD; } switch (city_build_here_test(ptile, punit)) { Modified: trunk/data/alien/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/alien/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/alien/game.ruleset (original) +++ trunk/data/alien/game.ruleset Wed May 13 15:39:26 2015 @@ -330,6 +330,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/civ1/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/civ1/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/civ1/game.ruleset (original) +++ trunk/data/civ1/game.ruleset Wed May 13 15:39:26 2015 @@ -316,6 +316,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/civ2/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/civ2/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/civ2/game.ruleset (original) +++ trunk/data/civ2/game.ruleset Wed May 13 15:39:26 2015 @@ -368,6 +368,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/civ2civ3/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/civ2civ3/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/civ2civ3/game.ruleset (original) +++ trunk/data/civ2civ3/game.ruleset Wed May 13 15:39:26 2015 @@ -427,6 +427,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/classic/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/classic/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/classic/game.ruleset (original) +++ trunk/data/classic/game.ruleset Wed May 13 15:39:26 2015 @@ -399,6 +399,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/experimental/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/experimental/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/experimental/game.ruleset (original) +++ trunk/data/experimental/game.ruleset Wed May 13 15:39:26 2015 @@ -417,6 +417,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/data/multiplayer/game.ruleset URL: http://svn.gna.org/viewcvs/freeciv/trunk/data/multiplayer/game.ruleset?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/data/multiplayer/game.ruleset (original) +++ trunk/data/multiplayer/game.ruleset Wed May 13 15:39:26 2015 @@ -383,6 +383,7 @@ { "type", "name", "range" "Unitflag", "Cities", "Local" "UnitState", "OnLivableTile", "Local" + "MinMoveFrags", "1", "Local", TRUE } [actionenabler_join_city] Modified: trunk/doc/README.actions URL: http://svn.gna.org/viewcvs/freeciv/trunk/doc/README.actions?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/doc/README.actions (original) +++ trunk/doc/README.actions Wed May 13 15:39:26 2015 @@ -234,7 +234,6 @@ * city name must be legal * the scenario setting prevent_new_cities must be false. * actor must be on the same tile as the target. - * actor must have movement left. * target must not have the NoCities terrain flag. * target must not be owned by a foreign player. * target must not be closer than citymindist to nearest city. Modified: trunk/fc_version URL: http://svn.gna.org/viewcvs/freeciv/trunk/fc_version?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/fc_version (original) +++ trunk/fc_version Wed May 13 15:39:26 2015 @@ -54,7 +54,7 @@ # - Avoid adding a new mandatory capability to the development branch for # as long as possible. We want to maintain network compatibility with # the stable branch for as long as possible. -NETWORK_CAPSTRING_MANDATORY="+Freeciv.Devel-3.0-2015.May.13" +NETWORK_CAPSTRING_MANDATORY="+Freeciv.Devel-3.0-2015.May.13b" NETWORK_CAPSTRING_OPTIONAL="" FREECIV_DISTRIBUTOR="" Modified: trunk/server/rscompat.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/rscompat.c?rev=29079&r1=29078&r2=29079&view=diff ============================================================================== --- trunk/server/rscompat.c (original) +++ trunk/server/rscompat.c Wed May 13 15:39:26 2015 @@ -266,6 +266,11 @@ req_from_str("UnitState", "Local", FALSE, TRUE, "OnLivableTile")); + /* The actor unit must have moves left. */ + requirement_vector_append(&enabler->actor_reqs, + req_from_str("MinMoveFrags", "Local", FALSE, + TRUE, "1")); + action_enabler_add(enabler); /* City joining is now action enabler controlled. Add the old rule _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits