This doesn't work (in 8-bit mode) yet, but I'll work on mapping is_within_direct {}.
start_at = lake locations { forest : location "You are in a forest." ; lake : location "You are by a lake" ; } objects { lamp : object "a lamp" at = "forest" ; } connections { from, direction, to = [ forest, south, lake, ] } on_tick { : if (is_within_direct { outer -> ( "forest" ) inner -> ( "lamp" ) }) { : print "The lamp is in the forest (directly)." ; } : else { : print "The lamp is NOT in the forest (directly)." ; } }