Add "Playing Tennix" section in README
[tennix.git] / tennix.h
blobda843a2aeb233a0d2e9e17df3e6968695c8b0207
2 /**
4 * Tennix! SDL Port
5 * Copyright (C) 2003, 2007 Thomas Perl <thp@perli.net>
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
20 * MA 02110-1301, USA.
22 **/
24 #ifndef __TENNIX_H
25 #define __TENNIX_H
27 #include <sys/param.h>
29 #include "SDL.h"
32 #define COPYRIGHT "Copyright (c) 2003, 2007 Thomas Perl"
33 #define URL "http://thpinfo.com/2007/tennix/"
36 #define DATADIR "/data/"
37 #ifdef MACOSX
38 #undef DATADIR
39 #define DATADIR "/../Resources/"
40 #endif
42 #define WIDTH 640
43 #define HEIGHT 480
45 #define SPONSOR_BMP "data/sponsor.bmp"
46 #define SPONSOR_COUNT 6
48 #define RACKET_BMP "data/player-racket.bmp"
50 #define M_POS_XPOS(x) (x>340 && x<640)
52 #define M_POS_START_GAME(x,y) (M_POS_XPOS(x) && y>120 && y<160)
53 #define M_POS_START_MULTI(x,y) (M_POS_XPOS(x) && y>170 && y<200)
54 #define M_POS_CREDITS(x,y) (M_POS_XPOS(x) && y>210 && y<250)
55 #define M_POS_QUIT(x,y) (M_POS_XPOS(x) && y>280 && y<320)
57 #define HIGHLIGHT_X 420
59 #define HIGHLIGHT_START_GAME 145
60 #define HIGHLIGHT_START_MULTI 190
61 #define HIGHLIGHT_CREDITS 235
62 #define HIGHLIGHT_QUIT 305
64 extern SDL_Surface *screen;
66 typedef struct {
67 int x;
68 int y;
69 int current_x;
70 int current_y;
71 int new_x;
72 int new_y;
73 int w;
74 int h;
75 float phase;
76 int r;
77 int g;
78 int b;
79 int size;
80 int new_size;
81 } Point;
83 #define ELEKTRONS_WIDTH 85
84 #define ELEKTRON_LAZYNESS 7.0
85 #define ELEKTRONS 50
87 #endif