23 |
#include "fwd.hh" |
#include "fwd.hh" |
24 |
#include "enigma.hh" |
#include "enigma.hh" |
25 |
#include "player.hh" |
#include "player.hh" |
26 |
#include "px/tools.hh" |
#include "px/px.hh" |
|
#include "px/math.hh" |
|
|
#include "px/video.hh" |
|
27 |
#include <string> |
#include <string> |
28 |
|
|
29 |
//---------------------------------------- |
//---------------------------------------- |
48 |
virtual double duration() const { return 0; } |
virtual double duration() const { return 0; } |
49 |
virtual void set_callback (ModelCallback *cb) {} |
virtual void set_callback (ModelCallback *cb) {} |
50 |
virtual void reverse() {} |
virtual void reverse() {} |
51 |
|
|
52 |
|
virtual void draw(px::GC &gc, int x, int y) = 0; |
53 |
|
virtual void draw_shade(px::GC &gc, int x, int y) = 0; |
54 |
|
|
55 |
|
virtual void activate(double worldx, double worldy, bool is_sprite) {} |
56 |
|
virtual void deactivate() {} |
57 |
|
virtual bool is_garbage() const { return false; } |
58 |
|
virtual void tick(double dtime) {} |
59 |
|
virtual bool has_changed(px::Rect &changed_region) { return false; } |
60 |
|
|
61 |
|
virtual Model *clone()=0; |
62 |
|
// virtual Surface *get_image() = 0; |
63 |
|
// virtual Surface *get_shade() = 0; |
64 |
}; |
}; |
65 |
|
|
66 |
Model * MakeModel (const string &name); |
void InitModels(); |
67 |
|
void ShutdownModels(); |
68 |
|
|
69 |
|
void DefineModel (const char *name, Model *m); |
70 |
|
Model * MakeModel (const std::string &name); |
71 |
|
|
72 |
void DefineImage (const char *name, const char *fname, |
void DefineImage (const char *name, const char *fname, |
73 |
int xoff, int yoff); |
int xoff, int yoff); |