SDL-Ball

SDL-Ball is an arcade breakout-like game. It is written by Jimmy Christensen and licensed under the GPLv3. The latest version of the game is 1.01 released on January 11th, 2009. It is written in the C++ programming language using the SDL library.

Gameplay
In SDL-Ball you must crush all the bricks to move onto the next level. Some bricks can not be destroyed, and the ball bounces of the paddle at the reversed angle.

Features
 * Themes: You can make your own theme with graphics, sounds and levels
 * LevelEditor: Graphical utility for making levels
 * Lots of levels and Powerups
 * Save and Load functions
 * Ability to buy powerups for credits (that you get through collecting powerups)
 * Diffrent brick types

Powerups
 * Glue: Ball gets catched by the paddle
 * Explosive: Ball explodes a brick, and all the bricks around it
 * Gun: You get two laser cannons mounted on your paddle, use them to shoot down brics
 * Laser: If you have glue, laser will show you the angle of the ball when you launch it
 * Aim: The same as laser, but the angles from side to side, allowing you to aim
 * AimHelp: When the ball is on collision course with paddle, you can see the bounce-off angle
 * BigBall: Balls grow bigger and slower
 * NormalBall: Balls grow to the startsize and speed
 * Life: You get one more life
 * GrowPaddle: Your paddle becomes bigger, makes it easier to catch the ball
 * Go-Thru: Balls won't bounce off of bricks but go right trough them
 * Multiball: All balls split into two
 * Detonate: All explosive bricks detonate, breaking surrounding bricks aswell
 * Explosive-Grow: All explosive bricks makes their surrounding bricks explosive aswell
 * Easybrick: All bricks can be destroyed, invisible bricks will appear, and those and glassbricks break after 1 hit
 * Nextlevel: Takes you to the next map

Powerdowns
 * SmallBall: Ball shrinks and becomes faster
 * ShrinkPaddle: Your paddle becomes smaller, making it more difficult to catch the ball
 * Die: Nobody really wants to
 * Drop: Each time a ball hits your paddle, the map moves down one brick, you get loose points for each brick that dissapear

Control
SDL-Ball supports mouse, joystick, WiiMote and keyboard.

Keyboard controls:
 * F1: Pause and show titlescreen (with powerup explanations)
 * F11: Toggle fullscreen
 * ESC: Bring up menu
 * p: Pause the game
 * Pause: Pause the game
 * u : Turn off buffer clearing (gives funky effects if background is turned off)
 * c : Show/Hide clock (to show what time it is)
 * s: save screenshot to ~/.config/sdl-ball/screenshots/
 * w: bring up wiimote connect dialog (if compiled with wiiuse support)
 * ArrowUp: Launch Ball/Shoot
 * ArrowLeft/Right: Move paddle
 * v: select previous powerup from shop
 * b: buy selected powerup from shop
 * n: select next powerup from shop

Mouse:
 * X axis: move paddle around (this is the preferred way of controlling)
 * Mouse1: Launch Ball/Shoot
 * Mouse2 (RightClick): Buy selected powerup from shop
 * Wheel Up/Down: Select powerup from shop

Joystick:
 * X axis: move paddle
 * Y axis: select next/previous powerup in shop
 * Button 1: Launch Ball/Shoot
 * Button 2: Buy selected powerup

WiiMote:
 * Tilt: move paddle
 * Button 2 (Should be at right hand thumb): Launch Ball/Shoot
 * Button 1: Buy selected powerup
 * Joypad (Should be at left hand thumb): Select powerup from shop

Version history

 * 0.1.1 released on October 8th, 2008
 * 0.12 released on October 26th, 2008
 * 0.13 released on November 11, 2008
 * 1.0 released on January 8, 2009
 * 1.01 released on January 11, 2009