]> git.localhorst.tv Git - l2e.git/blobdiff - src/map/MapState.cpp
implemented map tile anmation
[l2e.git] / src / map / MapState.cpp
index ca1dafb0542691556627858c482d755de24005ee..b8b5eb629d8601a2de2ce2a4a03044df9b28fcad 100644 (file)
@@ -44,6 +44,7 @@ MapState::MapState(GameConfig *g, Map *map)
 
 void MapState::OnEnterState(SDL_Surface *screen) {
        camera.Resize(screen->w, screen->h);
+       tileAnimation = GraphicsTimers().StartInterval(512);
        LoadMap(map);
 }
 
@@ -299,6 +300,7 @@ bool MapState::CheckMonster() {
                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;
                        }
@@ -462,7 +464,7 @@ void MapState::Render(SDL_Surface *screen) {
        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);