X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=68a94cec543e27646cbc54344c64edcd974f1d49;hb=512f7bbfa113ed92bebc8a3a7d436b38c0227d59;hp=6e0296ef182a0a7c4dc2600e95d248705c474c00;hpb=2420800e428feaa01663bb5b9fa334b5efe9221b;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 6e0296ef..68a94cec 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -65,15 +65,17 @@ #define STR_SPECIAL_RENDERING_TARGET "target_texture_only" #define STR_SPECIAL_RENDERING_DOUBLE "stream_and_target_texture" +#if defined(PLATFORM_EMSCRIPTEN) +#define STR_SPECIAL_RENDERING_DEFAULT STR_SPECIAL_RENDERING_BITMAP +#else #define STR_SPECIAL_RENDERING_DEFAULT STR_SPECIAL_RENDERING_DOUBLE +#endif #define SPECIAL_RENDERING_OFF 0 #define SPECIAL_RENDERING_BITMAP 1 #define SPECIAL_RENDERING_TARGET 2 #define SPECIAL_RENDERING_DOUBLE 3 -#define SPECIAL_RENDERING_DEFAULT SPECIAL_RENDERING_DOUBLE - // values for vertical screen retrace synchronization (vsync) #define STR_VSYNC_MODE_OFF "off" #define STR_VSYNC_MODE_NORMAL "normal" @@ -864,6 +866,20 @@ (artwork).snd_first : \ (artwork).mus_first) +#define ARTWORK_CURRENT_PTR(artwork, type) \ + ((type) == ARTWORK_TYPE_GRAPHICS ? \ + &(artwork).gfx_current : \ + (type) == ARTWORK_TYPE_SOUNDS ? \ + &(artwork).snd_current : \ + &(artwork).mus_current) + +#define ARTWORK_CURRENT(artwork, type) \ + ((type) == ARTWORK_TYPE_GRAPHICS ? \ + (artwork).gfx_current : \ + (type) == ARTWORK_TYPE_SOUNDS ? \ + (artwork).snd_current : \ + (artwork).mus_current) + #define ARTWORK_CURRENT_IDENTIFIER_PTR(artwork, type) \ ((type) == ARTWORK_TYPE_GRAPHICS ? \ &(artwork).gfx_current_identifier : \ @@ -977,6 +993,8 @@ struct NetworkInfo char *server_host; int server_port; + SDL_Thread *server_thread; + boolean is_server_thread; }; struct RuntimeInfo @@ -1001,6 +1019,7 @@ struct OptionInfo char *execute_command; char *special_flags; + char *debug_mode; boolean mytapes; boolean serveronly; @@ -1156,6 +1175,8 @@ struct TileCursorInfo int target_x, target_y; // tile cursor target screen position int sx, sy; // tile cursor screen start position + + boolean xsn_debug; // enable or disable XSN debugging }; struct OverlayInfo @@ -1361,6 +1382,8 @@ struct SetupDebugInfo boolean frame_delay_use_mod_key; boolean frame_delay_game_only; boolean show_frames_per_second; + int xsn_mode; + int xsn_percent; }; struct SetupInfo @@ -1810,6 +1833,7 @@ void InitGfxCustomArtworkInfo(void); void InitGfxOtherSettings(void); void InitTileCursorInfo(void); void InitOverlayInfo(void); +void SetOverlayGridSizeAndButtons(void); void SetTileCursorEnabled(boolean); void SetTileCursorActive(boolean); void SetTileCursorTargetXY(int, int);