Author: cazfi Date: Fri Apr 24 21:02:50 2015 New Revision: 28860 URL: http://svn.gna.org/viewcvs/freeciv?rev=28860&view=rev Log: Rearranged trait information save format so tabular format can be used.
See patch #6027 Modified: branches/S2_6/server/savecompat.c branches/S2_6/server/savegame2.c Modified: branches/S2_6/server/savecompat.c URL: http://svn.gna.org/viewcvs/freeciv/branches/S2_6/server/savecompat.c?rev=28860&r1=28859&r2=28860&view=diff ============================================================================== --- branches/S2_6/server/savecompat.c (original) +++ branches/S2_6/server/savecompat.c Fri Apr 24 21:02:50 2015 @@ -757,6 +757,7 @@ bool got_first_city; int old_barb_type; enum barbarian_type new_barb_type; + int i; /* Renamed 'capital' to 'got_first_city'. */ if (secfile_lookup_bool(loading->file, &got_first_city, @@ -771,6 +772,21 @@ new_barb_type = barb_type_convert(old_barb_type); secfile_insert_str(loading->file, barbarian_type_name(new_barb_type), "player%d.ai.barb_type", plrno); + + for (i = 0; i < loading->trait.size; i++) { + int val; + + val = secfile_lookup_int_default(loading->file, -1, "pĺr%d.trait.val%d", + plrno, i); + if (val != -1) { + secfile_insert_int(loading->file, val, "plr%d.trait%d.val", plrno, i); + } + + if (secfile_lookup_int(loading->file, &val, "plr%d.trait.mod%d", plrno, i)) { + log_sg("Trait mod: %s", secfile_error()); + } + secfile_insert_int(loading->file, val, "plr%d.trait%d.mod", plrno, i); + } } /* Units orders. */ Modified: branches/S2_6/server/savegame2.c URL: http://svn.gna.org/viewcvs/freeciv/branches/S2_6/server/savegame2.c?rev=28860&r1=28859&r2=28860&view=diff ============================================================================== --- branches/S2_6/server/savegame2.c (original) +++ branches/S2_6/server/savegame2.c Fri Apr 24 21:02:50 2015 @@ -3898,7 +3898,7 @@ enum trait tr = trait_by_name(loading->trait.order[i], fc_strcasecmp); if (trait_is_valid(tr)) { - int val = secfile_lookup_int_default(loading->file, -1, "plr%d.trait.val%d", + int val = secfile_lookup_int_default(loading->file, -1, "plr%d.trait%d.val", plrno, i); if (val != -1) { @@ -3906,7 +3906,7 @@ } if (secfile_lookup_int(loading->file, &val, - "plr%d.trait.mod%d", plrno, i)) { + "plr%d.trait%d.mod", plrno, i)) { plr->ai_common.traits[tr].mod = val; } } @@ -4179,9 +4179,9 @@ for (tr = trait_begin(), j = 0; tr != trait_end(); tr = trait_next(tr), j++) { secfile_insert_int(saving->file, plr->ai_common.traits[tr].val, - "player%d.trait.val%d", plrno, j); + "player%d.trait%d.val", plrno, j); secfile_insert_int(saving->file, plr->ai_common.traits[tr].mod, - "player%d.trait.mod%d", plrno, j); + "player%d.trait%d.mod", plrno, j); } } _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits