]> git.eshelyaron.com Git - emacs.git/commitdiff
(tetris-move-bottom, tetris-move-left)
authorEli Zaretskii <eliz@gnu.org>
Sat, 3 Mar 2007 12:14:46 +0000 (12:14 +0000)
committerEli Zaretskii <eliz@gnu.org>
Sat, 3 Mar 2007 12:14:46 +0000 (12:14 +0000)
(tetris-move-right, tetris-rotate-prev, tetris-rotate-next): Do nothing when
the game is paused.

lisp/play/tetris.el

index 53305a08e66b1e257ae09229be75066dd9da2006..f1901a129ddd518808c6d880194746f62d8a203d 100644 (file)
@@ -512,19 +512,21 @@ Drops the shape one square, testing for collision."
 (defun tetris-move-bottom ()
   "Drops the shape to the bottom of the playing area"
   (interactive)
-  (let ((hit nil))
-    (tetris-erase-shape)
-    (while (not hit)
-      (setq tetris-pos-y (1+ tetris-pos-y))
-      (setq hit (tetris-test-shape)))
-    (setq tetris-pos-y (1- tetris-pos-y))
-    (tetris-draw-shape)
-    (tetris-shape-done)))
+  (if (not tetris-paused)
+      (let ((hit nil))
+        (tetris-erase-shape)
+        (while (not hit)
+          (setq tetris-pos-y (1+ tetris-pos-y))
+          (setq hit (tetris-test-shape)))
+        (setq tetris-pos-y (1- tetris-pos-y))
+        (tetris-draw-shape)
+        (tetris-shape-done))))
 
 (defun tetris-move-left ()
   "Moves the shape one square to the left"
   (interactive)
-  (unless (= tetris-pos-x 0)
+  (unless (or (= tetris-pos-x 0)
+              tetris-paused)
     (tetris-erase-shape)
     (setq tetris-pos-x (1- tetris-pos-x))
     (if (tetris-test-shape)
@@ -534,8 +536,9 @@ Drops the shape one square, testing for collision."
 (defun tetris-move-right ()
   "Moves the shape one square to the right"
   (interactive)
-  (unless (= (+ tetris-pos-x (tetris-shape-width))
-            tetris-width)
+  (unless (or (= (+ tetris-pos-x (tetris-shape-width))
+                 tetris-width)
+              tetris-paused)
     (tetris-erase-shape)
     (setq tetris-pos-x (1+ tetris-pos-x))
     (if (tetris-test-shape)
@@ -545,20 +548,23 @@ Drops the shape one square, testing for collision."
 (defun tetris-rotate-prev ()
   "Rotates the shape clockwise"
   (interactive)
-  (tetris-erase-shape)
-  (setq tetris-rot (% (+ 1 tetris-rot) 4))
-  (if (tetris-test-shape)
-      (setq tetris-rot (% (+ 3 tetris-rot) 4)))
-  (tetris-draw-shape))
+  (if (not tetris-paused)
+      (progn (tetris-erase-shape)
+             (setq tetris-rot (% (+ 1 tetris-rot) 4))
+             (if (tetris-test-shape)
+                 (setq tetris-rot (% (+ 3 tetris-rot) 4)))
+             (tetris-draw-shape))))
 
 (defun tetris-rotate-next ()
   "Rotates the shape anticlockwise"
   (interactive)
-  (tetris-erase-shape)
-  (setq tetris-rot (% (+ 3 tetris-rot) 4))
-  (if (tetris-test-shape)
-      (setq tetris-rot (% (+ 1 tetris-rot) 4)))
-  (tetris-draw-shape))
+  (if (not tetris-paused)
+      (progn
+        (tetris-erase-shape)
+        (setq tetris-rot (% (+ 3 tetris-rot) 4))
+        (if (tetris-test-shape)
+            (setq tetris-rot (% (+ 1 tetris-rot) 4)))
+        (tetris-draw-shape))))
 
 (defun tetris-end-game ()
   "Terminates the current game"