src/entities/food.lisp @ bf74ba7cd2b7
Add menu, dropping
author |
Steve Losh <steve@stevelosh.com> |
date |
Sun, 08 Jan 2017 11:31:17 +0000 |
parents |
f377744f622c |
children |
8fc9b2aad98b |
(in-package :ap.entities)
(defparameter *foods*
(concatenate 'vector
(read-file-into-form "data/vegetables.lisp")
(read-file-into-form "data/meat.lisp")))
(define-entity food (visible coords holdable)
(energy :accessor food/energy :initarg :food/energy))
(defun random-food-energy ()
(random-range 30.0 80.0))
(defun random-food-description ()
(format nil "a ~A of ~A"
(random-elt #("can" "tin" "package"))
(random-elt *foods*)))
(defun make-food (x y)
(create-entity 'food
:coords/x x
:coords/y y
:visible/glyph "%"
:visible/color ap::+black-yellow+
:holdable/description (random-food-description)
:food/energy (random-food-energy)))