diff options
author | Dr Scofield | 2009-01-13 08:15:43 +0000 |
---|---|---|
committer | Dr Scofield | 2009-01-13 08:15:43 +0000 |
commit | 9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a (patch) | |
tree | 233c1d3418fd9be2f44174806b55c9afc50775fb /OpenSim/Region/ScriptEngine/Shared/Api | |
parent | * Extend current stub packet handler test into a really basic one that checks... (diff) | |
download | opensim-SC_OLD-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.zip opensim-SC_OLD-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.gz opensim-SC_OLD-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.bz2 opensim-SC_OLD-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.xz |
From: Christopher Yeoh <yeohc@au1.ibm.com>
The attached patch adds the automatic granting of PERMISSION_CONTROL_CAMERA
on request to a script when an avatar is sitting on the object that the script
resides in.
It also automatically removes PERMISSION_TAKE_CONTROLS and PERMISSION_CONTROL_CAMERA
from the scripts when an avatar stands up. It doesn't remove the other automatically
granted permissions but this follows LL server behavior. Removing these two
permissions avoids some potential race conditions (accidentally taking
control after the avatar has stood up) which may be why LL put
them in the first place.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 34a3a26..393e708 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -2958,7 +2958,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2958 | // When agent is sitting, certain permissions are implicit if requested from sitting agent | 2958 | // When agent is sitting, certain permissions are implicit if requested from sitting agent |
2959 | int implicitPerms = ScriptBaseClass.PERMISSION_TRIGGER_ANIMATION | | 2959 | int implicitPerms = ScriptBaseClass.PERMISSION_TRIGGER_ANIMATION | |
2960 | ScriptBaseClass.PERMISSION_CONTROL_CAMERA | | 2960 | ScriptBaseClass.PERMISSION_CONTROL_CAMERA | |
2961 | ScriptBaseClass.PERMISSION_TRACK_CAMERA; | 2961 | ScriptBaseClass.PERMISSION_TRACK_CAMERA | |
2962 | ScriptBaseClass.PERMISSION_TAKE_CONTROLS; | ||
2962 | 2963 | ||
2963 | if ((perm & (~implicitPerms)) == 0) // Requested only implicit perms | 2964 | if ((perm & (~implicitPerms)) == 0) // Requested only implicit perms |
2964 | { | 2965 | { |