add infos in Modes and Secrets tabs
[neverball] / ball / game.h
1 #ifndef GAME_H
2 #define GAME_H
3
4 #include <stdio.h>
5
6 #include "level.h"
7
8 /*---------------------------------------------------------------------------*/
9
10 #define AUD_MENU   1
11 #define AUD_START  2
12 #define AUD_READY  3
13 #define AUD_SET    4
14 #define AUD_GO     5
15 #define AUD_BALL   6
16 #define AUD_BUMP   7
17 #define AUD_COIN   8
18 #define AUD_TICK   9
19 #define AUD_TOCK   10
20 #define AUD_SWITCH 11
21 #define AUD_JUMP   12
22 #define AUD_GOAL   13
23 #define AUD_SCORE  14
24 #define AUD_FALL   15
25 #define AUD_TIME   16
26 #define AUD_OVER   17
27 #define AUD_COUNT  18
28
29 /*---------------------------------------------------------------------------*/
30
31 #define MAX_DT      0.01666666         /* Maximum physics update cycle       */
32 #define MAX_DN      16                 /* Maximum subdivisions of dt         */
33 #define RESPONSE    0.05f              /* Input smoothing time               */
34
35 #define ANGLE_BOUND 20.f               /* Angle limit of floor tilting       */
36 #define NO_AA       0                  /* Disable Angle Acceleration         */
37
38 /*---------------------------------------------------------------------------*/
39
40 int   game_init(const struct level *, int, int);
41 void  game_free(void);
42
43 int   curr_clock(void);
44 int   curr_coins(void);
45 int   curr_goal(void);
46
47 void  game_draw(int, float);
48 int   game_step(const float[3], float, int *);
49
50 void  game_set_pos(int, int);
51 void  game_set_x  (int);
52 void  game_set_z  (int);
53 void  game_set_rot(float);
54 void  game_set_fly(float);
55
56 void  game_look(float, float);
57
58 void  game_kill_fade(void);
59 void  game_step_fade(float);
60 void  game_fade(float);
61
62 int   put_game_state(FILE *);
63 int   get_game_state(FILE *);
64
65 /*---------------------------------------------------------------------------*/
66
67 #endif