use ci-member, allow specifying why not to being taken / put down
[mudsync.git] / mudsync / command.scm
index 6314c70fbcdc88e162b55af1c62d0e9373989aab..c8cf3624e3b24c5d9e63d5401551cd1b70e0b2b4 100644 (file)
@@ -18,6 +18,7 @@
 
 (define-module (mudsync command)
   #:use-module (mudsync parser)
+  #:use-module (mudsync utils)
   #:use-module (8sync actors)
   #:use-module (8sync rmeta-slot)
   #:use-module (srfi srfi-1)
                 ;; @@: Should we allow fancier matching than this?
                 ;;   Let the actor itself pass along this whole method?
                 (lambda* (goes-by #:key direct-obj)
-                  (member direct-obj goes-by))
+                  (ci-member direct-obj goes-by))
                 action
                 %default-priority
                 obvious?))
                 (lambda* (goes-by #:key direct-obj indir-obj preposition)
                   (if prepositions
                       (and
-                       (member indir-obj goes-by)
-                       (member preposition prepositions))
-                      (member indir-obj goes-by)))
+                       (ci-member indir-obj goes-by)
+                       (ci-member preposition prepositions))
+                      (ci-member indir-obj goes-by)))
                 action
                 %high-priority
                 obvious?))
                 (lambda* (goes-by #:key direct-obj indir-obj preposition)
                   (if prepositions
                       (and
-                       (member  direct-obj goes-by)
-                       (member preposition prepositions))
-                      (member direct-obj goes-by)))
+                       (ci-member  direct-obj goes-by)
+                       (ci-member preposition prepositions))
+                      (ci-member direct-obj goes-by)))
                 action
                 %high-priority
                 obvious?))
   (make-command verbs
                 cmatch-direct-obj-greedy
                 (lambda* (goes-by #:key direct-obj rest)
-                  (member direct-obj goes-by))
+                  (ci-member direct-obj goes-by))
                 action
                 %low-priority
                 obvious?))