X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_mm%2Fexport.h;h=65d2e3a5fe9bf8651cf5973219e7d49f123d83da;hb=2da0cf37374833d0f09e69da0c74135a5f2f0132;hp=ba805a2a47b5553cfcfbcb43fd8007b16e722e4b;hpb=113a9a0fdeb78daec8c23413359763ef362a58d2;p=rocksndiamonds.git diff --git a/src/game_mm/export.h b/src/game_mm/export.h index ba805a2a..65d2e3a5 100644 --- a/src/game_mm/export.h +++ b/src/game_mm/export.h @@ -50,6 +50,10 @@ #define EL_MM_EMPTY_NATIVE 0 #define EL_DF_EMPTY_NATIVE 304 +/* sounds */ +#define SND_MM_GAME_LEVELTIME_CHARGING 0 +#define SND_MM_GAME_HEALTH_CHARGING 1 + /* ------------------------------------------------------------------------- */ /* data structure definitions */ @@ -147,6 +151,7 @@ struct GameInfo_MM boolean cheat_no_explosion; int laser_overload_value; + boolean laser_enabled; }; struct LevelInfo_MM @@ -166,6 +171,9 @@ struct LevelInfo_MM int score[MM_LEVEL_SCORE_ELEMENTS]; int amoeba_speed; int time_fuse; + int time_bomb; + int time_ball; + int time_block; short field[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; }; @@ -177,6 +185,26 @@ struct GraphicInfo_MM struct EngineSnapshotInfo_MM { struct GameInfo_MM game_mm; + + struct LaserInfo laser; + + short Ur[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + short Hit[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + short Box[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + short Angle[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + short Frame[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + + short LX,LY, XS,YS, ELX,ELY; + short CT,Ct; + + int last_LX, last_LY, last_hit_mask; + int hold_x, hold_y; + int pacman_nr; + + unsigned int rotate_delay; + unsigned int pacman_delay; + unsigned int energy_delay; + unsigned int overload_delay; }; @@ -200,7 +228,9 @@ extern void InitGfxBuffers_MM(); extern void InitGameEngine_MM(); extern void InitGameActions_MM(); -extern void GameActions_MM(byte *, boolean); +extern void GameActions_MM(struct MouseActionInfo, boolean); + +extern void DrawLaser_MM(); extern void ClickElement(int, int, int);