X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=gacela_mobs.lisp;h=79a8be2b98e1a3340ea2722254e0fd143e550249;hb=edd70b0d0e5f54a346fcf6850ab6e10335ac6751;hp=558a1b686c7b79e4d59d776442ccbe2189389349;hpb=678a1561ca858c34fecf04792831caf68559c2ac;p=gacela.git diff --git a/gacela_mobs.lisp b/gacela_mobs.lisp index 558a1b6..79a8be2 100755 --- a/gacela_mobs.lisp +++ b/gacela_mobs.lisp @@ -15,19 +15,23 @@ ;;; along with this program. If not, see . +;;; World of Mob + (in-package :gacela) -;;; World of Mob +(defmacro makemob (name variables &rest methods) + `(lambda , + (defmacro defmob (name variables &key init logic render) `(let ((make-name ',(intern (concatenate 'string "MAKE-" (string name))))) (setf (symbol-function make-name) (makemob ,variables :init ,init :logic ,logic :render ,render)) make-name)) -(defmacro makemob (variables &key init logic render) - `(lambda - ,(if (null variables) () (cons '&key variables)) - (mob-structure ,variables ,init ,logic ,render))) +;(defmacro makemob (variables &key init logic render) +; `(lambda +; ,(if (null variables) () (cons '&key variables)) +; (mob-structure ,variables ,init ,logic ,render))) (defmacro mob-structure (variables init logic render) `(list