There is clearly an accessor for alignment, which I will pretend is simply getAlignment().
How I know this: you are able to see alignments of things. As an example, consider looking at a room full of people (perhaps during an Inn event).
When you look around the room, there might be some loop:
for each person in room
display brief description of person
Somewhere in the
display brief description of person code, getAlignment() is called. getAlignment() is used to determine which aura to output in the brief description. Does this sound reasonable? I think it is not far off from what is actually happening.
So, let's talk about a trap. I'm going to make the assumption that traps are designated via the room building code (a specific language for rooms in MUDs, I believe), which is separate from any code that deals with players or damage to players or anything not related to building rooms (which I will just call the "engine"). If the results of getAlignment() cannot be passed to the room, or the language implementing rooms is not capable of anything other than building the environment (i.e., no logic), then the engine could run a check of the room name and getAlignment() to determine whether or not damage is dealt to a player. If the results of getAlignment() can be passed to the room and the room is capable of performing logic with those results, then the room will handle determining whether or not damage is dealt (I'm guessing the former case is more likely).
Of course, I'm sure the code is far more complex than what I've suggested. Still, I'm sure the above scenario at least represents ways that aura-based traps could be implemented at a high level.
pls respond