diff --git a/TODO b/TODO index 9a5f63d..35e8137 100644 --- a/TODO +++ b/TODO @@ -33,6 +33,8 @@ sb-impl::n" -> NON-SEVERE + +* response to prolonged keypresses is sluggish * Lakes are created -> still an issue? diff --git a/TODO b/TODO index 9a5f63d..35e8137 100644 --- a/TODO +++ b/TODO @@ -33,6 +33,8 @@ sb-impl::n" -> NON-SEVERE + +* response to prolonged keypresses is sluggish * Lakes are created -> still an issue? diff --git a/server/item-methods.lisp b/server/item-methods.lisp index 997e983..c1260e4 100644 --- a/server/item-methods.lisp +++ b/server/item-methods.lisp @@ -13,7 +13,7 @@ (defmethod move ((a animal) dir) (let* ((here (coord (.x a) (.y a))) (target (coordsindir (.x a) (.y a) dir)) - (target-patch (coord target))) + (target-patch (coord (first target) (second target)))) (cond ((null target-patch) (logf 3 "~S is attempting to move out of bounds ~S" a target)) ((patch-occupant target-patch) diff --git a/TODO b/TODO index 9a5f63d..35e8137 100644 --- a/TODO +++ b/TODO @@ -33,6 +33,8 @@ sb-impl::n" -> NON-SEVERE + +* response to prolonged keypresses is sluggish * Lakes are created -> still an issue? diff --git a/server/item-methods.lisp b/server/item-methods.lisp index 997e983..c1260e4 100644 --- a/server/item-methods.lisp +++ b/server/item-methods.lisp @@ -13,7 +13,7 @@ (defmethod move ((a animal) dir) (let* ((here (coord (.x a) (.y a))) (target (coordsindir (.x a) (.y a) dir)) - (target-patch (coord target))) + (target-patch (coord (first target) (second target)))) (cond ((null target-patch) (logf 3 "~S is attempting to move out of bounds ~S" a target)) ((patch-occupant target-patch) diff --git a/server/server.lisp b/server/server.lisp index 328afd2..fef7304 100644 --- a/server/server.lisp +++ b/server/server.lisp @@ -290,6 +290,7 @@ (defun move-player (dir) "Move a player in the given direction" (let ((plr (player-human (get-player (thread-player))))) + ;;TODO If path is blocked, show a message ;;TODO replace cond with read-from-string? (cond ((equalp dir "n") (move plr 'n)) ((equalp dir "ne") (move plr 'ne)) @@ -299,7 +300,7 @@ ((equalp dir "sw") (move plr 'sw)) ((equalp dir "w") (move plr 'w)) ((equalp dir "nw") (move plr 'nw)) - (T "ERROR: Invalid move direction ~S" dir)))) + (T (format NIL "ERROR: Invalid move direction ~S" dir))))) (defparameter *API* ;; An alist of API commands and their corresponding functions