userTrigger derived from ygSpace Example Source Header

Description: a space that generates events in the presence of a user head

notes:
Category: Trigger
Author: Alex Hill
Revision: 05/10/02

    Messages
local [bool] set position reporting mode
    Events
enter user a user has entered the space
inside user, xpos, ypos, zpos a user is inside the space
exit user a user has exited the space
empty all users have exited the space
firstenter user a user has entered a previously empty space
    Debugs
inside
    Comments

constructor userTrigger

destructor ~userTrigger

method reset

1 clear set of users previously inside
2 set reporting mode to local

method message

1 set position reporting mode

method app

1 for each user in the world
1.1 if user has a head then
1.1.1 if head is within the space then
1.1.1.1 add to set of users inside
1.1.1.2 if inside but not previously then generate enter event
1.1.1.2.1 a user has entered the space
1.1.1.3 a user is inside the space
2 for each user previously inside
2.1 if not currently inside then generate exit event
2.1.1 a user has exited the space
3 if not previously empty and now empty generate empty event
3.1 all users have exited the space
4 if previously empty and now not empty generate firstenter event
4.1 a user has entered a previously empty space