Platform game written for the GHI/OutrageousCircuits RETRO game device. Navigate the caves collecting all the pickups and avoiding the creatures and haunted mine carts that patrol the caves. Oh and remember to watch out for the poisonous plants... This game demonstrates the ability to have multiple animated sprites where the sprites can overlap the background environment. See how the player moves past the fence and climbs the wall in the 3rd screen.

Dependencies:   mbed

Revision:
10:782e4e9c6b47
Parent:
9:34008d8b1cdf
--- a/RetroGameEngine/ImageFrame.h	Sun Jan 11 02:53:03 2015 +0000
+++ b/RetroGameEngine/ImageFrame.h	Sun Jan 11 05:41:45 2015 +0000
@@ -5,29 +5,21 @@
 {
     public:
         ImageFrame(const uint8_t *pSheet, 
-            uint8_t x, uint8_t y, uint8_t width, uint8_t height) :
-            _pSheet(pSheet + 4),
+            uint8_t x, uint8_t y) :
             _stride((*((uint16_t*)pSheet)) >> 3),
-            _x(x),
-            _y(y),
-            _width(width),
-            _height(height)
+            _pStart((pSheet + 4) + ((y * _stride) + (x >> 3)))            
         {            
         }
         
         inline uint8_t *getBits(int row) const
-        {
-            int offset = ((_y + row) * _stride) + (_x >> 3);
-            return (uint8_t*)(_pSheet + offset);
+        {            
+            return (uint8_t*)(_pStart + (row * _stride));
         }
         
     private:
-        const uint8_t   *_pSheet;
-        uint8_t         _stride;
-        uint8_t         _x;
-        uint8_t         _y;
-        uint8_t         _width;
-        uint8_t         _height;
+        uint8_t         _stride;                
+        const uint8_t   *_pStart;
+        
 };
 
 #endif //__IMAGEFRAME_H__