removed images
[tennix.git] / tennix.c
blobcfdbddf7a4fa88b24ae50e0bb9ba1c79a11a82b4
1 #include <stdio.h>
2 #include <time.h>
3 #include <libgen.h>
5 #include "tennix.h"
6 #include "game.h"
7 #include "graphics.h"
8 #include "sound.h"
10 SDL_Surface *screen;
13 int main( int argc, char** argv) {
14 int i = 0;
15 int mx, my;
16 Uint8 *keys;
17 Uint8 mb;
18 SDL_Event e;
19 SDL_VideoInfo* vi;
20 int sdl_flags = SDL_SWSURFACE | SDL_DOUBLEBUF;
21 char datadir[MAXPATHLEN];
23 srand( (unsigned)time( NULL));
25 if( SDL_Init( SDL_INIT_VIDEO) == -1) {
26 fprintf( stderr, "Can't init SDL: %s\n", SDL_GetError());
27 exit( 1);
30 atexit( SDL_Quit);
32 vi = (SDL_VideoInfo*)SDL_GetVideoInfo();
34 if( (screen = SDL_SetVideoMode( WIDTH, HEIGHT, vi->vfmt->BitsPerPixel, sdl_flags)) == NULL) {
35 fprintf( stderr, "Can't set video mode: %s\n", SDL_GetError());
36 exit( 1);
39 SDL_WM_SetCaption( "Tennix! SDL", "Tennix");
40 SDL_ShowCursor( SDL_DISABLE);
41 SDL_EnableKeyRepeat (SDL_DEFAULT_REPEAT_DELAY, 1);
43 strcpy( datadir, argv[0]);
44 strcpy( (char*)(datadir+strlen( dirname( datadir))), DATADIR);
46 init_sound( datadir);
47 init_graphics( datadir);
49 while( 1) {
50 SDL_PollEvent( &e);
51 keys = SDL_GetKeyState( NULL);
52 mb = SDL_GetMouseState( &mx, &my);
54 if( keys[SDLK_ESCAPE] || keys['q']) {
55 break;
58 if( keys['f']) {
59 SDL_WM_ToggleFullScreen( screen);
62 clearscr();
63 show_image( GR_MENU, 180*2, 0, 255);
64 if( i%(12*4) == 0) {
65 sound_racket( 0);
67 show_sprite( GR_ANIMATION, (i++/12%4), 4, 20*2, 30*2, 255);
68 show_sprite( GR_RACKET, (mb&SDL_BUTTON( SDL_BUTTON_LEFT)) > 0, 4, mx, my, 255);
69 updatescr();
71 if( mb & SDL_BUTTON( SDL_BUTTON_LEFT)) {
72 if( M_POS_START_GAME(mx,my)) {
73 game();
74 SDL_Delay( 50);
75 while( SDL_PollEvent( &e));
77 if( M_POS_HIGH_SCORES(mx,my)) {
78 //introimage( "data/hiscores.bmp");
80 if( M_POS_CREDITS(mx,my)) {
81 //introimage( "data/credits.bmp");
83 if( M_POS_QUIT(mx,my)) {
84 break;
87 SDL_Delay( 10);
90 uninit_graphics();
92 SDL_Quit();
93 return 0;