Rather then store this on a player, or 3rd party list, why not store it in the room itself?
Each room stores a list of "last tracks" this can be manipulated rather easily depending on the scent power. The information would be as follows:
Player A enters (scent recorded)
Player A leaves (scent recorded in direction)
So the array would be something like this:
{{scent_type, exit_direction, timestamp}, {scent_type....}}
This way you don't have to worry about managing large lists of movements.... and you could cycle these out depending on the duration of the scent.
Also, if a player wants to fool someone by doing something like this:
go e,w,e,w,e,w,e,w,e,w,n
you could have your scent display the two possible directions (in this case east and north):
The faint smell of delicious ham is to the north, and east.
If the player goes east:
The faint smell of delicious ham is to the west (ovbiously you've been duped).
|