#include "display_manager.h"
class Level;
+class Background;
/** The World class holds a level and all the game objects (badguys,
bouncy distros, etc) that are needed to run a game. */
BadGuys bad_guys_to_add;
typedef std::list<Trampoline*> Trampolines;
Trampolines trampolines;
+ typedef std::list<FlyingPlatform*> FlyingPlatforms;
+ FlyingPlatforms flying_platforms;
Level* level;
Player* tux;
static World* current_;
public:
+ Background* background;
BadGuys bad_guys;
std::vector<Upgrade*> upgrades;
std::vector<Bullet*> bullets;
std::vector<GameObject*> gameobjects;
+ Camera* camera;
DisplayManager displaymanager;
public:
void set_defaults();
void draw();
- void action(double frame_ratio);
- void scrolling(double frame_ratio); // camera scrolling
+ void action(float elapsed_time);
void play_music(int musictype);
int get_music_type();
BadGuy* add_bad_guy(float x, float y, BadGuyKind kind);
void add_upgrade(const Vector& pos, Direction dir, UpgradeKind kind);
- void add_bullet(const Vector& pos, float xm, Direction dir);
+ bool add_bullet(const Vector& pos, float xm, Direction dir);
/** Try to grab the coin at the given coordinates */
void trygrabdistro(float x, float y, int bounciness);