X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=3fcdf6c72177e386d8b720072824bf1d9b04ea26;hb=b857093af85a12103d638aa99962d16367935e49;hp=b5c5fcee6771397befef3e9f6710bf32f26f2e1b;hpb=6cf6b75d5b9c84476a121cfd2ff11a0351ecba47;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index b5c5fcee..3fcdf6c7 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -96,7 +96,10 @@ #define TOUCH_MOVE_DISTANCE_DEFAULT 2 #define TOUCH_DROP_DISTANCE_DEFAULT 5 +#define TOUCH_TRANSPARENCY_DEFAULT 50 +#define ALPHA_FROM_TRANSPARENCY(x) ((100 - x) * SDL_ALPHA_OPAQUE / 100) +#define ALPHA_FADING_STEPSIZE(x) ((x) / 25) /* values for special settings for mobile devices */ #if defined(PLATFORM_ANDROID) @@ -456,10 +459,10 @@ #define MIN_GRID_YSIZE 3 #define MAX_GRID_XSIZE 32 #define MAX_GRID_YSIZE 32 -#define GRID_REAL_WIDTH MAX(video.screen_width, \ - video.screen_height) -#define GRID_REAL_HEIGHT MIN(video.screen_width, \ - video.screen_height) +#define GRID_REAL_WIDTH MAX(1, MAX(video.screen_width, \ + video.screen_height)) +#define GRID_REAL_HEIGHT MAX(1, MIN(video.screen_width, \ + video.screen_height)) #define DEFAULT_GRID_XSIZE_0 18 #define DEFAULT_GRID_YSIZE_0 MIN(MAX(MIN_GRID_YSIZE, \ DEFAULT_GRID_XSIZE_0 * \ @@ -473,9 +476,9 @@ GRID_REAL_HEIGHT), \ MAX_GRID_YSIZE) -#define DEFAULT_GRID_XSIZE(n) (n == 0 ? DEFAULT_GRID_XSIZE_0 : \ +#define DEFAULT_GRID_XSIZE(n) ((n) == 0 ? DEFAULT_GRID_XSIZE_0 : \ DEFAULT_GRID_XSIZE_1) -#define DEFAULT_GRID_YSIZE(n) (n == 0 ? DEFAULT_GRID_YSIZE_0 : \ +#define DEFAULT_GRID_YSIZE(n) ((n) == 0 ? DEFAULT_GRID_YSIZE_0 : \ DEFAULT_GRID_YSIZE_1) #define GRID_ACTIVE_NR() (video.screen_width > \ @@ -1016,15 +1019,12 @@ struct OverlayInfo boolean active; /* overlay activated (depending on game mode) */ boolean show_grid; - boolean show_grid_buttons; - int grid_xsize_all[2]; - int grid_ysize_all[2]; int grid_xsize; int grid_ysize; - char grid_button_all[2][MAX_GRID_XSIZE][MAX_GRID_YSIZE]; char grid_button[MAX_GRID_XSIZE][MAX_GRID_YSIZE]; + char grid_button_highlight; }; @@ -1054,6 +1054,16 @@ struct SetupTouchInfo char *control_type; int move_distance; int drop_distance; + + int grid_xsize[2]; + int grid_ysize[2]; + + char grid_button[2][MAX_GRID_XSIZE][MAX_GRID_YSIZE]; + + int transparency; /* in percent (0 == opaque, 100 == invisible) */ + boolean draw_outlined; + + boolean grid_initialized; }; struct SetupInputInfo