Why aren\'t exits matched for $commands?

Submitted by javelin on Sun, 2012-02-12 22:22

Why aren\'t exits matched for $commands?

For largely historical reasons, exits are considered to have their \'home\' in the room in which they originate, but their \'location\' is their destination room. So while it wouldn\'t be hard to have $command checking performed on all exits in the player\'s location, when the exit ran the command, it would do so as if it were located in the destination room, rather than where the player is.

There used to be some sense to this; the current structure for objects in the db tries to be highly memory-efficient by overloading fields like \'location\', and back in the day of low RAM, that was a good thing. Nowadays, it\'s less sensible, and this may change one day if the database internals are rewritten.

2001-Mar-28 1:58pm dunemush