Section - Following
Following is an action applying to one thing. Understand "follow [any seen thing]" or "approach [any seen thing]" or "go to/towards/after [any seen thing]" or "go [any seen thing]" or "walk to/towards/after [any seen thing]" or "move to/towards [any seen thing]" as following.
Check following:
if noun is off-stage and noun is distant-progue, try following Progue instead;
if noun is off-stage, say "[as the parser]You can't approach or follow that noun, either because it's not important, no longer relevant, or I misunderstood the noun.[as normal]" instead;
if noun is a heavenly body, say "Would that you could." instead;
if noun is distant-rayfish and location is not Ocean Waters:
let way be the best route from location to Ocean Waters;
if way is a direction:
try going way instead;
else:
say "[cantfollowmsg]" instead;
if noun is not a backdrop and noun is enclosed by location, say "But [the noun] [is-are of noun] right here." instead;
if noun is an adjacent room, head to noun instead;
[ if noun is a landmarked room, try wordgoing noun instead;]
if noun is a view and the base room of noun is not Unroom:
if base room of noun is location, say "You're already there." instead;
let way be the best route from location to base room of noun;
if way is a direction:
unless the room way from location is base room of noun, say "(moving one area towards that destination)[command clarification break]";
try going way instead;
else:
say "[cantfollowmsg]" instead;
if noun is old path:
if location is South Beach:
try going southeast instead;
if location is Sloping Meadow:
try going west instead;
if location is Big Tree:
try going north instead;
try requesting the exits text instead;
if noun is bridge:
if location is Volcano Floor, try going northwest instead;
if location is Sloping Meadow, try going east instead;
if location is Rockslide, try going southwest instead;
if location is Jumble, try going southeast instead;
if ( location is regionally in Homeworld and noun is not regionally in Homeworld ) or ( location is regionally in Lacuna and noun is not regionally in Lacuna ) or ( location is regionally in Rebelworld and noun is not regionally in Rebelworld ) or ( location is regionally in Treeworld and noun is not regionally in Treeworld ) or ( location is regionally in Dreamlands and noun is not regionally in Dreamlands ) , say "You wish you knew how to get there from here." instead;
if noun is a person and noun is enclosed by location:
say "[The noun] [is-are] still here." instead;
if noun is a person and location of noun is adjacent to location:
head to location of noun;
do nothing instead;
[ let way be the best route from location to location of noun;
if way is a direction, try going way instead;
else say "[cantfollowmsg]" instead;]
if noun is a room:
let way be the best route from location to noun;
if way is a direction:
unless the room way from location is location of noun:
say "(moving one area towards that destination)[command clarification break]";
try going way instead;
else:
say "[cantfollowmsg]" instead;
if noun is off-stage:
say "[cantfollowmsg]" instead;
let way be the best route from location to location of noun;
if way is a direction:
unless the room way from location is location of noun:
say "(moving one area towards that destination)[command clarification break]";
if noun is distant-Progue or noun is Progue, move distant-Progue to the room way from location;
try going way instead;
say "[cantfollowmsg]" instead.
To say cantfollowmsg: say "You'll have to work out how to get there on your own.[actfast]".
[ After deciding the scope of the player while following: repeat with locale running through adjacent rooms begin; place locale in scope; end repeat. ]
The my-reach-inside-rooms rule is listed instead of the can't reach inside rooms rule in the reaching inside rulebook. This is the my-reach-inside-rooms rule: if not following and not remembering, abide by the can't reach inside rooms rule.
Carry out following:
do nothing.