rnd-20030426-2-src
[rocksndiamonds.git] / src / events.c
index 1f78e6b2559b1a814425ef7d2072c9ce420219f8..3d3cdde0e4a7aeb3e351c079aff59baa0825dc02 100644 (file)
@@ -50,7 +50,7 @@ int FilterMouseMotionEvents(const Event *event)
   cursor_inside_playfield = (motion->x >= SX && motion->x < SX + SXSIZE &&
                             motion->y >= SY && motion->y < SY + SYSIZE);
 
-  if (game_status == PLAYING && playfield_cursor_set)
+  if (game_status == GAME_MODE_PLAYING && playfield_cursor_set)
   {
     SetMouseCursor(CURSOR_DEFAULT);
     playfield_cursor_set = FALSE;
@@ -58,7 +58,7 @@ int FilterMouseMotionEvents(const Event *event)
   }
 
   /* skip mouse motion events without pressed button outside level editor */
-  if (button_status == MB_RELEASED && game_status != LEVELED)
+  if (button_status == MB_RELEASED && game_status != GAME_MODE_EDITOR)
     return 0;
   else
     return 1;
@@ -116,7 +116,7 @@ void EventLoop(void)
     else
     {
       /* when playing, display a special mouse pointer inside the playfield */
-      if (game_status == PLAYING)
+      if (game_status == GAME_MODE_PLAYING)
       {
        if (!playfield_cursor_set && cursor_inside_playfield &&
            DelayReached(&playfield_cursor_delay, 1000))
@@ -137,7 +137,7 @@ void EventLoop(void)
     /* don't use all CPU time when idle; the main loop while playing
        has its own synchronization and is CPU friendly, too */
 
-    if (game_status == PLAYING)
+    if (game_status == GAME_MODE_PLAYING)
       HandleGameActions();
     else
     {
@@ -149,7 +149,7 @@ void EventLoop(void)
     /* refresh window contents from drawing buffer, if needed */
     BackToFront();
 
-    if (game_status == EXITGAME)
+    if (game_status == GAME_MODE_QUIT)
       return;
   }
 }
@@ -266,7 +266,7 @@ void SleepWhileUnmapped()
     }
   }
 
-  if (game_status == PLAYING)
+  if (game_status == GAME_MODE_PLAYING)
     KeyboardAutoRepeatOff();
 }
 
@@ -296,7 +296,7 @@ void HandleMotionEvent(MotionEvent *event)
     return;    /* window and pointer are on different screens */
 
 #if 1
-  if (button_status == MB_RELEASED && game_status != LEVELED)
+  if (button_status == MB_RELEASED && game_status != GAME_MODE_EDITOR)
     return;
 #endif
 
@@ -308,7 +308,7 @@ void HandleMotionEvent(MotionEvent *event)
 void HandleKeyEvent(KeyEvent *event)
 {
   int key_status = (event->type==EVENT_KEYPRESS ? KEY_PRESSED : KEY_RELEASED);
-  boolean with_modifiers = (game_status == PLAYING ? FALSE : TRUE);
+  boolean with_modifiers = (game_status == GAME_MODE_PLAYING ? FALSE : TRUE);
   Key key = GetEventKey(event, with_modifiers);
 
   HandleKey(key, key_status);
@@ -339,12 +339,12 @@ void HandleFocusEvent(FocusChangeEvent *event)
        because unfortunately this is a global setting and not (which
        would be far better) set for each X11 window individually.
        The effect would be keyboard auto repeat while playing the game
-       (game_status == PLAYING), which is not desired.
+       (game_status == GAME_MODE_PLAYING), which is not desired.
        To avoid this special case, we just wait 1/10 second before
        processing the 'FocusIn' event.
     */
 
-    if (game_status == PLAYING)
+    if (game_status == GAME_MODE_PLAYING)
     {
       Delay(100);
       KeyboardAutoRepeatOff();
@@ -380,34 +380,34 @@ void HandleButton(int mx, int my, int button)
 
   switch(game_status)
   {
-    case MAINMENU:
+    case GAME_MODE_MAIN:
       HandleMainMenu(mx,my, 0,0, button);
       break;
 
-    case TYPENAME:
+    case GAME_MODE_PSEUDO_TYPENAME:
       HandleTypeName(0, KSYM_Return);
       break;
 
-    case CHOOSELEVEL:
+    case GAME_MODE_LEVELS:
       HandleChooseLevel(mx,my, 0,0, button);
       break;
 
-    case HALLOFFAME:
+    case GAME_MODE_SCORES:
       HandleHallOfFame(0,0, 0,0, button);
       break;
 
-    case LEVELED:
+    case GAME_MODE_EDITOR:
       break;
 
-    case HELPSCREEN:
+    case GAME_MODE_INFO:
       HandleHelpScreen(button);
       break;
 
-    case SETUP:
+    case GAME_MODE_SETUP:
       HandleSetupScreen(mx,my, 0,0, button);
       break;
 
-    case PLAYING:
+    case GAME_MODE_PLAYING:
 #ifdef DEBUG
       if (button == MB_RELEASED)
       {
@@ -463,7 +463,7 @@ void HandleKey(Key key, int key_status)
     { &custom_key.bomb,  DEFAULT_KEY_BOMB,  JOY_BUTTON_2 }
   };
 
-  if (game_status == PLAYING)
+  if (game_status == GAME_MODE_PLAYING)
   {
     /* only needed for single-step tape recording mode */
     static boolean clear_button_2[MAX_PLAYERS] = { FALSE,FALSE,FALSE,FALSE };
@@ -545,36 +545,36 @@ void HandleKey(Key key, int key_status)
     HandleJoystick();
   }
 
-  if (game_status != PLAYING)
+  if (game_status != GAME_MODE_PLAYING)
     key_joystick_mapping = 0;
 
   if (key_status == KEY_RELEASED)
     return;
 
   if ((key == KSYM_Return || key == setup.shortcut.toggle_pause) &&
-      game_status == PLAYING && AllPlayersGone)
+      game_status == GAME_MODE_PLAYING && AllPlayersGone)
   {
     CloseDoor(DOOR_CLOSE_1);
-    game_status = MAINMENU;
+    game_status = GAME_MODE_MAIN;
     DrawMainMenu();
     return;
   }
 
   /* allow quick escape to the main menu with the Escape key */
   if (key == KSYM_Escape &&
-      game_status != MAINMENU &&
-      game_status != PLAYING &&
-      game_status != LEVELED &&
-      game_status != CHOOSELEVEL &&
-      game_status != SETUP)
+      game_status != GAME_MODE_MAIN &&
+      game_status != GAME_MODE_PLAYING &&
+      game_status != GAME_MODE_EDITOR &&
+      game_status != GAME_MODE_LEVELS &&
+      game_status != GAME_MODE_SETUP)
   {
-    game_status = MAINMENU;
+    game_status = GAME_MODE_MAIN;
     DrawMainMenu();
     return;
   }
 
   /* special key shortcuts */
-  if (game_status == MAINMENU || game_status == PLAYING)
+  if (game_status == GAME_MODE_MAIN || game_status == GAME_MODE_PLAYING)
   {
     if (key == setup.shortcut.save_game)
       TapeQuickSave();
@@ -587,7 +587,7 @@ void HandleKey(Key key, int key_status)
 #if 0
 #ifndef DEBUG
 
-  if (game_status == PLAYING && (tape.playing || tape.pausing))
+  if (game_status == GAME_MODE_PLAYING && (tape.playing || tape.pausing))
     return;
 
 #endif
@@ -598,42 +598,42 @@ void HandleKey(Key key, int key_status)
 
   switch(game_status)
   {
-    case TYPENAME:
+    case GAME_MODE_PSEUDO_TYPENAME:
       HandleTypeName(0, key);
       break;
 
-    case MAINMENU:
-    case CHOOSELEVEL:
-    case SETUP:
+    case GAME_MODE_MAIN:
+    case GAME_MODE_LEVELS:
+    case GAME_MODE_SETUP:
       switch(key)
       {
        case KSYM_Return:
-         if (game_status == MAINMENU)
+         if (game_status == GAME_MODE_MAIN)
            HandleMainMenu(0,0, 0,0, MB_MENU_CHOICE);
-          else if (game_status == CHOOSELEVEL)
+          else if (game_status == GAME_MODE_LEVELS)
             HandleChooseLevel(0,0, 0,0, MB_MENU_CHOICE);
-         else if (game_status == SETUP)
+         else if (game_status == GAME_MODE_SETUP)
            HandleSetupScreen(0,0, 0,0, MB_MENU_CHOICE);
          break;
 
        case KSYM_Escape:
-          if (game_status == CHOOSELEVEL)
+          if (game_status == GAME_MODE_LEVELS)
             HandleChooseLevel(0,0, 0,0, MB_MENU_LEAVE);
-         else if (game_status == SETUP)
+         else if (game_status == GAME_MODE_SETUP)
            HandleSetupScreen(0,0, 0,0, MB_MENU_LEAVE);
          break;
 
         case KSYM_Page_Up:
-          if (game_status == CHOOSELEVEL)
+          if (game_status == GAME_MODE_LEVELS)
             HandleChooseLevel(0,0, 0,-SCR_FIELDY, MB_MENU_MARK);
-         else if (game_status == SETUP)
+         else if (game_status == GAME_MODE_SETUP)
            HandleSetupScreen(0,0, 0,-SCR_FIELDY, MB_MENU_MARK);
          break;
 
         case KSYM_Page_Down:
-          if (game_status == CHOOSELEVEL)
+          if (game_status == GAME_MODE_LEVELS)
             HandleChooseLevel(0,0, 0,SCR_FIELDY, MB_MENU_MARK);
-         else if (game_status == SETUP)
+         else if (game_status == GAME_MODE_SETUP)
            HandleSetupScreen(0,0, 0,SCR_FIELDY, MB_MENU_MARK);
          break;
 
@@ -648,15 +648,15 @@ void HandleKey(Key key, int key_status)
       }
       break;
 
-    case HELPSCREEN:
+    case GAME_MODE_INFO:
       HandleHelpScreen(MB_RELEASED);
       break;
 
-    case HALLOFFAME:
+    case GAME_MODE_SCORES:
       switch(key)
       {
        case KSYM_Return:
-         game_status = MAINMENU;
+         game_status = GAME_MODE_MAIN;
          DrawMainMenu();
          BackToFront();
          break;
@@ -674,12 +674,12 @@ void HandleKey(Key key, int key_status)
       }
       break;
 
-    case LEVELED:
+    case GAME_MODE_EDITOR:
       if (!anyTextGadgetActiveOrJustFinished || key == KSYM_Escape)
        HandleLevelEditorKeyInput(key);
       break;
 
-    case PLAYING:
+    case GAME_MODE_PLAYING:
     {
       switch(key)
       {
@@ -830,7 +830,7 @@ void HandleKey(Key key, int key_status)
 
 void HandleNoEvent()
 {
-  if (button_status && game_status != PLAYING)
+  if (button_status && game_status != GAME_MODE_PLAYING)
   {
     HandleButton(0, 0, -button_status);
     return;
@@ -886,9 +886,9 @@ void HandleJoystick()
 
   switch(game_status)
   {
-    case MAINMENU:
-    case CHOOSELEVEL:
-    case SETUP:
+    case GAME_MODE_MAIN:
+    case GAME_MODE_LEVELS:
+    case GAME_MODE_SETUP:
     {
       static unsigned long joystickmove_delay = 0;
 
@@ -896,35 +896,35 @@ void HandleJoystick()
          !DelayReached(&joystickmove_delay, GADGET_FRAME_DELAY))
        newbutton = dx = dy = 0;
 
-      if (game_status == MAINMENU)
+      if (game_status == GAME_MODE_MAIN)
        HandleMainMenu(0,0,dx,dy,newbutton ? MB_MENU_CHOICE : MB_MENU_MARK);
-      else if (game_status == CHOOSELEVEL)
+      else if (game_status == GAME_MODE_LEVELS)
         HandleChooseLevel(0,0,dx,dy,newbutton ? MB_MENU_CHOICE : MB_MENU_MARK);
-      else if (game_status == SETUP)
+      else if (game_status == GAME_MODE_SETUP)
        HandleSetupScreen(0,0,dx,dy,newbutton ? MB_MENU_CHOICE : MB_MENU_MARK);
       break;
     }
 
-    case HALLOFFAME:
+    case GAME_MODE_SCORES:
       HandleHallOfFame(0,0, dx,dy, !newbutton);
       break;
 
-    case HELPSCREEN:
+    case GAME_MODE_INFO:
       HandleHelpScreen(!newbutton);
       break;
 
-    case LEVELED:
+    case GAME_MODE_EDITOR:
       HandleLevelEditorIdle();
       break;
 
-    case PLAYING:
+    case GAME_MODE_PLAYING:
       if (tape.playing || keyboard)
        newbutton = ((joy & JOY_BUTTON) != 0);
 
       if (AllPlayersGone && newbutton)
       {
        CloseDoor(DOOR_CLOSE_1);
-       game_status = MAINMENU;
+       game_status = GAME_MODE_MAIN;
        DrawMainMenu();
        return;
       }