X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=185fdc5a1376c289d6eb3a2e4efe57fe05d1bd44;hp=d0584d4b922d331048d2cbea3ca265ccdb8fe928;hb=b2fbe97bd09c91e5efb580b35b910a3709015421;hpb=897c46a2720672a49ce6d0803b08eed23fd2dd90 diff --git a/src/libgame/system.h b/src/libgame/system.h index d0584d4b..185fdc5a 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -352,12 +352,27 @@ #define STYLE_DEFAULT STYLE_NONE +// values for special global animation delay types +#define ANIM_DELAY_UNDEFINED -1 +#define ANIM_DELAY_NONE 0 +#define ANIM_DELAY_INIT 1 +#define ANIM_DELAY_ANIM 2 +#define ANIM_DELAY_POST 3 + +// values for special global animation delay actions +#define ANIM_DELAY_ACTION_NONE -1 + // values for special global animation events #define ANIM_EVENT_UNDEFINED -1 #define ANIM_EVENT_NONE 0 #define ANIM_EVENT_SELF (1 << 16) #define ANIM_EVENT_ANY (1 << 17) #define ANIM_EVENT_CLICK (1 << 18) +#define ANIM_EVENT_INIT (1 << 19) +#define ANIM_EVENT_START (1 << 20) +#define ANIM_EVENT_END (1 << 21) +#define ANIM_EVENT_POST (1 << 22) +#define ANIM_EVENT_UNCLICK_ANY (1 << 23) // anim number: bits 0-7 // part number: bits 8-15 @@ -395,6 +410,11 @@ #define FADE_MODE_DEFAULT FADE_MODE_FADE +#define AUTO_DELAY_UNIT_MS 0 +#define AUTO_DELAY_UNIT_FRAMES 1 + +#define AUTO_DELAY_UNIT_DEFAULT AUTO_DELAY_UNIT_MS + // values for toon positions #define POS_UNDEFINED -1 #define POS_LEFT 0 @@ -454,6 +474,7 @@ y >= gfx.ey && y < gfx.ey + gfx.eysize) // values for mouse cursor +#define CURSOR_UNDEFINED -1 #define CURSOR_DEFAULT 0 #define CURSOR_NONE 1 #define CURSOR_PLAYFIELD 2 @@ -995,6 +1016,7 @@ struct VideoSystemInfo int screen_rendering_mode; int vsync_mode; + unsigned int frame_counter; unsigned int frame_delay; unsigned int frame_delay_value; @@ -1106,6 +1128,9 @@ struct GfxInfo void (*draw_tile_cursor_function)(int); int cursor_mode; + int cursor_mode_override; + int cursor_mode_final; + int mouse_x, mouse_y; }; struct TileCursorInfo @@ -1301,6 +1326,7 @@ struct SetupInternalInfo boolean choose_from_top_leveldir; boolean show_scaling_in_title; + boolean create_user_levelset; boolean menu_game; boolean menu_editor; @@ -1833,14 +1859,18 @@ void FreeBitmapTextures(Bitmap **); void ScaleBitmap(Bitmap **, int); void SetMouseCursor(int); +void UpdateRawMousePosition(int, int); +void UpdateMousePosition(void); void OpenAudio(void); void CloseAudio(void); void SetAudioMode(boolean); +void InitEventFilter(EventFilter); boolean PendingEvent(void); void WaitEvent(Event *event); void PeekEvent(Event *event); +void PumpEvents(void); void CheckQuitEvent(void); Key GetEventKey(KeyEvent *, boolean); KeyMod HandleKeyModState(Key, int); @@ -1848,7 +1878,7 @@ KeyMod GetKeyModState(void); KeyMod GetKeyModStateFromEvents(void); void StartTextInput(int, int, int, int); void StopTextInput(void); -boolean CheckCloseWindowEvent(ClientMessageEvent *); +void PushUserEvent(int, int, int); void InitJoysticks(void); boolean ReadJoystick(int, int *, int *, boolean *, boolean *);