X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fsector.hpp;h=5033959c1716ba729d04dc7c8a08641c9163df98;hb=8b67b0dc71efddc4b668bde525ba94d701f622ac;hp=cdc59b6f4d51efb1d229f02c944180f4586da1e4;hpb=959f514b78262ae6b276821bc61864fa6967b97c;p=supertux.git diff --git a/src/sector.hpp b/src/sector.hpp index cdc59b6f4..5033959c1 100644 --- a/src/sector.hpp +++ b/src/sector.hpp @@ -19,16 +19,14 @@ #ifndef SUPERTUX_SECTOR_H #define SUPERTUX_SECTOR_H -#include #include #include #include #include +#include #include "direction.hpp" -#include "math/vector.hpp" -#include "video/drawing_context.hpp" -#include "script_interface.hpp" +#include "video/color.hpp" #include "scripting/ssector.hpp" namespace lisp { @@ -39,6 +37,7 @@ namespace collision { class Constraints; } +class Vector; class Rect; class Sprite; class GameObject; @@ -52,6 +51,7 @@ class MovingObject; class CollisionHit; class Level; class Portable; +class DrawingContext; enum MusicType { LEVEL_MUSIC, @@ -60,8 +60,9 @@ enum MusicType { }; /** - * This class holds a sector (a part of a level) and all the game objects in - * the sector + * Represents one of (potentially) multiple, separate parts of a Level. + * + * Sectors contain GameObjects, e.g. Badguys and Players. */ class Sector : public Scripting::SSector { @@ -134,20 +135,20 @@ public: void collision_tilemap(collision::Constraints* constraints, const Vector& movement, const Rect& dest) const; - /** + /** * Checks if the specified rectangle is free of (solid) tiles. * Note that this does not include static objects, e.g. bonus blocks. */ - bool is_free_of_tiles(const Rect& rect) const; - /** - * Checks if the specified rectangle is free of both + bool is_free_of_tiles(const Rect& rect, const bool ignoreUnisolid = false) const; + /** + * Checks if the specified rectangle is free of both * 1.) solid tiles and * 2.) MovingObjects in COLGROUP_STATIC. * Note that this does not include badguys or players. */ - bool is_free_of_statics(const Rect& rect, const MovingObject* ignore_object = 0) const; - /** - * Checks if the specified rectangle is free of both + bool is_free_of_statics(const Rect& rect, const MovingObject* ignore_object = 0, const bool ignoreUnisolid = false) const; + /** + * Checks if the specified rectangle is free of both * 1.) solid tiles and * 2.) MovingObjects in COLGROUP_STATIC, COLGROUP_MOVINGSTATIC or COLGROUP_MOVING. * This includes badguys and players.