summary refs log tree commit diff stats
path: root/src/transform_system.h
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2021-03-11 17:29:02 -0500
committerStar Rauchenberger <fefferburbia@gmail.com>2021-03-11 17:33:15 -0500
commita6d1ded1a41d0f461bf340a33e21fa896ce9da66 (patch)
tree9ddaf30031b1ffe2aa8be9b412038c99a6b879d7 /src/transform_system.h
parenteb9fa5020317a44f17cc4906c4c1c6fe55700d3e (diff)
downloadtanetane-a6d1ded1a41d0f461bf340a33e21fa896ce9da66.tar.gz
tanetane-a6d1ded1a41d0f461bf340a33e21fa896ce9da66.tar.bz2
tanetane-a6d1ded1a41d0f461bf340a33e21fa896ce9da66.zip
Added sliding around solid tiles
#3
Diffstat (limited to 'src/transform_system.h')
-rw-r--r--src/transform_system.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/transform_system.h b/src/transform_system.h index 476b8d8..03f391a 100644 --- a/src/transform_system.h +++ b/src/transform_system.h
@@ -21,6 +21,11 @@ struct CollisionResult {
21 vec2i adjustedLoc; 21 vec2i adjustedLoc;
22}; 22};
23 23
24enum class CheckCollisionOptions {
25 None = 0,
26 AllowSliding = 1 << 0
27};
28
24class TransformSystem : public System { 29class TransformSystem : public System {
25public: 30public:
26 31
@@ -42,7 +47,7 @@ public:
42 }); 47 });
43 } 48 }
44 49
45 CollisionResult checkCollision(int spriteId, vec2i curLoc, vec2i newLoc, Direction dir); 50 CollisionResult checkCollision(int spriteId, vec2i curLoc, vec2i newLoc, Direction dir, CheckCollisionOptions options = CheckCollisionOptions::None);
46 51
47 CharacterMedium getMediumAtPosition(int spriteId, vec2i newLoc); 52 CharacterMedium getMediumAtPosition(int spriteId, vec2i newLoc);
48 53