aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/DotNetEngine
diff options
context:
space:
mode:
authorCharles Krinke2007-12-17 02:30:03 +0000
committerCharles Krinke2007-12-17 02:30:03 +0000
commit8e8c26acac73cc50d43976fe58ba8fcdaa4afe33 (patch)
treec7b4edece68b2c1549e665f7e27936279afb531f /OpenSim/Region/ScriptEngine/DotNetEngine
parentThe "Got a packet from an invalid client" has served its purpose (diff)
downloadopensim-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.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs35
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)