home *** CD-ROM | disk | FTP | other *** search
/ Game.EXE 2002 May / Game.EXE_05_2002.iso / Alawar / src / PacmanInterface2D.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2002-04-02  |  1.3 KB  |  61 lines

  1. #include "PacmanInterface2D.h"
  2. #include <Color.h>
  3. #include <2D/Hardware2D.h>
  4. #include <Log/LogPtr.h>
  5. #include <String.hpp>
  6. #include <Converter.h>
  7. #include <safe_new.h>
  8.  
  9. Interface2D * create_game(Hardware2D * hardware)
  10. {
  11.     return new PacmanInterface2D( hardware );
  12. }
  13.  
  14. PacmanInterface2D::PacmanInterface2D(Hardware2D * hardware)
  15. :    Interface2D( hardware ),
  16.     scene( hardware ),
  17.     fps_text( &scene, 3, "data\\small_alphabet" ),
  18.     game( &scene ),
  19.     time( 0 ),
  20.     fps( 2000 ),
  21.     need_quit( false )
  22. {
  23.     hardware->set_mode( 240, 240 );
  24.  
  25.     fps_text.move( 0, 0 );
  26.     fps_text.change_text( "Unknown FPS" );
  27. }
  28.  
  29. PacmanInterface2D::~PacmanInterface2D()
  30. {
  31.     hardware->stop_mode();
  32. }
  33.  
  34. bool PacmanInterface2D::render()
  35. {
  36.     bool ok = scene.render( 0, 0, Color(0,0,128) );
  37.     return ok;
  38. }
  39.  
  40. bool PacmanInterface2D::life_cycle(float delta_time)
  41. {
  42.     fps.record( time );
  43.     LogPtr()->message( String("Fps ") + Converter::convert( fps.get_fps() ) + "\n" );
  44.  
  45.     fps_text.change_text( String("Fps ") + Converter::convert( int(fps.get_fps()) ) );
  46.  
  47.     time += delta_time;
  48.     game.life_cycle( delta_time );
  49.     return !need_quit;
  50. }
  51.  
  52. void PacmanInterface2D::key_down(int scan_code)
  53. {
  54.     game.key_down( scan_code );
  55. }
  56.  
  57. void PacmanInterface2D::key_up(int scan_code)
  58. {
  59.     game.key_up( scan_code );
  60. }
  61.