Simple Door Script, with three states
This simple door script uses three states — “default”, to set the initial rotation, and “open” and “closed” to switch to that status. Note that the prim for the door needs to have Path Cut Begin at 0.375 and end at 0.875 for this to work.
It’s part of a series of LSL scripts I’m using for give some training courses on LSL
default
{
state_entry()
{
rotInitial = llGetRot();
state closed;
}
}
state closed
{
touch_start(integer total_number)
{
llSetRot(rotInitial * llEuler2Rot(<0, 0, PI_BY_TWO>));
state open;
}
}
state open
{
touch_start(integer total_number)
{
llSetRot(rotInitial);
state closed;
}
}


