X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ftile.cpp;h=6c75fb1e3c6b066ea539dfb8f4438568361a6ee1;hb=b72c5d178e4cc95130735d8bf8716513c7cc28e1;hp=0edef84d9b7a822cd21fa05c76516b35b380f8f6;hpb=9599042661b468aae7bd34dca05441c0ebc93ad7;p=supertux.git diff --git a/src/tile.cpp b/src/tile.cpp index 0edef84d9..6c75fb1e3 100644 --- a/src/tile.cpp +++ b/src/tile.cpp @@ -24,13 +24,12 @@ #include #include -#include "app/globals.h" -#include "lisp/lisp.h" -#include "tile.h" -#include "resources.h" -#include "timer.h" -#include "math/vector.h" -#include "video/drawing_context.h" +#include "lisp/lisp.hpp" +#include "tile.hpp" +#include "resources.hpp" +#include "timer.hpp" +#include "math/vector.hpp" +#include "video/drawing_context.hpp" Tile::Tile() : id(0), editor_image(0), attributes(0), data(0), anim_fps(1) @@ -68,8 +67,6 @@ Tile::parse(const lisp::Lisp& reader) attributes |= SPIKE; if(reader.get("fullbox", value) && value) attributes |= FULLBOX; - if(reader.get("distro", value) && value) - attributes |= COIN; if(reader.get("coin", value) && value) attributes |= COIN; if(reader.get("goal", value) && value) @@ -92,7 +89,7 @@ Tile::parse(const lisp::Lisp& reader) if(reader.get("slope-type", data)) { attributes |= SOLID | SLOPE; } - + const lisp::Lisp* images = reader.get_lisp("images"); if(images) parse_images(*images); @@ -108,7 +105,7 @@ Tile::parse_images(const lisp::Lisp& images_lisp) if(cur->get_type() == lisp::Lisp::TYPE_STRING) { std::string file; cur->get(file); - imagespecs.push_back(ImageSpec(file, Rectangle(0, 0, 0, 0))); + imagespecs.push_back(ImageSpec(file, Rect(0, 0, 0, 0))); } else if(cur->get_type() == lisp::Lisp::TYPE_CONS && cur->get_car()->get_type() == lisp::Lisp::TYPE_SYMBOL) { const lisp::Lisp* ptr = cur->get_cdr(); @@ -120,7 +117,7 @@ Tile::parse_images(const lisp::Lisp& images_lisp) ptr->get_car()->get(y); ptr = ptr->get_cdr(); ptr->get_car()->get(w); ptr = ptr->get_cdr(); ptr->get_car()->get(h); - imagespecs.push_back(ImageSpec(file, Rectangle(x, y, x+w, y+h))); + imagespecs.push_back(ImageSpec(file, Rect(x, y, x+w, y+h))); } else { std::cerr << "Expected string or list in images tag.\n"; continue; @@ -138,8 +135,7 @@ Tile::load_images(const std::string& tilesetpath) imagespecs.end(); ++i) { const ImageSpec& spec = *i; Surface* surface; - std::string file - = get_resource_filename(tilesetpath + spec.file); + std::string file = tilesetpath + spec.file; if(spec.rect.get_width() <= 0) { surface = new Surface(file, true); } else { @@ -152,9 +148,7 @@ Tile::load_images(const std::string& tilesetpath) images.push_back(surface); } if(editor_imagefile != "") { - editor_image = new Surface( - get_resource_filename( - std::string("images/tilesets/") + editor_imagefile), true); + editor_image = new Surface(tilesetpath + editor_imagefile, true); } } @@ -173,7 +167,7 @@ void Tile::draw(DrawingContext& context, const Vector& pos, int layer) const { if(images.size() > 1) { - size_t frame = size_t(global_time * anim_fps) % images.size(); + size_t frame = size_t(game_time * anim_fps) % images.size(); context.draw_surface(images[frame], pos, layer); } else if (images.size() == 1) { context.draw_surface(images[0], pos, layer);