diff options
Diffstat (limited to 'characters/lorenzo.scm')
-rw-r--r-- | characters/lorenzo.scm | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/characters/lorenzo.scm b/characters/lorenzo.scm new file mode 100644 index 0000000..237ce6a --- /dev/null +++ b/characters/lorenzo.scm @@ -0,0 +1,50 @@ +;;; The Inevitable Game +;;; Copyright © 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net> +;;; +;;; This program is free software: you can redistribute it and/or +;;; modify it under the terms of the GNU General Public License as +;;; published by the Free Software Foundation, either version 3 of the +;;; License, or (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;;; General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see +;;; <http://www.gnu.org/licenses/>. + +(define-module (characters lorenzo) + #:use-module (chickadee graphics texture) + #:use-module (chickadee graphics color) + #:use-module (chickadee math rect) + #:use-module (chickadee math vector) + #:use-module (engine assets) + #:use-module (utils) + #:use-module (oop goops) + #:export (lorenzo)) + +(define-asset player-atlas + (load-tileset "assets/images/lorenzo.png" 32 32)) + +(define* (lorenzo #:key + (start-position (vec2 0 0)) + (dead? #f)) + (make <character> + #:name 'lorenzo + #:position start-position + #:atlas player-atlas + #:tint (if dead? + (make-color 1.0 1.0 1.0 0.0) + (make-color 1.0 1.0 1.0 1.0)) + #:animations '((idle-right . #(24 24 24 24 24 39 39 39 39 39)) + (idle-left . #(32 32 32 32 32 31 31 31 31 31)) + (idle-front . #(8 8 8 8 8 0 0 0 0 0)) + (idle-back . #(16)) + (left . #(33 3 34 3)) + (right . #(25 2 26 2)) + (up . #(17 16 18 16)) + (down . #(9 8 10 8))) + #:current-animation 'idle-front + #:frame-duration 130)) |