summaryrefslogtreecommitdiff
path: root/noncore/games/sfcave-sdl/sfcave_game.h
Side-by-side diff
Diffstat (limited to 'noncore/games/sfcave-sdl/sfcave_game.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/sfcave-sdl/sfcave_game.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/noncore/games/sfcave-sdl/sfcave_game.h b/noncore/games/sfcave-sdl/sfcave_game.h
new file mode 100644
index 0000000..92a0f5d
--- a/dev/null
+++ b/noncore/games/sfcave-sdl/sfcave_game.h
@@ -0,0 +1,39 @@
+#ifndef __SFCAVE_GAME_H
+#define __SFCAVE_GAME_H
+
+#include "SDL.h"
+
+#include "rect.h"
+
+#include "sfcave.h"
+#include "terrain.h"
+#include "player.h"
+#include "game.h"
+
+class SFCaveGame : public Game
+{
+public:
+ SFCaveGame( SFCave *p, int w, int h, int diff );
+ ~SFCaveGame();
+
+ void init();
+ void update( int state );
+ void draw( SDL_Surface *screen );
+
+private:
+
+ int blockDistance;
+ int blockHeight;
+ int blockWidth;
+ int blockUpdateRate;
+
+ Rect blocks[BLOCKSIZE];
+
+ void addBlock();
+ void moveBlocks( int amountToMove );
+ void drawBlocks( SDL_Surface *screen );
+ bool checkCollisions();
+
+};
+
+#endif