Give your car location an `add_to_scope' property (see the Inform
Library history, item 14. For example:
Object Car "car"
with ...,
add_to_scope [;
ScopeWithin(real_car_location);
],
before [;
if (self hasnt open && action ~= ##Examine) {
if (MaxBox(noun) == real_car_location ||
MaxBox(noun) == real_car_location)
"You can't reach that, because the window is shut.";
}
];
[ MaxBox o;
do {
o = parent(o)
} until (o == 0 || parent(o) == 0 || (o ~= player &&
o hasnt transparent && o hasnt supporter && o hasnt open));
return o;
];
-- Gareth Rees