summaryrefslogtreecommitdiff
path: root/Sprite.cpp
diff options
context:
space:
mode:
authorXaviDCR92 <xavi.dcr@gmail.com>2018-07-10 00:04:16 +0200
committerXaviDCR92 <xavi.dcr@gmail.com>2018-07-10 00:04:16 +0200
commit14c12aeea30d59e9c811f1cc8c7019053d646033 (patch)
tree7bff078a702a1b2949c37930adfc6fd2fc45c3cb /Sprite.cpp
parent188d74cb789f33967daf6daa5af17d41b6f59d4e (diff)
More work on Unit/BaseUnit concepts.
Diffstat (limited to 'Sprite.cpp')
-rw-r--r--Sprite.cpp43
1 files changed, 41 insertions, 2 deletions
diff --git a/Sprite.cpp b/Sprite.cpp
index ea7f9d2..d948652 100644
--- a/Sprite.cpp
+++ b/Sprite.cpp
@@ -3,6 +3,7 @@
* ******************************************************************/
#include "Sprite.h"
+#include "System.h"
/* *******************************************************************
* Defines
@@ -32,8 +33,46 @@
*
* \brief Constructor for Sprite class.
*
+ * \param pu8SprData
+ * Pointer to raw sprite data.
+ *
+ * \param u8Colour
+ * Sprite colour. Default value is BLACK.
+ *
+ * \param rotation
+ * Sprite rotation. Default value is NOROT.
+ *
*********************************************************************/
-Sprite::Sprite(const uint8_t& pu8SprData) :
-_pu8SprData(pu8SprData)
+Sprite::Sprite(const uint8_t& pu8SprData, const uint8_t u8Colour, const uint8_t rotation) :
+_pu8SprData(pu8SprData),
+_colour(u8Colour),
+_rotation(rotation),
+_x(0),
+_y(0)
+{
+}
+
+/*****************************************************************//**
+ *
+ * \brief Reportedly, this function updates X/Y coordinates for
+ * a Sprite object.
+ *
+ * \param x
+ * X position, relative to screen coordinates origin.
+ *
+ * \param y
+ * Y position, relative to screen coordinates origin.
+ *
+ *********************************************************************/
+void Sprite::setPos(const uint8_t x, const uint8_t y)
+{
+ /* Update coords according to input parameters. */
+ _x = x;
+ _y = y;
+}
+
+void Sprite::draw(void)
{
+ gb.display.setColor(_colour);
+ gb.display.drawBitmap(_x, _y, (const uint8_t*)&_pu8SprData);
}