* Let a Playground know about the CKernel.
[matthijs/ABM2.git] / ABM2 / main.cpp
index 48dcd73f664a1692542a03fd47e7b3546c122ccc..5e1a52ac19125ccf5f86576fbdae4a52557badd5 100755 (executable)
@@ -6,6 +6,7 @@
 \r
 #include "Engine/engine.h"\r
 #include "Engine/game.h"\r
+#include "Engine/SpriteManager.h"\r
 #include "Playground.h"\r
 #include "SchemeReader.h"\r
 \r
 #define SCREEN_WIDTH  640\r
 #define SCREEN_HEIGHT 480\r
 \r
+enum SpriteID {\r
+       SPR_NONE = 0,\r
+       SPR_FIELD,\r
+       SPR_SOLID,\r
+       SPR_BRICK,\r
+       SPR_BLANK,\r
+       SPR_PLAYER,\r
+};\r
+\r
+SpriteData defaultSprites[] = {\r
+       {SPR_FIELD, "FIELD0.png", 640, 480},\r
+       {SPR_BLANK, "FIELD0.png", 640, 480},\r
+       {SPR_NONE, NULL, 0, 0}\r
+};\r
+\r
 #ifdef WIN32\r
 HINSTANCE hInstance;\r
 HWND hWnd;\r
@@ -155,7 +171,10 @@ void CApplication::Run(int argc, char *argv[])
        globalTimer->priority=10;\r
        CKernel::GetSingleton().AddTask(CMMPointer<ITask>(globalTimer));\r
 \r
-       Playground game;\r
+       CSpriteManager *sm = new CSpriteManager(videoTask->getGraphics(), defaultSprites);\r
+       CKernel::GetSingleton().setSpriteManager(sm);\r
+\r
+       Playground game(&CKernel::GetSingleton());\r
        game.priority=100;\r
        CKernel::GetSingleton().AddTask(CMMPointer<ITask>(&game));\r
 \r