Files changed (5)
+ * tetris.el (tetris-clear-wait-tick-period): New. The time taken to clear a full row. Independent of current drop speed.
+ * tetris.el (tetris-shapes): Make 'T' shape pivot around center. Make 'I' shape pivot closer to center.
+ * tetris.el (tetris-state-clearing): New. Game FSM state for dropping rows down after a lower row is cleared.
+ * tetris.el (tetris-state-clearing-wait): New. Game FSM state for showing a row that is being cleared.
+ * tetris.el (tetris-shapes-bounding-boxes): New. Multi-dimensional array that holds the bounding box for each of the seven shapes.
+ * tetris.el (tetris-bounding-box-add-point): New. Recompute bounding box extrema to include point.
+ * tetris.el (tetris-bounding-box-compute-all): New. Compute bounding boxes for all shape,rotation tuples.
+ * tetris.el (tetris-draw-shape): Make loop from bounding box extrema, instead of shape width and height.
+ * tetris.el (tetris-mark-rows-for-clearing): New. Change glyph index for all full rows to tetris-clearing.
+ * tetris.el (tetris-shape-done): Add FSM transition to tetris-state-clearing and tetris-state-clearing-wait.