new script test (picnic) tiles
[supertux.git] / src / tile.h
index ff76569..cfddd02 100644 (file)
 
 #include <vector>
 #include "video/surface.h"
-#include "utils/lispreader.h"
-#include "math/rectangle.h"
-
-using namespace SuperTux;
+#include "math/rect.h"
+#include "lisp/lisp.h"
 
 /**
 Tile Class
@@ -57,19 +55,29 @@ public:
      */
     GOAL      = 0x0100,
     /** slope tile */
-    SLOPE     = 0x0200
+    SLOPE     = 0x0200,
+  };
+
+  /// worldmap flags
+  enum {
+    WORLDMAP_NORTH = 0x0001,
+    WORLDMAP_SOUTH = 0x0002,
+    WORLDMAP_EAST  = 0x0004,
+    WORLDMAP_WEST  = 0x0008,
+    
+    WORLDMAP_STOP  = 0x0010
   };
   
 private:
   unsigned int id;
 
   struct ImageSpec {
-    ImageSpec(const std::string& newfile, const Rectangle& newrect)
+    ImageSpec(const std::string& newfile, const Rect& newrect)
       : file(newfile), rect(newrect)
     { }
 
     std::string file;
-    Rectangle rect;
+    Rect rect;
   };
   std::vector<ImageSpec> imagespecs;
   std::vector<Surface*> images;
@@ -122,11 +130,11 @@ protected:
   friend class TileManager;
   Tile();
 
-  void load_images();
+  void load_images(const std::string& tilesetpath);
 
   /// parses the tile and returns it's id number
-  void parse(LispReader& reader);
-  void parse_images(lisp_object_t* cur);
+  void parse(const lisp::Lisp& reader);
+  void parse_images(const lisp::Lisp& cur);
 };
 
 #endif