rnd-20100310-1-src
[rocksndiamonds.git] / src / events.c
index 6d52228b5d4a050eb8e632cb0abe29cfc81d0325..b9b5b8621ffde3e25c1d15a06c9f6543a1782bb2 100644 (file)
@@ -577,6 +577,11 @@ static void HandleKeysSpecial(Key key)
     {
       DumpTape(&tape);
     }
+    else if (is_string_suffix(cheat_input, ":save-native-level") ||
+            is_string_suffix(cheat_input, ":snl"))
+    {
+      SaveNativeLevel(&level);
+    }
   }
   else if (game_status == GAME_MODE_PLAYING)
   {
@@ -744,7 +749,7 @@ void HandleKey(Key key, int key_status)
   if (game_status == GAME_MODE_MAIN &&
       (key == setup.shortcut.toggle_pause || key == KSYM_space))
   {
-    StartGameActions(options.network, setup.autorecord, NEW_RANDOMIZE);
+    StartGameActions(options.network, setup.autorecord, level.random_seed);
 
     return;
   }
@@ -757,6 +762,8 @@ void HandleKey(Key key, int key_status)
       TapeQuickLoad();
     else if (key == setup.shortcut.toggle_pause)
       TapeTogglePause(TAPE_TOGGLE_MANUAL);
+
+    HandleTapeButtonKeys(key);
   }
 
   if (game_status == GAME_MODE_PLAYING && !network_playing)