Index: apps/plugins/brickmania.c =================================================================== --- apps/plugins/brickmania.c (revision 22638) +++ apps/plugins/brickmania.c (working copy) @@ -274,27 +274,28 @@ * up/down as needed based on the screen height. */ #define SPEED_SCALE GAMESCREEN_HEIGHT/176 - +/* Don't use SPEED_CONVERT for negative speeds! */ +#define SPEED_CONVERT(x) (x*SPEED_SCALE>0?x*SPEED_SCALE:1) /* These are all used as ball speeds depending on where the ball hit the * paddle. */ -#define SPEED_1Q_X ( 6 * SPEED_SCALE) -#define SPEED_1Q_Y (-2 * SPEED_SCALE) -#define SPEED_2Q_X ( 4 * SPEED_SCALE) -#define SPEED_2Q_Y (-3 * SPEED_SCALE) -#define SPEED_3Q_X ( 3 * SPEED_SCALE) -#define SPEED_3Q_Y (-4 * SPEED_SCALE) -#define SPEED_4Q_X ( 2 * SPEED_SCALE) -#define SPEED_4Q_Y (-4 * SPEED_SCALE) +#define SPEED_1Q_X SPEED_CONVERT(6) +#define SPEED_1Q_Y (-SPEED_CONVERT(2)) +#define SPEED_2Q_X SPEED_CONVERT(4) +#define SPEED_2Q_Y (-SPEED_CONVERT(3)) +#define SPEED_3Q_X SPEED_CONVERT(3) +#define SPEED_3Q_Y (-SPEED_CONVERT(4)) +#define SPEED_4Q_X SPEED_CONVERT(2) +#define SPEED_4Q_Y (-SPEED_CONVERT(4)) /* This is used to determine the speed of the paddle */ -#define SPEED_PAD ( 8 * SPEED_SCALE) +#define SPEED_PAD SPEED_CONVERT(8) /* This defines the speed that the powerups drop */ -#define SPEED_POWER ( 2 * SPEED_SCALE) +#define SPEED_POWER SPEED_CONVERT(2) /* This defines the speed that the shot moves */ -#define SPEED_FIRE ( 4 * SPEED_SCALE) +#define SPEED_FIRE SPEED_CONVERT(4) /*calculate paddle y-position */ #define PAD_POS_Y (GAMESCREEN_HEIGHT - PAD_HEIGHT - 1)