void MapState::OnEnterState(SDL_Surface *screen) {
camera.Resize(screen->w, screen->h);
+ tileAnimation = GraphicsTimers().StartInterval(512);
LoadMap(map);
}
for (std::vector<Entity *>::iterator e(entities.begin()), end(entities.end()); e != end; ++e) {
if ((*e)->Hostile() && map->TileCoordinates(ToInt((*e)->Position())) == neighbor[i]) {
// TODO: move entity erase to happen after the transition or battle
+ LoadBattle(*controlled, **e);
entities.erase(e);
return true;
}
SDL_FillRect(screen, 0, SDL_MapRGB(screen->format, 0, 0, 0));
Vector<int> offset(camera.CalculateOffset());
- map->Render(screen, offset);
+ map->Render(screen, offset, tileAnimation.Iteration());
if (debug) {
map->RenderDebug(screen, offset);