diff options
author | Charles Krinke | 2007-12-17 02:30:03 +0000 |
---|---|---|
committer | Charles Krinke | 2007-12-17 02:30:03 +0000 |
commit | 8e8c26acac73cc50d43976fe58ba8fcdaa4afe33 (patch) | |
tree | c7b4edece68b2c1549e665f7e27936279afb531f /OpenSim/Region/ScriptEngine/DotNetEngine | |
parent | The "Got a packet from an invalid client" has served its purpose (diff) | |
download | opensim-SC_OLD-8e8c26acac73cc50d43976fe58ba8fcdaa4afe33.zip opensim-SC_OLD-8e8c26acac73cc50d43976fe58ba8fcdaa4afe33.tar.gz opensim-SC_OLD-8e8c26acac73cc50d43976fe58ba8fcdaa4afe33.tar.bz2 opensim-SC_OLD-8e8c26acac73cc50d43976fe58ba8fcdaa4afe33.tar.xz |
Again, thanks to Alondria for:
Added: LinkNum to SceneObjectPart
Added: Bunch-o settings of LinkNum in SceneObjectGroup
Added: llGetNumberOfPrims()
Added: llGetLinkNumber()
Added: llGetLinkKey()
Added: llGetLinkName() (and change to string return type)
Diffstat (limited to 'OpenSim/Region/ScriptEngine/DotNetEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs | 35 |
2 files changed, 29 insertions, 12 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs index 99f8d3b..d669c15 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs | |||
@@ -860,9 +860,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
860 | return m_LSL_Functions.llGetLinkKey(linknum); | 860 | return m_LSL_Functions.llGetLinkKey(linknum); |
861 | } | 861 | } |
862 | 862 | ||
863 | public void llGetLinkName(int linknum) | 863 | public string llGetLinkName(int linknum) |
864 | { | 864 | { |
865 | m_LSL_Functions.llGetLinkName(linknum); | 865 | return m_LSL_Functions.llGetLinkName(linknum); |
866 | } | 866 | } |
867 | 867 | ||
868 | public int llGetInventoryNumber(int type) | 868 | public int llGetInventoryNumber(int type) |
@@ -2122,4 +2122,4 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
2122 | public vector ZERO_VECTOR = new vector(0, 0, 0); | 2122 | public vector ZERO_VECTOR = new vector(0, 0, 0); |
2123 | public rotation ZERO_ROTATION = new rotation(0, 0, 0, 0); | 2123 | public rotation ZERO_ROTATION = new rotation(0, 0, 0, 0); |
2124 | } | 2124 | } |
2125 | } \ No newline at end of file | 2125 | } |
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 00e79c0..61c4b10 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 | |||
@@ -1128,7 +1128,11 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | |||
1128 | 1128 | ||
1129 | public void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain) | 1129 | public void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain) |
1130 | { | 1130 | { |
1131 | NotImplemented("llTargetOmega"); | 1131 | m_host.RotationalVelocity = new LLVector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); |
1132 | m_host.AngularVelocity = new LLVector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); | ||
1133 | m_host.ScheduleTerseUpdate(); | ||
1134 | m_host.SendTerseUpdateToAllClients(); | ||
1135 | //NotImplemented("llTargetOmega"); | ||
1132 | } | 1136 | } |
1133 | 1137 | ||
1134 | public int llGetStartParameter() | 1138 | public int llGetStartParameter() |
@@ -1161,8 +1165,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | |||
1161 | 1165 | ||
1162 | public int llGetLinkNumber() | 1166 | public int llGetLinkNumber() |
1163 | { | 1167 | { |
1164 | NotImplemented("llGetLinkNumber"); | 1168 | return m_host.LinkNum; |
1165 | return 0; | ||
1166 | } | 1169 | } |
1167 | 1170 | ||
1168 | public void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face) | 1171 | public void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face) |
@@ -1187,13 +1190,28 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | |||
1187 | 1190 | ||
1188 | public string llGetLinkKey(int linknum) | 1191 | public string llGetLinkKey(int linknum) |
1189 | { | 1192 | { |
1190 | NotImplemented("llGetLinkKey"); | 1193 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
1191 | return ""; | 1194 | if (part != null) |
1195 | { | ||
1196 | return part.UUID.ToStringHyphenated(); | ||
1197 | } | ||
1198 | else | ||
1199 | { | ||
1200 | return "00000000-0000-0000-0000-000000000000"; | ||
1201 | } | ||
1192 | } | 1202 | } |
1193 | 1203 | ||
1194 | public void llGetLinkName(int linknum) | 1204 | public string llGetLinkName(int linknum) |
1195 | { | 1205 | { |
1196 | NotImplemented("llGetLinkName"); | 1206 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
1207 | if (part != null) | ||
1208 | { | ||
1209 | return part.Name; | ||
1210 | } | ||
1211 | else | ||
1212 | { | ||
1213 | return "00000000-0000-0000-0000-000000000000"; | ||
1214 | } | ||
1197 | } | 1215 | } |
1198 | 1216 | ||
1199 | public int llGetInventoryNumber(int type) | 1217 | public int llGetInventoryNumber(int type) |
@@ -2194,8 +2212,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | |||
2194 | 2212 | ||
2195 | public int llGetNumberOfPrims() | 2213 | public int llGetNumberOfPrims() |
2196 | { | 2214 | { |
2197 | NotImplemented("llGetNumberOfPrims"); | 2215 | return m_host.ParentGroup.PrimCount; |
2198 | return 0; | ||
2199 | } | 2216 | } |
2200 | 2217 | ||
2201 | public string llGetNumberOfNotecardLines(string name) | 2218 | public string llGetNumberOfNotecardLines(string name) |