aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
authorTeravus Ovares2007-12-27 03:25:00 +0000
committerTeravus Ovares2007-12-27 03:25:00 +0000
commit87d55443d3fd3cc86dce0b8efe05a8c304f7d6c8 (patch)
tree69599226423b5a4620ab4308b3e0088328894bde /OpenSim/Region/ScriptEngine
parentPrim inventory persistence phase 1: Creation of preliminary table in sqlite. (diff)
downloadopensim-SC_OLD-87d55443d3fd3cc86dce0b8efe05a8c304f7d6c8.zip
opensim-SC_OLD-87d55443d3fd3cc86dce0b8efe05a8c304f7d6c8.tar.gz
opensim-SC_OLD-87d55443d3fd3cc86dce0b8efe05a8c304f7d6c8.tar.bz2
opensim-SC_OLD-87d55443d3fd3cc86dce0b8efe05a8c304f7d6c8.tar.xz
* Added slightly better object sit handling
* Added sit handling for sit targets * Implemented llSitTarget() * Implemented llAvatarOnSitTarget() * Sit targets do not persist sim restart.
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r--OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs14
1 files changed, 11 insertions, 3 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
index eeecd21..fb521df 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
@@ -2162,13 +2162,21 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler
2162 2162
2163 public void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot) 2163 public void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot)
2164 { 2164 {
2165 NotImplemented("llSitTarget"); 2165 // LSL quaternions can normalize to 0, normal Quaternions can't.
2166 if (rot.s == 0 && rot.x == 0 && rot.y == 0 && rot.z == 0)
2167 rot.z = 1; // ZERO_ROTATION = 0,0,0,1
2168
2169 m_host.SetSitTarget(new Vector3((float)offset.x, (float)offset.y, (float)offset.z), new Quaternion((float)rot.s, (float)rot.x, (float)rot.y, (float)rot.z));
2166 } 2170 }
2167 2171
2168 public string llAvatarOnSitTarget() 2172 public string llAvatarOnSitTarget()
2169 { 2173 {
2170 NotImplemented("llAvatarOnSitTarget"); 2174 LLUUID AVID = m_host.GetAvatarOnSitTarget();
2171 return ""; 2175
2176 if (AVID != LLUUID.Zero)
2177 return AVID.ToString();
2178 else
2179 return "";
2172 } 2180 }
2173 2181
2174 public void llAddToLandPassList(string avatar, double hours) 2182 public void llAddToLandPassList(string avatar, double hours)