I've been looking over the code (nice recursive function!
), and it looks straightforward. But I was wondering if it could be generalized a bit (conceptually at first, coding later) to cover more cases.
It seems we want to be able to include objects that we can see but not reach, and also be able to share them in multiple places. In my own story, I was coming up with places where I wanted to be able to have such objects, but I don't know if they'd be considered "environment." For example:
1) You are on an elevator. When you get to the fourth floor, the doors open, and you can see the foyer. There are objects there (e.g. "look foyer"). If you exit the elevator at that point, you can reach the objects. However, when you're on the elevator, you can see but not reach them. But you'd like them to be the same objects, especially if they may come and go (so you don't have to duplicate everything).
2) You are in a kitchen and there is a window. Through the window you can see a sunflower plant. If you go outside, you want to see the same sunflower plant (but now be able to reach it).
3) You enter a fancy conservatory, with a broad clear skylight. Through it, you can see the sky, the sun, the twin moons of Calera, etc. That's environment, but you're not technically outside.
All of these seem to have a common thread - being able to see into another room or to a "place" that is outside or larger than the room you're in.
I don't have a definitive strategy for this yet, but I wanted to throw it out there in case either it works with what you have in mind or if what you have in mind could be expanded to cover that. (And just spurring ideas is fun.
) I am a newbie to Quest, so perhaps there are other ways to do what I'm talking about that aren't even related to this.
Update: another thought... it would be cool (to follow your example) that if you opened the window in the kitchen, you'd be able to smell the sunflower or the crisp afternoon air. But if the window were closed, you could not.