X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=3962dbdba4107a6e5fae8890a49d73cb832dee3a;hb=d87446c13e6ecb9c2dcf5881ceb9ad2abe897dfe;hp=1bfed54352d6aaeab474cc6fa3c1c2c9988955f1;hpb=6a04a1dd0e69bf92334623018753ab1b0497748e;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 1bfed543..3962dbdb 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -65,7 +65,11 @@ #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 @@ -862,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 : \ @@ -1157,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 @@ -1362,12 +1382,16 @@ 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 { char *player_name; + boolean multiple_users; + boolean sound; boolean sound_loops; boolean sound_music; @@ -1435,6 +1459,11 @@ struct SetupInfo struct OptionInfo options; }; +struct UserInfo +{ + int nr; +}; + struct TreeInfo { struct TreeInfo **node_top; // topmost node in tree @@ -1755,6 +1784,7 @@ extern struct AnimInfo anim; extern struct ArtworkInfo artwork; extern struct JoystickInfo joystick; extern struct SetupInfo setup; +extern struct UserInfo user; extern LevelDirTree *leveldir_first_all; extern LevelDirTree *leveldir_first;