ld33_umonster

diff src/game.cc @ 7:92d662deb66e

capsule distance seems broken
author John Tsiombikas <nuclear@member.fsf.org>
date Tue, 25 Aug 2015 00:38:00 +0300
parents 3b4460b34d43
children
line diff
     1.1 --- a/src/game.cc	Sun Aug 23 05:37:09 2015 +0300
     1.2 +++ b/src/game.cc	Tue Aug 25 00:38:00 2015 +0300
     1.3 @@ -29,7 +29,7 @@
     1.4  static unsigned int modkeys;
     1.5  
     1.6  
     1.7 -static Dragon dragon;
     1.8 +static Dragon *dragon;
     1.9  
    1.10  
    1.11  bool game_init()
    1.12 @@ -71,11 +71,12 @@
    1.13  		return false;
    1.14  	}
    1.15  
    1.16 -	dragon.set_position(Vector3(0, 5, 20));
    1.17 -	dragon.set_direction(Vector3(0, 0, -1));
    1.18 -	dragon.set_target(Vector3(0, 3, 0));
    1.19 -	dragon.move_head(Vector3(0, 6, 10));
    1.20 -	dragon.set_head_limits(-ROOM_WIDTH * 0.2, ROOM_WIDTH * 0.2, 1, ROOM_HEIGHT - 3);
    1.21 +	dragon = new Dragon;
    1.22 +	dragon->set_position(Vector3(0, 5, 20));
    1.23 +	dragon->set_direction(Vector3(0, 0, -1));
    1.24 +	dragon->set_target(Vector3(0, 3, 0));
    1.25 +	dragon->move_head(Vector3(0, 6, 10));
    1.26 +	dragon->set_head_limits(-ROOM_WIDTH * 0.2, ROOM_WIDTH * 0.2, 1, ROOM_HEIGHT - 3);
    1.27  
    1.28  	Mesh::use_custom_sdr_attr = false;
    1.29  
    1.30 @@ -85,6 +86,7 @@
    1.31  
    1.32  void game_cleanup()
    1.33  {
    1.34 +	delete dragon;
    1.35  	cleanup_room();
    1.36  }
    1.37  
    1.38 @@ -92,7 +94,7 @@
    1.39  {
    1.40  	cur_time = time_msec;
    1.41  
    1.42 -	dragon.update();
    1.43 +	dragon->update();
    1.44  }
    1.45  
    1.46  void game_display()
    1.47 @@ -158,7 +160,7 @@
    1.48  
    1.49  	glPopMatrix();
    1.50  
    1.51 -	dragon.draw();
    1.52 +	dragon->draw();
    1.53  }
    1.54  
    1.55  
    1.56 @@ -231,7 +233,7 @@
    1.57  	prev_y = y;
    1.58  
    1.59  	if(gamectl) {
    1.60 -		dragon.move_head(dx * 0.1, -dy * 0.1);
    1.61 +		dragon->move_head(dx * 0.1, -dy * 0.1);
    1.62  	}
    1.63  
    1.64  	if(modkeys) {