add signal/slot

This commit is contained in:
gmueller
2011-01-18 23:31:41 +01:00
parent b55b687cd9
commit 6fcb3dbff4
6 changed files with 2580 additions and 23 deletions

View File

@@ -152,10 +152,6 @@ void setup_explosion() {
textures[4]);
}
void explosion_callback(double x, double y, double z, void *data) {
explosion.add(x, y, z);
}
GLuint wallTex = 0;
void draw_box() {
@@ -364,7 +360,6 @@ void Client::initialize(Arguments &arg) {
exit(EXIT_FAILURE);
}
game.setup_explosion_callback(explosion_callback, 0);
setup_opengl();
setup_explosion();
quadratic = gluNewQuadric();
@@ -384,6 +379,9 @@ void Client::initialize(Arguments &arg) {
accelerate_schudule.setInterval(0.05);
loadConsoleFont();
// setup signals
game.ExplosionSignal.connect(this, &Client::onExplosion);
}
void Client::update() {
@@ -514,3 +512,8 @@ void Client::shutdown() {
oglf_destroy(&font);
glfwTerminate();
}
void Client::onExplosion(double x, double y, double z) {
explosion.add(x, y, z);
}

View File

@@ -31,6 +31,8 @@ private:
void accelerate(double x, double y, double z);
void drop_bomb(double rx, double ry, double rz, double ttl);
void loadConsoleFont();
void onExplosion(double x, double y, double z);
};
#endif /* CLIENT_H_ */