aboutsummaryrefslogtreecommitdiff
path: root/kyra/sprites.h
diff options
context:
space:
mode:
authorJohannes Schickel2005-10-29 18:37:40 +0000
committerJohannes Schickel2005-10-29 18:37:40 +0000
commit50cc43ba5845a1017f876bc84cd6b7d05950d8b5 (patch)
tree687449392fe1992e12c6060d5ade3b6acdda8306 /kyra/sprites.h
parenta47cc783e47b8153dea8fa33140805ff1ee3f32b (diff)
downloadscummvm-rg350-50cc43ba5845a1017f876bc84cd6b7d05950d8b5.tar.gz
scummvm-rg350-50cc43ba5845a1017f876bc84cd6b7d05950d8b5.tar.bz2
scummvm-rg350-50cc43ba5845a1017f876bc84cd6b7d05950d8b5.zip
Implemented some basic opcodes, and basic character drawing, also
started to change a bit of the sprite code (thanks to vinterstum for his work) It is still WIP code and breaks CD version, since all the used tables have to be located in one cd version binary. svn-id: r19361
Diffstat (limited to 'kyra/sprites.h')
-rw-r--r--kyra/sprites.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/kyra/sprites.h b/kyra/sprites.h
index 348f7da247..c64bf045cc 100644
--- a/kyra/sprites.h
+++ b/kyra/sprites.h
@@ -24,7 +24,6 @@
namespace Kyra {
-#define MAX_NUM_SPRITES 50
#define MAX_NUM_ANIMS 11
struct Sprite {
@@ -55,23 +54,27 @@ public:
~Sprites();
void doAnims();
- void loadDAT(const char* filename);
- Sprite getSprite(uint8 spriteID);
+ void loadDAT(const char *filename);
+ uint8 *getSceneShape(uint8 sceneShapeID);
void drawSprites(uint8 srcPage, uint8 dstPage);
+ void loadSceneShapes();
void enableAnim(uint8 anim) { _anims[anim].play = true; }
void disableAnim(uint8 anim) { _anims[anim].play = false; }
protected:
+ void freeSceneShapes();
+
KyraEngine *_engine;
Resource *_res;
OSystem *_system;
Screen *_screen;
- Sprite _sprites[MAX_NUM_SPRITES];
+ uint8 *_sceneShapes[50];
uint8 *_dat;
Anim _anims[MAX_NUM_ANIMS];
Common::RandomSource _rnd;
uint8 _animDelay;
+ uint8 *_spriteDefStart;
};
} // End of namespace Kyra