diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/places.atl b/ATL/Lugwey/places.atl index c53f82d..045954c 100644 --- a/ATL/Lugwey/places.atl +++ b/ATL/Lugwey/places.atl @@ -65,7 +65,7 @@ the chapel, is where the monastery's abbots lie buried. Generations of clerics resting in their stony graves..." neighbour "Chapel" - requires "night-vision" + requires "Lantern" define-place "Dormitory" description "The dormitory houses the monks' cells. It is a stone house diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/places.atl b/ATL/Lugwey/places.atl index c53f82d..045954c 100644 --- a/ATL/Lugwey/places.atl +++ b/ATL/Lugwey/places.atl @@ -65,7 +65,7 @@ the chapel, is where the monastery's abbots lie buried. Generations of clerics resting in their stony graves..." neighbour "Chapel" - requires "night-vision" + requires "Lantern" define-place "Dormitory" description "The dormitory houses the monks' cells. It is a stone house diff --git a/ATL/Pooh/items.atl b/ATL/Pooh/items.atl index 03e2ed4..1d517e0 100644 --- a/ATL/Pooh/items.atl +++ b/ATL/Pooh/items.atl @@ -37,6 +37,13 @@ " fixed +define-item "Bottle" + description "This is the bottle that Piglet used to call for help when he was + entirely surrounded by water. It still contains his message, + scribbled on two sides of a scrap of paper: + HELP! PIGLET (ME) + IT'S ME PIGLET, HELP HELP." + define-item "North Pole" description " ============================= @@ -79,6 +86,13 @@ description "This is a small, bright red rain jacket. It looks about the right size to fit Roo." +define-item "Extract of Malt" + description "This is a brown bottle full of some syrupy liquid. Roo has to + take it as his strengthening medicine and doesn't like it at all. + Tigger, on the other hand, discovered that this is the only thing + that tiggers like, and so he eats it every day." + command "eat" + define-item "Mushrooms" description "A bowl full of freshly picked mushrooms. I'm sure they'll make good eating once they've been cooked!" diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/places.atl b/ATL/Lugwey/places.atl index c53f82d..045954c 100644 --- a/ATL/Lugwey/places.atl +++ b/ATL/Lugwey/places.atl @@ -65,7 +65,7 @@ the chapel, is where the monastery's abbots lie buried. Generations of clerics resting in their stony graves..." neighbour "Chapel" - requires "night-vision" + requires "Lantern" define-place "Dormitory" description "The dormitory houses the monks' cells. It is a stone house diff --git a/ATL/Pooh/items.atl b/ATL/Pooh/items.atl index 03e2ed4..1d517e0 100644 --- a/ATL/Pooh/items.atl +++ b/ATL/Pooh/items.atl @@ -37,6 +37,13 @@ " fixed +define-item "Bottle" + description "This is the bottle that Piglet used to call for help when he was + entirely surrounded by water. It still contains his message, + scribbled on two sides of a scrap of paper: + HELP! PIGLET (ME) + IT'S ME PIGLET, HELP HELP." + define-item "North Pole" description " ============================= @@ -79,6 +86,13 @@ description "This is a small, bright red rain jacket. It looks about the right size to fit Roo." +define-item "Extract of Malt" + description "This is a brown bottle full of some syrupy liquid. Roo has to + take it as his strengthening medicine and doesn't like it at all. + Tigger, on the other hand, discovered that this is the only thing + that tiggers like, and so he eats it every day." + command "eat" + define-item "Mushrooms" description "A bowl full of freshly picked mushrooms. I'm sure they'll make good eating once they've been cooked!" diff --git a/ATL/Pooh/pooh-extensions.lisp b/ATL/Pooh/pooh-extensions.lisp index a780171..c9e3365 100644 --- a/ATL/Pooh/pooh-extensions.lisp +++ b/ATL/Pooh/pooh-extensions.lisp @@ -27,6 +27,16 @@ (change-player-health player 10) (remove-object-attribute player 'item "Hunny") (set-object-attribute player 'item "Jar")))) + ;; Extract of Malt is very healthy, so obviously it can't be tasty... + ((and (or (equalp arg "extract of malt") (equalp arg "extract") (equalp arg "malt")) + (member "Extract of Malt" (player-item player) :test #'equalp)) + (progn (format t "~&You open the bottle and tip it over a spoon.") (sleep 1) + (format t "~&A big dollop of Extract flows out slowly.") (sleep 3) + (format t "~&The smell of it makes you wrinkle your nose.") (sleep 2) + (format t "~&Without thinking much longer, you shove it into your mouth.") (sleep 1) + (format t "~&That's bitter! You scrunch up your face and try to swallow.") (sleep 3) + (format t "~&Something that disgusting can only be healthy. +1 HP") + (change-player-health player 1))) (T (format t "~&You can't eat that!")))) (defun jump (player &optional arg) diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/places.atl b/ATL/Lugwey/places.atl index c53f82d..045954c 100644 --- a/ATL/Lugwey/places.atl +++ b/ATL/Lugwey/places.atl @@ -65,7 +65,7 @@ the chapel, is where the monastery's abbots lie buried. Generations of clerics resting in their stony graves..." neighbour "Chapel" - requires "night-vision" + requires "Lantern" define-place "Dormitory" description "The dormitory houses the monks' cells. It is a stone house diff --git a/ATL/Pooh/items.atl b/ATL/Pooh/items.atl index 03e2ed4..1d517e0 100644 --- a/ATL/Pooh/items.atl +++ b/ATL/Pooh/items.atl @@ -37,6 +37,13 @@ " fixed +define-item "Bottle" + description "This is the bottle that Piglet used to call for help when he was + entirely surrounded by water. It still contains his message, + scribbled on two sides of a scrap of paper: + HELP! PIGLET (ME) + IT'S ME PIGLET, HELP HELP." + define-item "North Pole" description " ============================= @@ -79,6 +86,13 @@ description "This is a small, bright red rain jacket. It looks about the right size to fit Roo." +define-item "Extract of Malt" + description "This is a brown bottle full of some syrupy liquid. Roo has to + take it as his strengthening medicine and doesn't like it at all. + Tigger, on the other hand, discovered that this is the only thing + that tiggers like, and so he eats it every day." + command "eat" + define-item "Mushrooms" description "A bowl full of freshly picked mushrooms. I'm sure they'll make good eating once they've been cooked!" diff --git a/ATL/Pooh/pooh-extensions.lisp b/ATL/Pooh/pooh-extensions.lisp index a780171..c9e3365 100644 --- a/ATL/Pooh/pooh-extensions.lisp +++ b/ATL/Pooh/pooh-extensions.lisp @@ -27,6 +27,16 @@ (change-player-health player 10) (remove-object-attribute player 'item "Hunny") (set-object-attribute player 'item "Jar")))) + ;; Extract of Malt is very healthy, so obviously it can't be tasty... + ((and (or (equalp arg "extract of malt") (equalp arg "extract") (equalp arg "malt")) + (member "Extract of Malt" (player-item player) :test #'equalp)) + (progn (format t "~&You open the bottle and tip it over a spoon.") (sleep 1) + (format t "~&A big dollop of Extract flows out slowly.") (sleep 3) + (format t "~&The smell of it makes you wrinkle your nose.") (sleep 2) + (format t "~&Without thinking much longer, you shove it into your mouth.") (sleep 1) + (format t "~&That's bitter! You scrunch up your face and try to swallow.") (sleep 3) + (format t "~&Something that disgusting can only be healthy. +1 HP") + (change-player-health player 1))) (T (format t "~&You can't eat that!")))) (defun jump (player &optional arg) diff --git a/ATL/Pooh/woods.atl b/ATL/Pooh/woods.atl index 67e8c6b..a8d5840 100644 --- a/ATL/Pooh/woods.atl +++ b/ATL/Pooh/woods.atl @@ -167,25 +167,36 @@ command "play" define-place "Piglet's porch" - description "TODO" + description "Piglet lives in a very grand house in the middle of a beech tree. + Well, at least it's very grand for a little piglet. But he's happy + here, and that's what counts. He was always quite proud of it - + and especially proud of the sign he had inherited from his grandfather." neighbour "Western woods" neighbour "Southern woods" neighbour "Piglet's home" item "Piglet's sign" define-place "Piglet's home" - description "TODO" + description "Inside, Piglet has a very comfy home. It has two storeys, a lower + one and an upper one - the latter being especially useful during + floods or similar dangers." neighbour "Piglet's porch" npc "Piglet" item "Grandfather's cane" + item "Lamp" + item "Bottle" define-place "Kanga's house" - description "TODO" + description "This is where Kanga lives with her son Roo. They caused quite a + stir when they first came to the forest, them being Strangers, + so to speak, but by now everybody loves them. And Kanga is the + dearest Mother in the world. Or at least in the woods..." neighbour "Northern woods" neighbour "Western woods" neighbour "Sandy pit" npc "Kanga" item "Jacket" + item "Extract of Malt" define-place "Sandy pit" description "The sandy pit is just that - a large pit full of sand somewhere diff --git a/ATL/Lugwey/items.atl b/ATL/Lugwey/items.atl index f2bfbd1..865261c 100644 --- a/ATL/Lugwey/items.atl +++ b/ATL/Lugwey/items.atl @@ -46,7 +46,6 @@ define-item "Lantern" description "An oil lantern, the glass casing nearly black with soot." cost 10 - ability "night-vision" define-item "Hoe" description "A wooden hoe, useful for farming." @@ -91,7 +90,6 @@ define-item "Candle" description "A tallow candle, not bright, but sufficient for a bit of light." cost 2 - ability "night-vision" define-monster "Fox" description "A fox watching you out of yellow eyes. He is foaming around the diff --git a/ATL/Lugwey/lugwey.atl b/ATL/Lugwey/lugwey.atl index 3c3819e..a1a09fb 100644 --- a/ATL/Lugwey/lugwey.atl +++ b/ATL/Lugwey/lugwey.atl @@ -13,29 +13,10 @@ load-file "items.atl" load-file "npcs.atl" -define-player "Start" - money 50 - place "Gate" - max-health 50 - health 50 - -define-race "Human" - description "Errare humanum est" - intelligence-bonus 1 - -define-class "Scholar" - description "Dubio ergo corgito, corgito ergo sum" - special-item "Paper" - special-item "Quill" - ;; DEVELOPMENT define-player "Leonardo" - race "Human" - class "Scholar" + description "Leonardo is a young man who is visiting the monastery for the first time." item "Dagger" - weapon "Dagger" money 60 place "Chapel" item "Lantern" - ability "memory" - ability "deduction" diff --git a/ATL/Lugwey/places.atl b/ATL/Lugwey/places.atl index c53f82d..045954c 100644 --- a/ATL/Lugwey/places.atl +++ b/ATL/Lugwey/places.atl @@ -65,7 +65,7 @@ the chapel, is where the monastery's abbots lie buried. Generations of clerics resting in their stony graves..." neighbour "Chapel" - requires "night-vision" + requires "Lantern" define-place "Dormitory" description "The dormitory houses the monks' cells. It is a stone house diff --git a/ATL/Pooh/items.atl b/ATL/Pooh/items.atl index 03e2ed4..1d517e0 100644 --- a/ATL/Pooh/items.atl +++ b/ATL/Pooh/items.atl @@ -37,6 +37,13 @@ " fixed +define-item "Bottle" + description "This is the bottle that Piglet used to call for help when he was + entirely surrounded by water. It still contains his message, + scribbled on two sides of a scrap of paper: + HELP! PIGLET (ME) + IT'S ME PIGLET, HELP HELP." + define-item "North Pole" description " ============================= @@ -79,6 +86,13 @@ description "This is a small, bright red rain jacket. It looks about the right size to fit Roo." +define-item "Extract of Malt" + description "This is a brown bottle full of some syrupy liquid. Roo has to + take it as his strengthening medicine and doesn't like it at all. + Tigger, on the other hand, discovered that this is the only thing + that tiggers like, and so he eats it every day." + command "eat" + define-item "Mushrooms" description "A bowl full of freshly picked mushrooms. I'm sure they'll make good eating once they've been cooked!" diff --git a/ATL/Pooh/pooh-extensions.lisp b/ATL/Pooh/pooh-extensions.lisp index a780171..c9e3365 100644 --- a/ATL/Pooh/pooh-extensions.lisp +++ b/ATL/Pooh/pooh-extensions.lisp @@ -27,6 +27,16 @@ (change-player-health player 10) (remove-object-attribute player 'item "Hunny") (set-object-attribute player 'item "Jar")))) + ;; Extract of Malt is very healthy, so obviously it can't be tasty... + ((and (or (equalp arg "extract of malt") (equalp arg "extract") (equalp arg "malt")) + (member "Extract of Malt" (player-item player) :test #'equalp)) + (progn (format t "~&You open the bottle and tip it over a spoon.") (sleep 1) + (format t "~&A big dollop of Extract flows out slowly.") (sleep 3) + (format t "~&The smell of it makes you wrinkle your nose.") (sleep 2) + (format t "~&Without thinking much longer, you shove it into your mouth.") (sleep 1) + (format t "~&That's bitter! You scrunch up your face and try to swallow.") (sleep 3) + (format t "~&Something that disgusting can only be healthy. +1 HP") + (change-player-health player 1))) (T (format t "~&You can't eat that!")))) (defun jump (player &optional arg) diff --git a/ATL/Pooh/woods.atl b/ATL/Pooh/woods.atl index 67e8c6b..a8d5840 100644 --- a/ATL/Pooh/woods.atl +++ b/ATL/Pooh/woods.atl @@ -167,25 +167,36 @@ command "play" define-place "Piglet's porch" - description "TODO" + description "Piglet lives in a very grand house in the middle of a beech tree. + Well, at least it's very grand for a little piglet. But he's happy + here, and that's what counts. He was always quite proud of it - + and especially proud of the sign he had inherited from his grandfather." neighbour "Western woods" neighbour "Southern woods" neighbour "Piglet's home" item "Piglet's sign" define-place "Piglet's home" - description "TODO" + description "Inside, Piglet has a very comfy home. It has two storeys, a lower + one and an upper one - the latter being especially useful during + floods or similar dangers." neighbour "Piglet's porch" npc "Piglet" item "Grandfather's cane" + item "Lamp" + item "Bottle" define-place "Kanga's house" - description "TODO" + description "This is where Kanga lives with her son Roo. They caused quite a + stir when they first came to the forest, them being Strangers, + so to speak, but by now everybody loves them. And Kanga is the + dearest Mother in the world. Or at least in the woods..." neighbour "Northern woods" neighbour "Western woods" neighbour "Sandy pit" npc "Kanga" item "Jacket" + item "Extract of Malt" define-place "Sandy pit" description "The sandy pit is just that - a large pit full of sand somewhere diff --git a/lisp/ui.lisp b/lisp/ui.lisp index a01903b..85237ee 100644 --- a/lisp/ui.lisp +++ b/lisp/ui.lisp @@ -171,6 +171,8 @@ (unless location (format t "~&This place does not border your current location!") (return-from goto)) + ;; You can only enter a place if you have one of the requirements + ;; FIXME Deal with multiple possible requirements (let ((req (place-requires (get-game-object 'place location)))) (unless (equalp req "") (unless (or (player-has-ability req player) @@ -213,7 +215,7 @@ (setf description (item-description (get-game-object 'item o-name)))) (if description - (format t "~&(~A) ~A" (string-capitalize o-name) description) + (format t "~&(~A) ~A" o-name description) (format t "~&Could not find ~A!" object-name)))) (defun seek (player &optional arg)