X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=gacela_tetris.lisp;h=aadcb5238005f568d2f98155cd512e1fd9ee177b;hb=313f0f55db1767306751807b41bf3ca125909ea0;hp=07a475579163d22cdf9aee4f472a2ceb9d7654f1;hpb=e75e6a11d356f3220d14ef9dc77d8e5810c41ce1;p=gacela.git diff --git a/gacela_tetris.lisp b/gacela_tetris.lisp index 07a4755..aadcb52 100644 --- a/gacela_tetris.lisp +++ b/gacela_tetris.lisp @@ -1,5 +1,7 @@ (in-package :gacela) +(set-frames-per-second 15) + (defun tetramine-i () (let ((color '(1 0 0))) `((,color ,color ,color ,color)))) @@ -46,7 +48,7 @@ (defun draw-cell (cell) (cond ((null cell) nil) - (t (draw-color cell) (draw-square :size 20)))) + (t (with-color cell (draw-square :size 20))))) (defun draw-row (row) (mapcar (lambda (cell) (draw-cell cell) (translate 23 0)) row)) @@ -97,11 +99,16 @@ (t (fill (cons (make-list 14) grid) (- n 1)))))) (fill res (- 20 (length res)))))) +(let ((points 0)) + (defun get-points () + points)) + (let ((tetramine (random-tetramine)) (x 6) (y 0) (next (random-tetramine)) (timer (make-timer)) - (grid (make-list 20 :initial-element (make-list 14))) ;320x460 - (background (draw-image-function "fondo_tetris.png"))) + (grid (make-list 20 :initial-element (make-list 14))) + (background (draw-image-function "fondo_tetris.png")) + (font (load-font "lazy.ttf" :size 20))) (defun tetramine () (cond ((eq (timer-state timer) 'stopped) (start-timer timer))) @@ -126,11 +133,17 @@ (setq tetramine next x 6 y 0) (setq next (random-tetramine))) (t (incf y) (start-timer timer))))) - (funcall background) (translate -288 218) (draw-grid (join-grids tetramine grid x y)) (translate 440 440) - (draw-grid next))) - -(run-game "Gacela Tetris" (tetramine)) + (draw-grid next) + (render-text "Hola" font))) + +(let ((frame 0.0) (fps (make-timer)) (update (make-timer))) + (start-timer update) + (start-timer fps) + (run-game "Gacela Tetris" + (tetramine) + (incf frame) + (cond ((> (get-time update) 1000) (print (/ frame (/ (get-time fps) 1000.0))) (start-timer update)))))