diff options
author | Darkvater <darkvater@openttd.org> | 2006-08-14 11:44:19 +0000 |
---|---|---|
committer | Darkvater <darkvater@openttd.org> | 2006-08-14 11:44:19 +0000 |
commit | 01cd75cc10a9a9d2cd1687b9914a5e7dfc4888c3 (patch) | |
tree | 82c7c2e1fac461511a05bfa1c29cf9eed5fa1d8c /openttd.c | |
parent | 4b030f190c93a46e760808faaf9cd719605b02f0 (diff) | |
download | openttd-01cd75cc10a9a9d2cd1687b9914a5e7dfc4888c3.tar.xz |
(svn r5886) -Fix [FS#273]: Incomplete removal of player owned property due to lack of money.
Diffstat (limited to 'openttd.c')
-rw-r--r-- | openttd.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -771,16 +771,18 @@ void SwitchMode(int new_mode) case SM_LOAD_SCENARIO: { /* Load scenario from scenario editor */ if (SafeSaveOrLoad(_file_to_saveload.name, _file_to_saveload.mode, GM_EDITOR)) { - PlayerID i; + Player *p; _opt_ptr = &_opt; _local_player = OWNER_NONE; _generating_world = true; - // delete all players. - for (i = 0; i != MAX_PLAYERS; i++) { - ChangeOwnershipOfPlayerItems(i, OWNER_SPECTATOR); - _players[i].is_active = false; + /* Delete all players */ + FOR_ALL_PLAYERS(p) { + if (p->is_active) { + ChangeOwnershipOfPlayerItems(p->index, OWNER_SPECTATOR); + p->is_active = false; + } } _generating_world = false; // delete all stations owned by a player |