aboutsummaryrefslogtreecommitdiffhomepage
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/02-moving-bitmp.lisp22
1 files changed, 15 insertions, 7 deletions
diff --git a/examples/02-moving-bitmp.lisp b/examples/02-moving-bitmp.lisp
index e7faeac..425457b 100644
--- a/examples/02-moving-bitmp.lisp
+++ b/examples/02-moving-bitmp.lisp
@@ -9,21 +9,26 @@
(defclass bitmap-display (ww::application ) ())
(ww::defhandler move-thing
- (ww::on-keydown (target code mods)
+ (ww::on-keydown (unit code mods)
(case code
- (:scancode-left (decf (ww::unit-x target) (ww::unit-width target)))
- (:scancode-right (incf (ww::unit-x target) (ww::unit-width target)))
- (:scancode-down (decf (ww::unit-y target) (ww::unit-height target)))
- (:scancode-up (incf (ww::unit-y target) (ww::unit-height target)))
+ (:scancode-left (decf (ww::unit-x unit) (ww::unit-width unit)))
+ (:scancode-right (incf (ww::unit-x unit) (ww::unit-width unit)))
+ (:scancode-down (decf (ww::unit-y unit) (ww::unit-height unit)))
+ (:scancode-up (incf (ww::unit-y unit) (ww::unit-height unit)))
(:scancode-equals
- (print mods)))))
+ (when (or (member :lshift mods) (member :rshift mods))
+ (incf (ww::unit-height unit) 20.0)
+ (incf (ww::unit-width unit) 20.0)))
+ (:scancode-minus
+ (decf (ww::unit-height unit) 20.0)
+ (decf (ww::unit-width unit) 20.0)))))
(defmethod ww::boot ((app bitmap-display))
(let ((bm
(make-instance 'ww::bitmap
:texture (ww::get-asset "Fezghoul.png"))))
(ww::refocus-on bm)
- (ww::set-handler bm *move-thing*)
+ (ww::set-handler bm #'move-thing)
(ww::add-unit app bm)))
@@ -31,3 +36,6 @@
(ww::start (make-instance 'bitmap-display
:scale 3.0
:asset-root #P"~/projects/wheelwork/examples/")))
+
+
+(start)