X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fobject%2Fcamera.h;h=f8fbc4f8c4c8ad0c1bff662922814a7fa6bcef57;hb=c0093d25093395cb62fc2526ab42be65a9f015b8;hp=45351b6af489ba1d3a01f3d8353c66ebaecc0cb0;hpb=ef57479f613b900b73eba8e8f4d026aae0de25cc;p=supertux.git diff --git a/src/object/camera.h b/src/object/camera.h index 45351b6af..f8fbc4f8c 100644 --- a/src/object/camera.h +++ b/src/object/camera.h @@ -23,11 +23,11 @@ #include #include -#include "defines.h" #include "math/vector.h" -#include "special/game_object.h" +#include "game_object.h" #include "video/drawing_context.h" #include "serializable.h" +#include "timer.h" using namespace SuperTux; namespace lisp { @@ -59,6 +59,9 @@ public: { } + // shake camera in a direction 1 time + void shake(float speed, float x, float y); + void set_scrolling(int scroll_x, int scroll_y) { translation.x = scroll_x; @@ -75,6 +78,7 @@ private: void scroll_normal(float elapsed_time); void scroll_autoscroll(float elapsed_time); void keep_in_bounds(); + void shake(); enum LeftRightScrollChange { @@ -99,6 +103,12 @@ private: size_t auto_idx; float auto_t; Vector current_dir; + + // shaking + Timer2 shaketimer; + float shakespeed; + float shakedepth_x; + float shakedepth_y; }; #endif /*SUPERTUX_CAMERA_H*/