(svn r7642) -Codechange: unify all the different locations where the animation state is stored into a single location.

This commit is contained in:
rubidium
2006-12-30 11:57:52 +00:00
parent 52b6d4d486
commit afb5bd0bc6
7 changed files with 75 additions and 77 deletions

View File

@@ -60,6 +60,7 @@
#include "rail_map.h"
#include "road_map.h"
#include "water_map.h"
#include "industry_map.h"
#include <stdarg.h>
@@ -1632,6 +1633,33 @@ bool AfterLoadGame(void)
SettingsDisableElrail(_patches.disable_elrails);
}
if (CheckSavegameVersion(43)) {
BEGIN_TILE_LOOP(tile_cur, MapSizeX(), MapSizeY(), 0) {
if (IsTileType(tile_cur, MP_INDUSTRY)) {
switch (GetIndustryGfx(tile_cur)) {
case GFX_POWERPLANT_SPARKS:
SetIndustryAnimationState(tile_cur, GB(_m[tile_cur].m1, 2, 5));
break;
case GFX_OILWELL_ANIMATED_1:
case GFX_OILWELL_ANIMATED_2:
case GFX_OILWELL_ANIMATED_3:
SetIndustryAnimationState(tile_cur, GB(_m[tile_cur].m1, 0, 2));
break;
case GFX_COAL_MINE_TOWER_ANIMATED:
case GFX_COPPER_MINE_TOWER_ANIMATED:
case GFX_GOLD_MINE_TOWER_ANIMATED:
SetIndustryAnimationState(tile_cur, _m[tile_cur].m1);
break;
default: /* No animation states to change */
break;
}
}
} END_TILE_LOOP(tile_cur, MapSizeX(), MapSizeY(), 0)
}
return true;
}