huge CVS merge, see ChangeLog for details.
[supertux.git] / src / scene.h
1 //
2 // C Interface: scene
3 //
4 // Description: 
5 //
6 //
7 // Author: Tobias Glaesser <tobi.web@gmx.de>, (C) 2004
8 //
9 // Copyright: See COPYING file that comes with this distribution
10 //
11 //
12
13 #ifndef SUPERTUX_SCENE_H
14 #define SUPERTUX_SCENE_H
15
16 #include "defines.h"
17 #include "gameloop.h"
18 #include "player.h"
19 #include "badguy.h"
20 #include "world.h"
21 #include "special.h"
22 #include "level.h"
23
24 #define FRAME_RATE 10 // 100 Frames per second (10ms)
25 extern int score, distros, level, next_level, game_pause, quit, score_multiplier, endpos, counting_distros, distro_counter;
26 extern timer_type  super_bkgd_timer;
27 extern float scroll_x;
28 extern int frame;
29 extern bouncy_distro_type *bouncy_distros;
30 extern broken_brick_type *broken_bricks;
31 extern bouncy_brick_type *bouncy_bricks;
32 extern bad_guy_type *bad_guys;
33 extern floating_score_type *floating_scores;
34 extern upgrade_type *upgrades;
35 extern bullet_type *bullets;
36 extern int num_bad_guys;
37 extern int num_bouncy_distros;
38 extern int num_broken_bricks;
39 extern int num_bouncy_bricks;
40 extern int num_floating_scores;
41 extern int num_upgrades;
42 extern int num_bullets;
43 extern player_type tux;
44 extern texture_type img_box_full, img_box_empty, img_mints, img_coffee, img_super_bkgd, img_red_glow;
45 extern timer_type time_left;
46 extern double frame_ratio;
47
48 void add_score(float x, float y, int s);
49 void set_defaults(void);
50 void arrays_init(void);
51 void arrays_free(void);
52
53 #endif /*SUPERTUX_SCENE_H*/