Author: cazfi Date: Wed Jun 22 08:41:21 2016 New Revision: 32948 URL: http://svn.gna.org/viewcvs/freeciv?rev=32948&view=rev Log: Have have_resources value for current map separately from if it should be saved as part of scenario.
See bug #24767 Modified: trunk/common/game.c trunk/common/map.c trunk/common/map_types.h trunk/server/generator/mapgen.c trunk/server/legacysave.c trunk/server/savegame2.c trunk/server/savegame3.c trunk/server/srv_main.c Modified: trunk/common/game.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/common/game.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/common/game.c (original) +++ trunk/common/game.c Wed Jun 22 08:41:21 2016 @@ -347,7 +347,7 @@ game.scenario.handmade = FALSE; game.scenario.prevent_new_cities = FALSE; game.scenario.lake_flooding = TRUE; - game.scenario.have_resources = FALSE; + game.scenario.have_resources = TRUE; game.scenario.ruleset_locked = TRUE; game.scenario.save_random = FALSE; game.scenario.allow_ai_type_fallback = FALSE; Modified: trunk/common/map.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/common/map.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/common/map.c (original) +++ trunk/common/map.c Wed Jun 22 08:41:21 2016 @@ -188,6 +188,7 @@ game.map.server.alltemperate = MAP_DEFAULT_ALLTEMPERATE; game.map.server.temperature = MAP_DEFAULT_TEMPERATURE; game.map.server.have_huts = FALSE; + game.map.server.have_resources = FALSE; game.map.server.team_placement = MAP_DEFAULT_TEAM_PLACEMENT; } } Modified: trunk/common/map_types.h URL: http://svn.gna.org/viewcvs/freeciv/trunk/common/map_types.h?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/common/map_types.h (original) +++ trunk/common/map_types.h Wed Jun 22 08:41:21 2016 @@ -97,6 +97,7 @@ int steepness; bool ocean_resources; /* Resources in the middle of the ocean */ bool have_huts; + bool have_resources; enum team_placement team_placement; } server; Modified: trunk/server/generator/mapgen.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/generator/mapgen.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/server/generator/mapgen.c (original) +++ trunk/server/generator/mapgen.c Wed Jun 22 08:41:21 2016 @@ -1275,8 +1275,9 @@ fc_srand(game.map.server.seed); - /* don't generate tiles with mapgen==0 as we've loaded them from file */ - /* also, don't delete (the handcrafted!) tiny islands in a scenario */ + /* don't generate tiles with mapgen == MAPGEN_SCENARIO as we've loaded * + them from file. + Also, don't delete (the handcrafted!) tiny islands in a scenario */ if (game.map.server.generator != MAPGEN_SCENARIO) { river_types_init(); @@ -1361,7 +1362,7 @@ } /* some scenarios already provide specials */ - if (!game.scenario.have_resources) { + if (!game.map.server.have_resources) { add_resources(game.map.server.riches); } @@ -1565,7 +1566,7 @@ } } whole_map_iterate_end; - game.scenario.have_resources = TRUE; + game.map.server.have_resources = TRUE; } /************************************************************************** @@ -3694,7 +3695,7 @@ } } whole_map_iterate_end; - game.scenario.have_resources = TRUE; + game.map.server.have_resources = TRUE; game.map.server.have_huts = TRUE; fair_map_destroy(pmap); Modified: trunk/server/legacysave.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/legacysave.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/server/legacysave.c (original) +++ trunk/server/legacysave.c Wed Jun 22 08:41:21 2016 @@ -1138,6 +1138,7 @@ FC_FREE(known); } + game.map.server.have_resources = TRUE; game.scenario.have_resources = TRUE; } Modified: trunk/server/savegame2.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savegame2.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/server/savegame2.c (original) +++ trunk/server/savegame2.c Wed Jun 22 08:41:21 2016 @@ -2006,6 +2006,7 @@ } } whole_map_iterate_end; + game.map.server.have_resources = TRUE; game.scenario.have_resources = TRUE; } Modified: trunk/server/savegame3.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savegame3.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/server/savegame3.c (original) +++ trunk/server/savegame3.c Wed Jun 22 08:41:21 2016 @@ -2384,6 +2384,8 @@ game.scenario.have_resources = secfile_lookup_bool_default(loading->file, TRUE, "map.have_resources"); + game.map.server.have_resources = game.scenario.have_resources; + if (S_S_INITIAL == loading->server_state && MAPGEN_SCENARIO == game.map.server.generator) { /* Generator MAPGEN_SCENARIO is used; Modified: trunk/server/srv_main.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/srv_main.c?rev=32948&r1=32947&r2=32948&view=diff ============================================================================== --- trunk/server/srv_main.c (original) +++ trunk/server/srv_main.c Wed Jun 22 08:41:21 2016 @@ -2896,10 +2896,7 @@ * +2 */ log_normal(_("Attempt %d/%d"), i + 2, max); } - /* One should never set this to false in scenario map that had resources - * placed. We are safe side here as map generation is retried only if this is - * not scenario map at all. */ - game.scenario.have_resources = FALSE; + game.map.server.have_resources = FALSE; /* Remove old information already present in tiles */ map_free(); _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits