Subversion Repositories Kolibri OS

Rev

Rev 5229 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #include "game.h"
  2.  
  3. #define KEY_RELEASED 0x80
  4.  
  5. void main()
  6. {
  7.     enable_scancode();
  8.     game_init();
  9.     for(;;)
  10.     {
  11.         int ev = __menuet__wait_for_event();
  12.         switch (ev)
  13.         {
  14.         case 1 :    // EVENT_REDRAW:
  15.             game_redraw();
  16.             break;
  17.         case 2 :    // EVENT_KEY:
  18.         {
  19.             ev = __menuet__getkey() & 0xFF;
  20.             switch (ev)
  21.             {
  22.             case ((K_Up     & 0xFF) | KEY_RELEASED) :   // key Up released
  23.                 game_move_up();
  24.                 clear_key_buffer();
  25.                 break;
  26.             case ((K_Down   & 0xFF) | KEY_RELEASED) :   // key Down released
  27.                 game_move_down();
  28.                 clear_key_buffer();
  29.                 break;
  30.             case ((K_Left   & 0xFF) | KEY_RELEASED) :   // key Left released
  31.                 game_move_left();
  32.                 clear_key_buffer();
  33.                 break;
  34.             case ((K_Right  & 0xFF) | KEY_RELEASED) :   // key Right released
  35.                 game_move_right();
  36.                 clear_key_buffer();
  37.                 break;
  38.             }
  39.  
  40.             break;
  41.         }
  42.         case 3 :    // EVENT_BUTTON
  43.             ev = __menuet__get_button_id();
  44.             switch (ev)
  45.             {
  46.             case NEW_GAME_BUTTON :
  47.                 game_init();
  48.                 break;
  49.             default : // close
  50.                 game_exit();
  51.                 return;
  52.             }
  53.         }
  54.     }
  55. }
  56.