mirror of
https://github.com/wesnoth/wesnoth
synced 2025-04-26 19:39:31 +00:00
add warning if current_player attribute is specified by wml
specifying this attribute in [side] can result in assertion failure.
This commit is contained in:
parent
f4590e6bda
commit
4810e2c0ff
@ -168,6 +168,7 @@ void saved_game::write_general_info(config_writer& out) const
|
|||||||
|
|
||||||
void saved_game::set_defaults()
|
void saved_game::set_defaults()
|
||||||
{
|
{
|
||||||
|
const bool is_loaded_game = this->starting_pos_type_ != STARTINGPOS_SCENARIO;
|
||||||
const bool is_multiplayer_tag = classification().get_tagname() == "multiplayer";
|
const bool is_multiplayer_tag = classification().get_tagname() == "multiplayer";
|
||||||
static const std::vector<std::string> team_defaults = boost::assign::list_of
|
static const std::vector<std::string> team_defaults = boost::assign::list_of
|
||||||
("carryover_percentage")
|
("carryover_percentage")
|
||||||
@ -184,6 +185,11 @@ void saved_game::set_defaults()
|
|||||||
{
|
{
|
||||||
side["side_name"] = side["name"];
|
side["side_name"] = side["name"];
|
||||||
}
|
}
|
||||||
|
if(!is_loaded_game && !side["current_player"].empty())
|
||||||
|
{
|
||||||
|
ERR_NG << "Removed invalid 'current_player' attribute from [side] while loading a scenario. Consider using 'side_name' instead\n";
|
||||||
|
side["current_player"] = config::attribute_value();
|
||||||
|
}
|
||||||
// Set some team specific values to their defaults specified in scenario
|
// Set some team specific values to their defaults specified in scenario
|
||||||
BOOST_FOREACH(const std::string& att_name, team_defaults)
|
BOOST_FOREACH(const std::string& att_name, team_defaults)
|
||||||
{
|
{
|
||||||
|
@ -111,7 +111,7 @@ public:
|
|||||||
void cancel_orders();
|
void cancel_orders();
|
||||||
/* removes network_ai and network controller types*/
|
/* removes network_ai and network controller types*/
|
||||||
void unify_controllers();
|
void unify_controllers();
|
||||||
|
/** does some post loading stuff must be used before passing the data to connect_engine */
|
||||||
void set_defaults();
|
void set_defaults();
|
||||||
replay_recorder_base& get_replay() { return replay_data_; }
|
replay_recorder_base& get_replay() { return replay_data_; }
|
||||||
const replay_recorder_base& get_replay() const { return replay_data_; }
|
const replay_recorder_base& get_replay() const { return replay_data_; }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user