diff options
author | Melanie Thielker | 2008-09-23 11:41:34 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-09-23 11:41:34 +0000 |
commit | 44e566260c9da5ff62c448cfdd67063c7a486126 (patch) | |
tree | 64b9c963872c986317132adc5d4fe0978ad25b64 /OpenSim | |
parent | Small fix to eliminate a beauty spot (diff) | |
download | opensim-SC-44e566260c9da5ff62c448cfdd67063c7a486126.zip opensim-SC-44e566260c9da5ff62c448cfdd67063c7a486126.tar.gz opensim-SC-44e566260c9da5ff62c448cfdd67063c7a486126.tar.bz2 opensim-SC-44e566260c9da5ff62c448cfdd67063c7a486126.tar.xz |
Mantis #2243
Thank you, tyre, for a patch that refactors LSL to use a unified set of
method signatures and type names, reorders methods and removes unused
and adds new method stubs.
Diffstat (limited to '')
9 files changed, 3685 insertions, 3873 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/BuiltIn_Commands_BaseClass.cs b/OpenSim/Region/ScriptEngine/Common/BuiltIn_Commands_BaseClass.cs index 528df40..44011de 100644 --- a/OpenSim/Region/ScriptEngine/Common/BuiltIn_Commands_BaseClass.cs +++ b/OpenSim/Region/ScriptEngine/Common/BuiltIn_Commands_BaseClass.cs | |||
@@ -30,10 +30,14 @@ using System.Runtime.Remoting.Lifetime; | |||
30 | using System.Threading; | 30 | using System.Threading; |
31 | using OpenSim.Region.Environment.Interfaces; | 31 | using OpenSim.Region.Environment.Interfaces; |
32 | using OpenSim.Region.ScriptEngine.Common.ScriptEngineBase; | 32 | using OpenSim.Region.ScriptEngine.Common.ScriptEngineBase; |
33 | using integer = System.Int32; | 33 | |
34 | using key = System.String; | 34 | using LSL_Float = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLFloat; |
35 | using vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3; | 35 | using LSL_Integer = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLInteger; |
36 | using rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion; | 36 | using LSL_Key = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; |
37 | using LSL_List = OpenSim.Region.ScriptEngine.Common.LSL_Types.list; | ||
38 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion; | ||
39 | using LSL_String = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; | ||
40 | using LSL_Vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3; | ||
37 | 41 | ||
38 | namespace OpenSim.Region.ScriptEngine.Common | 42 | namespace OpenSim.Region.ScriptEngine.Common |
39 | { | 43 | { |
@@ -160,1400 +164,1389 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
160 | return m_LSL_Functions.GetCommander(name); | 164 | return m_LSL_Functions.GetCommander(name); |
161 | } | 165 | } |
162 | 166 | ||
163 | public double llSin(double f) | 167 | public LSL_Integer llAbs(int i) |
164 | { | 168 | { |
165 | return m_LSL_Functions.llSin(f); | 169 | return m_LSL_Functions.llAbs(i); |
166 | } | 170 | } |
167 | public void osSetRegionWaterHeight(double height) | 171 | |
172 | public LSL_Float llAcos(double val) | ||
168 | { | 173 | { |
169 | m_LSL_Functions.osSetRegionWaterHeight(height); | 174 | return m_LSL_Functions.llAcos(val); |
170 | } | 175 | } |
171 | public double llCos(double f) | 176 | |
177 | public void llAddToLandBanList(string avatar, double hours) | ||
172 | { | 178 | { |
173 | return m_LSL_Functions.llCos(f); | 179 | m_LSL_Functions.llAddToLandBanList(avatar, hours); |
174 | } | 180 | } |
175 | 181 | ||
176 | public double llTan(double f) | 182 | public void llAddToLandPassList(string avatar, double hours) |
177 | { | 183 | { |
178 | return m_LSL_Functions.llTan(f); | 184 | m_LSL_Functions.llAddToLandPassList(avatar, hours); |
179 | } | 185 | } |
180 | 186 | ||
181 | public double llAtan2(double x, double y) | 187 | public void llAdjustSoundVolume(double volume) |
182 | { | 188 | { |
183 | return m_LSL_Functions.llAtan2(x, y); | 189 | m_LSL_Functions.llAdjustSoundVolume(volume); |
184 | } | 190 | } |
185 | 191 | ||
186 | public double llSqrt(double f) | 192 | public void llAllowInventoryDrop(int add) |
187 | { | 193 | { |
188 | return m_LSL_Functions.llSqrt(f); | 194 | m_LSL_Functions.llAllowInventoryDrop(add); |
189 | } | 195 | } |
190 | 196 | ||
191 | public double llPow(double fbase, double fexponent) | 197 | public LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b) |
192 | { | 198 | { |
193 | return m_LSL_Functions.llPow(fbase, fexponent); | 199 | return m_LSL_Functions.llAngleBetween(a, b); |
194 | } | 200 | } |
195 | 201 | ||
196 | public LSL_Types.LSLInteger llAbs(int i) | 202 | public void llApplyImpulse(LSL_Vector force, int local) |
197 | { | 203 | { |
198 | return m_LSL_Functions.llAbs(i); | 204 | m_LSL_Functions.llApplyImpulse(force, local); |
199 | } | 205 | } |
200 | 206 | ||
201 | public double llFabs(double f) | 207 | public void llApplyRotationalImpulse(LSL_Vector force, int local) |
202 | { | 208 | { |
203 | return m_LSL_Functions.llFabs(f); | 209 | m_LSL_Functions.llApplyRotationalImpulse(force, local); |
204 | } | 210 | } |
205 | 211 | ||
206 | public double llFrand(double mag) | 212 | public LSL_Float llAsin(double val) |
207 | { | 213 | { |
208 | return m_LSL_Functions.llFrand(mag); | 214 | return m_LSL_Functions.llAsin(val); |
209 | } | 215 | } |
210 | 216 | ||
211 | public LSL_Types.LSLInteger llFloor(double f) | 217 | public LSL_Float llAtan2(double x, double y) |
212 | { | 218 | { |
213 | return m_LSL_Functions.llFloor(f); | 219 | return m_LSL_Functions.llAtan2(x, y); |
214 | } | 220 | } |
215 | 221 | ||
216 | public LSL_Types.LSLInteger llCeil(double f) | 222 | public void llAttachToAvatar(int attachment) |
217 | { | 223 | { |
218 | return m_LSL_Functions.llCeil(f); | 224 | m_LSL_Functions.llAttachToAvatar(attachment); |
219 | } | 225 | } |
220 | 226 | ||
221 | public LSL_Types.LSLInteger llRound(double f) | 227 | public LSL_Key llAvatarOnSitTarget() |
222 | { | 228 | { |
223 | return m_LSL_Functions.llRound(f); | 229 | return m_LSL_Functions.llAvatarOnSitTarget(); |
224 | } | 230 | } |
225 | 231 | ||
226 | public double llVecMag(vector v) | 232 | public LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up) |
227 | { | 233 | { |
228 | return m_LSL_Functions.llVecMag(v); | 234 | return m_LSL_Functions.llAxes2Rot(fwd, left, up); |
229 | } | 235 | } |
230 | 236 | ||
231 | public vector llVecNorm(vector v) | 237 | public LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle) |
232 | { | 238 | { |
233 | return m_LSL_Functions.llVecNorm(v); | 239 | return m_LSL_Functions.llAxisAngle2Rot(axis, angle); |
234 | } | 240 | } |
235 | 241 | ||
236 | public double llVecDist(vector a, vector b) | 242 | public LSL_Integer llBase64ToInteger(string str) |
237 | { | 243 | { |
238 | return m_LSL_Functions.llVecDist(a, b); | 244 | return m_LSL_Functions.llBase64ToInteger(str); |
239 | } | 245 | } |
240 | 246 | ||
241 | public vector llRot2Euler(rotation r) | 247 | public LSL_String llBase64ToString(string str) |
242 | { | 248 | { |
243 | return m_LSL_Functions.llRot2Euler(r); | 249 | return m_LSL_Functions.llBase64ToString(str); |
244 | } | 250 | } |
245 | 251 | ||
246 | public rotation llEuler2Rot(vector v) | 252 | public void llBreakAllLinks() |
247 | { | 253 | { |
248 | return m_LSL_Functions.llEuler2Rot(v); | 254 | m_LSL_Functions.llBreakAllLinks(); |
249 | } | 255 | } |
250 | 256 | ||
251 | public rotation llAxes2Rot(vector fwd, vector left, vector up) | 257 | public void llBreakLink(int linknum) |
252 | { | 258 | { |
253 | return m_LSL_Functions.llAxes2Rot(fwd, left, up); | 259 | m_LSL_Functions.llBreakLink(linknum); |
254 | } | 260 | } |
255 | 261 | ||
256 | public vector llRot2Fwd(rotation r) | 262 | public LSL_Integer llCeil(double f) |
257 | { | 263 | { |
258 | return m_LSL_Functions.llRot2Fwd(r); | 264 | return m_LSL_Functions.llCeil(f); |
259 | } | 265 | } |
260 | 266 | ||
261 | public vector llRot2Left(rotation r) | 267 | public void llClearCameraParams() |
262 | { | 268 | { |
263 | return m_LSL_Functions.llRot2Left(r); | 269 | m_LSL_Functions.llClearCameraParams(); |
264 | } | 270 | } |
265 | 271 | ||
266 | public vector llRot2Up(rotation r) | 272 | public void llCloseRemoteDataChannel(string channel) |
267 | { | 273 | { |
268 | return m_LSL_Functions.llRot2Up(r); | 274 | m_LSL_Functions.llCloseRemoteDataChannel(channel); |
269 | } | 275 | } |
270 | 276 | ||
271 | public rotation llRotBetween(vector start, vector end) | 277 | public LSL_Float llCloud(LSL_Vector offset) |
272 | { | 278 | { |
273 | return m_LSL_Functions.llRotBetween(start, end); | 279 | return m_LSL_Functions.llCloud(offset); |
274 | } | 280 | } |
275 | 281 | ||
276 | public void llWhisper(int channelID, string text) | 282 | public void llCollisionFilter(string name, string id, int accept) |
277 | { | 283 | { |
278 | m_LSL_Functions.llWhisper(channelID, text); | 284 | m_LSL_Functions.llCollisionFilter(name, id, accept); |
279 | } | 285 | } |
280 | 286 | ||
281 | public void llSay(int channelID, string text) | 287 | public void llCollisionSound(string impact_sound, double impact_volume) |
282 | { | 288 | { |
283 | m_LSL_Functions.llSay(channelID, text); | 289 | m_LSL_Functions.llCollisionSound(impact_sound, impact_volume); |
284 | } | 290 | } |
285 | 291 | ||
286 | // | 292 | public void llCollisionSprite(string impact_sprite) |
287 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
288 | // | ||
289 | public void llShout(int channelID, string text) | ||
290 | { | 293 | { |
291 | m_LSL_Functions.llShout(channelID, text); | 294 | m_LSL_Functions.llCollisionSprite(impact_sprite); |
292 | } | 295 | } |
293 | 296 | ||
294 | public void llOwnerSay(string msg) | 297 | public LSL_Float llCos(double f) |
295 | { | 298 | { |
296 | m_LSL_Functions.llOwnerSay(msg); | 299 | return m_LSL_Functions.llCos(f); |
297 | } | 300 | } |
298 | 301 | ||
299 | public void llRegionSay(int channelID, string text) | 302 | public void llCreateLink(string target, int parent) |
300 | { | 303 | { |
301 | m_LSL_Functions.llRegionSay(channelID, text); | 304 | m_LSL_Functions.llCreateLink(target, parent); |
302 | } | 305 | } |
303 | 306 | ||
304 | public LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg) | 307 | public LSL_List llCSV2List(string src) |
305 | { | 308 | { |
306 | return m_LSL_Functions.llListen(channelID, name, ID, msg); | 309 | return m_LSL_Functions.llCSV2List(src); |
307 | } | 310 | } |
308 | 311 | ||
309 | public void llListenControl(int number, int active) | 312 | public LSL_List llDeleteSubList(LSL_List src, int start, int end) |
310 | { | 313 | { |
311 | m_LSL_Functions.llListenControl(number, active); | 314 | return m_LSL_Functions.llDeleteSubList(src, start, end); |
312 | } | 315 | } |
313 | 316 | ||
314 | public void llListenRemove(int number) | 317 | public LSL_String llDeleteSubString(string src, int start, int end) |
315 | { | 318 | { |
316 | m_LSL_Functions.llListenRemove(number); | 319 | return m_LSL_Functions.llDeleteSubString(src, start, end); |
317 | } | 320 | } |
318 | 321 | ||
319 | public void llSensor(string name, string id, int type, double range, double arc) | 322 | public void llDetachFromAvatar() |
320 | { | 323 | { |
321 | m_LSL_Functions.llSensor(name, id, type, range, arc); | 324 | m_LSL_Functions.llDetachFromAvatar(); |
322 | } | 325 | } |
323 | 326 | ||
324 | public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate) | 327 | public LSL_Vector llDetectedGrab(int number) |
325 | { | 328 | { |
326 | m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate); | 329 | return m_LSL_Functions.llDetectedGrab(number); |
327 | } | 330 | } |
328 | 331 | ||
329 | public void llSensorRemove() | 332 | public LSL_Integer llDetectedGroup(int number) |
330 | { | 333 | { |
331 | m_LSL_Functions.llSensorRemove(); | 334 | return m_LSL_Functions.llDetectedGroup(number); |
332 | } | 335 | } |
333 | 336 | ||
334 | public string llDetectedName(int number) | 337 | public LSL_Key llDetectedKey(int number) |
335 | { | 338 | { |
336 | return m_LSL_Functions.llDetectedName(number); | 339 | return m_LSL_Functions.llDetectedKey(number); |
337 | } | 340 | } |
338 | 341 | ||
339 | public string llDetectedKey(int number) | 342 | public LSL_Integer llDetectedLinkNumber(int number) |
340 | { | 343 | { |
341 | return m_LSL_Functions.llDetectedKey(number); | 344 | return m_LSL_Functions.llDetectedLinkNumber(number); |
345 | } | ||
346 | |||
347 | public LSL_String llDetectedName(int number) | ||
348 | { | ||
349 | return m_LSL_Functions.llDetectedName(number); | ||
342 | } | 350 | } |
343 | 351 | ||
344 | public string llDetectedOwner(int number) | 352 | public LSL_Key llDetectedOwner(int number) |
345 | { | 353 | { |
346 | return m_LSL_Functions.llDetectedOwner(number); | 354 | return m_LSL_Functions.llDetectedOwner(number); |
347 | } | 355 | } |
348 | 356 | ||
349 | public LSL_Types.LSLInteger llDetectedType(int number) | 357 | public LSL_Vector llDetectedPos(int number) |
358 | { | ||
359 | return m_LSL_Functions.llDetectedPos(number); | ||
360 | } | ||
361 | |||
362 | public LSL_Rotation llDetectedRot(int number) | ||
363 | { | ||
364 | return m_LSL_Functions.llDetectedRot(number); | ||
365 | } | ||
366 | |||
367 | public LSL_Integer llDetectedType(int number) | ||
350 | { | 368 | { |
351 | return m_LSL_Functions.llDetectedType(number); | 369 | return m_LSL_Functions.llDetectedType(number); |
352 | } | 370 | } |
353 | 371 | ||
354 | public vector llDetectedPos(int number) | 372 | public LSL_Vector llDetectedTouchBinormal(int index) |
355 | { | 373 | { |
356 | return m_LSL_Functions.llDetectedPos(number); | 374 | return m_LSL_Functions.llDetectedTouchBinormal(index); |
357 | } | 375 | } |
358 | 376 | ||
359 | public vector llDetectedVel(int number) | 377 | public LSL_Integer llDetectedTouchFace(int index) |
360 | { | 378 | { |
361 | return m_LSL_Functions.llDetectedVel(number); | 379 | return m_LSL_Functions.llDetectedTouchFace(index); |
362 | } | 380 | } |
363 | 381 | ||
364 | public vector llDetectedGrab(int number) | 382 | public LSL_Vector llDetectedTouchNormal(int index) |
365 | { | 383 | { |
366 | return m_LSL_Functions.llDetectedGrab(number); | 384 | return m_LSL_Functions.llDetectedTouchNormal(index); |
367 | } | 385 | } |
368 | 386 | ||
369 | public rotation llDetectedRot(int number) | 387 | public LSL_Vector llDetectedTouchPos(int index) |
370 | { | 388 | { |
371 | return m_LSL_Functions.llDetectedRot(number); | 389 | return m_LSL_Functions.llDetectedTouchPos(index); |
372 | } | 390 | } |
373 | 391 | ||
374 | public LSL_Types.LSLInteger llDetectedGroup(int number) | 392 | public LSL_Vector llDetectedTouchST(int index) |
375 | { | 393 | { |
376 | return m_LSL_Functions.llDetectedGroup(number); | 394 | return m_LSL_Functions.llDetectedTouchST(index); |
377 | } | 395 | } |
378 | 396 | ||
379 | public LSL_Types.LSLInteger llDetectedLinkNumber(int number) | 397 | public LSL_Vector llDetectedTouchUV(int index) |
380 | { | 398 | { |
381 | return m_LSL_Functions.llDetectedLinkNumber(number); | 399 | return m_LSL_Functions.llDetectedTouchUV(index); |
400 | } | ||
401 | |||
402 | public LSL_Vector llDetectedVel(int number) | ||
403 | { | ||
404 | return m_LSL_Functions.llDetectedVel(number); | ||
405 | } | ||
406 | |||
407 | public void llDialog(string avatar, string message, LSL_List buttons, int chat_channel) | ||
408 | { | ||
409 | m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel); | ||
382 | } | 410 | } |
383 | 411 | ||
384 | // | ||
385 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
386 | // | ||
387 | public void llDie() | 412 | public void llDie() |
388 | { | 413 | { |
389 | m_LSL_Functions.llDie(); | 414 | m_LSL_Functions.llDie(); |
390 | } | 415 | } |
391 | 416 | ||
392 | public double llGround(vector offset) | 417 | public LSL_String llDumpList2String(LSL_List src, string seperator) |
393 | { | 418 | { |
394 | return m_LSL_Functions.llGround(offset); | 419 | return m_LSL_Functions.llDumpList2String(src, seperator); |
395 | } | 420 | } |
396 | 421 | ||
397 | public double llCloud(vector offset) | 422 | public LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir) |
398 | { | 423 | { |
399 | return m_LSL_Functions.llCloud(offset); | 424 | return m_LSL_Functions.llEdgeOfWorld(pos, dir); |
400 | } | 425 | } |
401 | 426 | ||
402 | public vector llWind(vector offset) | 427 | public void llEjectFromLand(string pest) |
403 | { | 428 | { |
404 | return m_LSL_Functions.llWind(offset); | 429 | m_LSL_Functions.llEjectFromLand(pest); |
405 | } | 430 | } |
406 | 431 | ||
407 | public void llSetStatus(int status, int value) | 432 | public void llEmail(string address, string subject, string message) |
408 | { | 433 | { |
409 | m_LSL_Functions.llSetStatus(status, value); | 434 | m_LSL_Functions.llEmail(address, subject, message); |
410 | } | 435 | } |
411 | 436 | ||
412 | public LSL_Types.LSLInteger llGetStatus(int status) | 437 | public LSL_String llEscapeURL(string url) |
413 | { | 438 | { |
414 | return m_LSL_Functions.llGetStatus(status); | 439 | return m_LSL_Functions.llEscapeURL(url); |
415 | } | 440 | } |
416 | 441 | ||
417 | public void llSetScale(vector scale) | 442 | public LSL_Rotation llEuler2Rot(LSL_Vector v) |
418 | { | 443 | { |
419 | m_LSL_Functions.llSetScale(scale); | 444 | return m_LSL_Functions.llEuler2Rot(v); |
420 | } | 445 | } |
421 | 446 | ||
422 | public vector llGetScale() | 447 | public LSL_Float llFabs(double f) |
423 | { | 448 | { |
424 | return m_LSL_Functions.llGetScale(); | 449 | return m_LSL_Functions.llFabs(f); |
425 | } | 450 | } |
426 | 451 | ||
427 | public void llSetColor(vector color, int face) | 452 | public LSL_Integer llFloor(double f) |
428 | { | 453 | { |
429 | m_LSL_Functions.llSetColor(color, face); | 454 | return m_LSL_Functions.llFloor(f); |
430 | } | 455 | } |
431 | 456 | ||
432 | public double llGetAlpha(int face) | 457 | public void llForceMouselook(int mouselook) |
433 | { | 458 | { |
434 | return m_LSL_Functions.llGetAlpha(face); | 459 | m_LSL_Functions.llForceMouselook(mouselook); |
435 | } | 460 | } |
436 | 461 | ||
437 | public void llSetAlpha(double alpha, int face) | 462 | public LSL_Float llFrand(double mag) |
438 | { | 463 | { |
439 | m_LSL_Functions.llSetAlpha(alpha, face); | 464 | return m_LSL_Functions.llFrand(mag); |
440 | } | 465 | } |
441 | 466 | ||
442 | public vector llGetColor(int face) | 467 | public LSL_Vector llGetAccel() |
443 | { | 468 | { |
444 | return m_LSL_Functions.llGetColor(face); | 469 | return m_LSL_Functions.llGetAccel(); |
445 | } | 470 | } |
446 | 471 | ||
447 | public void llSetTexture(string texture, int face) | 472 | public LSL_Integer llGetAgentInfo(string id) |
448 | { | 473 | { |
449 | m_LSL_Functions.llSetTexture(texture, face); | 474 | return m_LSL_Functions.llGetAgentInfo(id); |
450 | } | 475 | } |
451 | 476 | ||
452 | public void llScaleTexture(double u, double v, int face) | 477 | public LSL_Vector llGetAgentSize(string id) |
453 | { | 478 | { |
454 | m_LSL_Functions.llScaleTexture(u, v, face); | 479 | return m_LSL_Functions.llGetAgentSize(id); |
455 | } | 480 | } |
456 | 481 | ||
457 | public void llOffsetTexture(double u, double v, int face) | 482 | public LSL_Float llGetAlpha(int face) |
458 | { | 483 | { |
459 | m_LSL_Functions.llOffsetTexture(u, v, face); | 484 | return m_LSL_Functions.llGetAlpha(face); |
460 | } | 485 | } |
461 | 486 | ||
462 | public void llRotateTexture(double rotation, int face) | 487 | public LSL_Float llGetAndResetTime() |
463 | { | 488 | { |
464 | m_LSL_Functions.llRotateTexture(rotation, face); | 489 | return m_LSL_Functions.llGetAndResetTime(); |
465 | } | 490 | } |
466 | 491 | ||
467 | public string llGetTexture(int face) | 492 | public LSL_String llGetAnimation(string id) |
468 | { | 493 | { |
469 | return m_LSL_Functions.llGetTexture(face); | 494 | return m_LSL_Functions.llGetAnimation(id); |
470 | } | 495 | } |
471 | 496 | ||
472 | // | 497 | public LSL_List llGetAnimationList(string id) |
473 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
474 | // | ||
475 | public void llSetPos(vector pos) | ||
476 | { | 498 | { |
477 | m_LSL_Functions.llSetPos(pos); | 499 | return m_LSL_Functions.llGetAnimationList(id); |
478 | } | 500 | } |
479 | 501 | ||
480 | public vector llGetPos() | 502 | public LSL_Integer llGetAttached() |
481 | { | 503 | { |
482 | return m_LSL_Functions.llGetPos(); | 504 | return m_LSL_Functions.llGetAttached(); |
483 | } | 505 | } |
484 | 506 | ||
485 | public vector llGetLocalPos() | 507 | public LSL_List llGetBoundingBox(string obj) |
486 | { | 508 | { |
487 | return m_LSL_Functions.llGetLocalPos(); | 509 | return m_LSL_Functions.llGetBoundingBox(obj); |
488 | } | 510 | } |
489 | 511 | ||
490 | public void llSetRot(rotation rot) | 512 | public LSL_Vector llGetCameraPos() |
491 | { | 513 | { |
492 | m_LSL_Functions.llSetRot(rot); | 514 | return m_LSL_Functions.llGetCameraPos(); |
493 | } | 515 | } |
494 | 516 | ||
495 | public rotation llGetRot() | 517 | public LSL_Rotation llGetCameraRot() |
496 | { | 518 | { |
497 | return m_LSL_Functions.llGetRot(); | 519 | return m_LSL_Functions.llGetCameraRot(); |
498 | } | 520 | } |
499 | 521 | ||
500 | public rotation llGetLocalRot() | 522 | public LSL_Vector llGetCenterOfMass() |
501 | { | 523 | { |
502 | return m_LSL_Functions.llGetLocalRot(); | 524 | return m_LSL_Functions.llGetCenterOfMass(); |
503 | } | 525 | } |
504 | 526 | ||
505 | public void llSetForce(vector force, int local) | 527 | public LSL_Vector llGetColor(int face) |
506 | { | 528 | { |
507 | m_LSL_Functions.llSetForce(force, local); | 529 | return m_LSL_Functions.llGetColor(face); |
508 | } | 530 | } |
509 | 531 | ||
510 | public vector llGetForce() | 532 | public LSL_String llGetCreator() |
511 | { | 533 | { |
512 | return m_LSL_Functions.llGetForce(); | 534 | return m_LSL_Functions.llGetCreator(); |
513 | } | 535 | } |
514 | 536 | ||
515 | public LSL_Types.LSLInteger llTarget(vector position, double range) | 537 | public LSL_String llGetDate() |
516 | { | 538 | { |
517 | return m_LSL_Functions.llTarget(position, range); | 539 | return m_LSL_Functions.llGetDate(); |
518 | } | 540 | } |
519 | 541 | ||
520 | public void llTargetRemove(int number) | 542 | public LSL_Float llGetEnergy() |
521 | { | 543 | { |
522 | m_LSL_Functions.llTargetRemove(number); | 544 | return m_LSL_Functions.llGetEnergy(); |
523 | } | 545 | } |
524 | 546 | ||
525 | public LSL_Types.LSLInteger llRotTarget(rotation rot, double error) | 547 | public LSL_Vector llGetForce() |
526 | { | 548 | { |
527 | return m_LSL_Functions.llRotTarget(rot, error); | 549 | return m_LSL_Functions.llGetForce(); |
528 | } | 550 | } |
529 | 551 | ||
530 | public void llRotTargetRemove(int number) | 552 | public LSL_Integer llGetFreeMemory() |
531 | { | 553 | { |
532 | m_LSL_Functions.llRotTargetRemove(number); | 554 | return m_LSL_Functions.llGetFreeMemory(); |
533 | } | 555 | } |
534 | 556 | ||
535 | public void llMoveToTarget(vector target, double tau) | 557 | public LSL_Vector llGetGeometricCenter() |
536 | { | 558 | { |
537 | m_LSL_Functions.llMoveToTarget(target, tau); | 559 | return m_LSL_Functions.llGetGeometricCenter(); |
538 | } | 560 | } |
539 | 561 | ||
540 | public void llStopMoveToTarget() | 562 | public LSL_Float llGetGMTclock() |
541 | { | 563 | { |
542 | m_LSL_Functions.llStopMoveToTarget(); | 564 | return m_LSL_Functions.llGetGMTclock(); |
543 | } | 565 | } |
544 | 566 | ||
545 | public void llApplyImpulse(vector force, int local) | 567 | public LSL_Key llGetInventoryCreator(string item) |
546 | { | 568 | { |
547 | m_LSL_Functions.llApplyImpulse(force, local); | 569 | return m_LSL_Functions.llGetInventoryCreator(item); |
548 | } | 570 | } |
549 | 571 | ||
550 | // | 572 | public LSL_Key llGetInventoryKey(string name) |
551 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
552 | // | ||
553 | public void llApplyRotationalImpulse(vector force, int local) | ||
554 | { | 573 | { |
555 | m_LSL_Functions.llApplyRotationalImpulse(force, local); | 574 | return m_LSL_Functions.llGetInventoryKey(name); |
556 | } | 575 | } |
557 | 576 | ||
558 | public void llSetTorque(vector torque, int local) | 577 | public LSL_String llGetInventoryName(int type, int number) |
559 | { | 578 | { |
560 | m_LSL_Functions.llSetTorque(torque, local); | 579 | return m_LSL_Functions.llGetInventoryName(type, number); |
561 | } | 580 | } |
562 | 581 | ||
563 | public vector llGetTorque() | 582 | public LSL_Integer llGetInventoryNumber(int type) |
564 | { | 583 | { |
565 | return m_LSL_Functions.llGetTorque(); | 584 | return m_LSL_Functions.llGetInventoryNumber(type); |
566 | } | 585 | } |
567 | 586 | ||
568 | public void llSetForceAndTorque(vector force, vector torque, int local) | 587 | public LSL_Integer llGetInventoryPermMask(string item, int mask) |
569 | { | 588 | { |
570 | m_LSL_Functions.llSetForceAndTorque(force, torque, local); | 589 | return m_LSL_Functions.llGetInventoryPermMask(item, mask); |
571 | } | 590 | } |
572 | 591 | ||
573 | public vector llGetVel() | 592 | public LSL_Integer llGetInventoryType(string name) |
574 | { | 593 | { |
575 | return m_LSL_Functions.llGetVel(); | 594 | return m_LSL_Functions.llGetInventoryType(name); |
576 | } | 595 | } |
577 | 596 | ||
578 | public vector llGetAccel() | 597 | public LSL_Key llGetKey() |
579 | { | 598 | { |
580 | return m_LSL_Functions.llGetAccel(); | 599 | return m_LSL_Functions.llGetKey(); |
581 | } | 600 | } |
582 | 601 | ||
583 | public vector llGetOmega() | 602 | public LSL_Key llGetLandOwnerAt(LSL_Vector pos) |
584 | { | 603 | { |
585 | return m_LSL_Functions.llGetOmega(); | 604 | return m_LSL_Functions.llGetLandOwnerAt(pos); |
586 | } | 605 | } |
587 | 606 | ||
588 | public double llGetTimeOfDay() | 607 | public LSL_Key llGetLinkKey(int linknum) |
589 | { | 608 | { |
590 | return m_LSL_Functions.llGetTimeOfDay(); | 609 | return m_LSL_Functions.llGetLinkKey(linknum); |
591 | } | 610 | } |
592 | 611 | ||
593 | public double llGetWallclock() | 612 | public LSL_String llGetLinkName(int linknum) |
594 | { | 613 | { |
595 | return m_LSL_Functions.llGetWallclock(); | 614 | return m_LSL_Functions.llGetLinkName(linknum); |
596 | } | 615 | } |
597 | 616 | ||
598 | public double llGetTime() | 617 | public LSL_Integer llGetLinkNumber() |
599 | { | 618 | { |
600 | return m_LSL_Functions.llGetTime(); | 619 | return m_LSL_Functions.llGetLinkNumber(); |
601 | } | 620 | } |
602 | 621 | ||
603 | public void llResetTime() | 622 | public LSL_Integer llGetListEntryType(LSL_List src, int index) |
604 | { | 623 | { |
605 | m_LSL_Functions.llResetTime(); | 624 | return m_LSL_Functions.llGetListEntryType(src, index); |
606 | } | 625 | } |
607 | 626 | ||
608 | public double llGetAndResetTime() | 627 | public LSL_Integer llGetListLength(LSL_List src) |
609 | { | 628 | { |
610 | return m_LSL_Functions.llGetAndResetTime(); | 629 | return m_LSL_Functions.llGetListLength(src); |
611 | } | 630 | } |
612 | 631 | ||
613 | public void llSound() | 632 | public LSL_Vector llGetLocalPos() |
614 | { | 633 | { |
615 | m_LSL_Functions.llSound(); | 634 | return m_LSL_Functions.llGetLocalPos(); |
616 | } | 635 | } |
617 | 636 | ||
618 | public void llPlaySound(string sound, double volume) | 637 | public LSL_Rotation llGetLocalRot() |
619 | { | 638 | { |
620 | m_LSL_Functions.llPlaySound(sound, volume); | 639 | return m_LSL_Functions.llGetLocalRot(); |
621 | } | 640 | } |
622 | 641 | ||
623 | public void llLoopSound(string sound, double volume) | 642 | public LSL_Float llGetMass() |
624 | { | 643 | { |
625 | m_LSL_Functions.llLoopSound(sound, volume); | 644 | return m_LSL_Functions.llGetMass(); |
626 | } | 645 | } |
627 | 646 | ||
628 | public void llLoopSoundMaster(string sound, double volume) | 647 | public void llGetNextEmail(string address, string subject) |
629 | { | 648 | { |
630 | m_LSL_Functions.llLoopSoundMaster(sound, volume); | 649 | m_LSL_Functions.llGetNextEmail(address, subject); |
631 | } | 650 | } |
632 | 651 | ||
633 | public void llLoopSoundSlave(string sound, double volume) | 652 | public LSL_String llGetNotecardLine(string name, int line) |
634 | { | 653 | { |
635 | m_LSL_Functions.llLoopSoundSlave(sound, volume); | 654 | return m_LSL_Functions.llGetNotecardLine(name, line); |
636 | } | 655 | } |
637 | 656 | ||
638 | public void llPlaySoundSlave(string sound, double volume) | 657 | public LSL_Key llGetNumberOfNotecardLines(string name) |
639 | { | 658 | { |
640 | m_LSL_Functions.llPlaySoundSlave(sound, volume); | 659 | return m_LSL_Functions.llGetNumberOfNotecardLines(name); |
641 | } | 660 | } |
642 | 661 | ||
643 | // | 662 | public LSL_Integer llGetNumberOfPrims() |
644 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
645 | // | ||
646 | public void llTriggerSound(string sound, double volume) | ||
647 | { | 663 | { |
648 | m_LSL_Functions.llTriggerSound(sound, volume); | 664 | return m_LSL_Functions.llGetNumberOfPrims(); |
649 | } | 665 | } |
650 | 666 | ||
651 | public void llStopSound() | 667 | public LSL_Integer llGetNumberOfSides() |
652 | { | 668 | { |
653 | m_LSL_Functions.llStopSound(); | 669 | return m_LSL_Functions.llGetNumberOfSides(); |
654 | } | 670 | } |
655 | 671 | ||
656 | public void llPreloadSound(string sound) | 672 | public LSL_String llGetObjectDesc() |
657 | { | 673 | { |
658 | m_LSL_Functions.llPreloadSound(sound); | 674 | return m_LSL_Functions.llGetObjectDesc(); |
659 | } | 675 | } |
660 | 676 | ||
661 | public string llGetSubString(string src, int start, int end) | 677 | public LSL_List llGetObjectDetails(string id, LSL_List args) |
662 | { | 678 | { |
663 | return m_LSL_Functions.llGetSubString(src, start, end); | 679 | return m_LSL_Functions.llGetObjectDetails(id, args); |
664 | } | 680 | } |
665 | 681 | ||
666 | public string llDeleteSubString(string src, int start, int end) | 682 | public LSL_Float llGetObjectMass(string id) |
667 | { | 683 | { |
668 | return m_LSL_Functions.llDeleteSubString(src, start, end); | 684 | return m_LSL_Functions.llGetObjectMass(id); |
669 | } | 685 | } |
670 | 686 | ||
671 | public string llInsertString(string dst, int position, string src) | 687 | public LSL_String llGetObjectName() |
672 | { | 688 | { |
673 | return m_LSL_Functions.llInsertString(dst, position, src); | 689 | return m_LSL_Functions.llGetObjectName(); |
674 | } | 690 | } |
675 | 691 | ||
676 | public string llToUpper(string source) | 692 | public LSL_Integer llGetObjectPermMask(int mask) |
677 | { | 693 | { |
678 | return m_LSL_Functions.llToUpper(source); | 694 | return m_LSL_Functions.llGetObjectPermMask(mask); |
679 | } | 695 | } |
680 | 696 | ||
681 | public string llToLower(string source) | 697 | public LSL_Integer llGetObjectPrimCount(string object_id) |
682 | { | 698 | { |
683 | return m_LSL_Functions.llToLower(source); | 699 | return m_LSL_Functions.llGetObjectPrimCount(object_id); |
684 | } | 700 | } |
685 | 701 | ||
686 | public LSL_Types.LSLInteger llGiveMoney(string destination, int amount) | 702 | public LSL_Vector llGetOmega() |
687 | { | 703 | { |
688 | return m_LSL_Functions.llGiveMoney(destination, amount); | 704 | return m_LSL_Functions.llGetOmega(); |
689 | } | 705 | } |
690 | 706 | ||
691 | public void llMakeExplosion() | 707 | public LSL_Key llGetOwner() |
692 | { | 708 | { |
693 | m_LSL_Functions.llMakeExplosion(); | 709 | return m_LSL_Functions.llGetOwner(); |
694 | } | 710 | } |
695 | 711 | ||
696 | public void llMakeFountain() | 712 | public LSL_Key llGetOwnerKey(string id) |
697 | { | 713 | { |
698 | m_LSL_Functions.llMakeFountain(); | 714 | return m_LSL_Functions.llGetOwnerKey(id); |
699 | } | 715 | } |
700 | 716 | ||
701 | public void llMakeSmoke() | 717 | public LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param) |
702 | { | 718 | { |
703 | m_LSL_Functions.llMakeSmoke(); | 719 | return m_LSL_Functions.llGetParcelDetails(pos, param); |
704 | } | 720 | } |
705 | 721 | ||
706 | public void llMakeFire() | 722 | public LSL_Integer llGetParcelFlags(LSL_Vector pos) |
707 | { | 723 | { |
708 | m_LSL_Functions.llMakeFire(); | 724 | return m_LSL_Functions.llGetParcelFlags(pos); |
709 | } | 725 | } |
710 | 726 | ||
711 | public void llRezObject(string inventory, vector pos, vector vel, rotation rot, int param) | 727 | public LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide) |
712 | { | 728 | { |
713 | m_LSL_Functions.llRezObject(inventory, pos, vel, rot, param); | 729 | return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); |
714 | } | 730 | } |
715 | 731 | ||
716 | public void llLookAt(vector target, double strength, double damping) | 732 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) |
717 | { | 733 | { |
718 | m_LSL_Functions.llLookAt(target, strength, damping); | 734 | return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); |
719 | } | 735 | } |
720 | 736 | ||
721 | public void llStopLookAt() | 737 | public LSL_List llGetParcelPrimOwners(LSL_Vector pos) |
722 | { | 738 | { |
723 | m_LSL_Functions.llStopLookAt(); | 739 | return m_LSL_Functions.llGetParcelPrimOwners(pos); |
724 | } | 740 | } |
725 | 741 | ||
726 | public void llSetTimerEvent(double sec) | 742 | public LSL_Integer llGetPermissions() |
727 | { | 743 | { |
728 | m_LSL_Functions.llSetTimerEvent(sec); | 744 | return m_LSL_Functions.llGetPermissions(); |
729 | } | 745 | } |
730 | 746 | ||
731 | public void llSleep(double sec) | 747 | public LSL_Key llGetPermissionsKey() |
732 | { | 748 | { |
733 | m_LSL_Functions.llSleep(sec); | 749 | return m_LSL_Functions.llGetPermissionsKey(); |
734 | } | 750 | } |
735 | 751 | ||
736 | // | 752 | public LSL_Vector llGetPos() |
737 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
738 | // | ||
739 | public double llGetMass() | ||
740 | { | 753 | { |
741 | return m_LSL_Functions.llGetMass(); | 754 | return m_LSL_Functions.llGetPos(); |
742 | } | 755 | } |
743 | 756 | ||
744 | public void llCollisionFilter(string name, string id, int accept) | 757 | public LSL_List llGetPrimitiveParams(LSL_List rules) |
745 | { | 758 | { |
746 | m_LSL_Functions.llCollisionFilter(name, id, accept); | 759 | return m_LSL_Functions.llGetPrimitiveParams(rules); |
747 | } | 760 | } |
748 | 761 | ||
749 | public void llTakeControls(int controls, int accept, int pass_on) | 762 | public LSL_Integer llGetRegionAgentCount() |
750 | { | 763 | { |
751 | m_LSL_Functions.llTakeControls(controls, accept, pass_on); | 764 | return m_LSL_Functions.llGetRegionAgentCount(); |
752 | } | 765 | } |
753 | 766 | ||
754 | public void llReleaseControls() | 767 | public LSL_Vector llGetRegionCorner() |
755 | { | 768 | { |
756 | m_LSL_Functions.llReleaseControls(); | 769 | return m_LSL_Functions.llGetRegionCorner(); |
757 | } | 770 | } |
758 | 771 | ||
759 | public void llAttachToAvatar(int attachment) | 772 | public LSL_Integer llGetRegionFlags() |
760 | { | 773 | { |
761 | m_LSL_Functions.llAttachToAvatar(attachment); | 774 | return m_LSL_Functions.llGetRegionFlags(); |
762 | } | 775 | } |
763 | 776 | ||
764 | public void llDetachFromAvatar() | 777 | public LSL_Float llGetRegionFPS() |
765 | { | 778 | { |
766 | m_LSL_Functions.llDetachFromAvatar(); | 779 | return m_LSL_Functions.llGetRegionFPS(); |
767 | } | 780 | } |
768 | 781 | ||
769 | public void llTakeCamera(string avatar) | 782 | public LSL_String llGetRegionName() |
770 | { | 783 | { |
771 | m_LSL_Functions.llTakeCamera(avatar); | 784 | return m_LSL_Functions.llGetRegionName(); |
772 | } | 785 | } |
773 | 786 | ||
774 | public void llReleaseCamera(string avatar) | 787 | public LSL_Float llGetRegionTimeDilation() |
775 | { | 788 | { |
776 | m_LSL_Functions.llReleaseCamera(avatar); | 789 | return m_LSL_Functions.llGetRegionTimeDilation(); |
777 | } | 790 | } |
778 | 791 | ||
779 | public string llGetOwner() | 792 | public LSL_Vector llGetRootPosition() |
780 | { | 793 | { |
781 | return m_LSL_Functions.llGetOwner(); | 794 | return m_LSL_Functions.llGetRootPosition(); |
782 | } | 795 | } |
783 | 796 | ||
784 | public void llInstantMessage(string user, string message) | 797 | public LSL_Rotation llGetRootRotation() |
785 | { | 798 | { |
786 | m_LSL_Functions.llInstantMessage(user, message); | 799 | return m_LSL_Functions.llGetRootRotation(); |
787 | } | 800 | } |
788 | 801 | ||
789 | public void llEmail(string address, string subject, string message) | 802 | public LSL_Rotation llGetRot() |
790 | { | 803 | { |
791 | m_LSL_Functions.llEmail(address, subject, message); | 804 | return m_LSL_Functions.llGetRot(); |
792 | } | 805 | } |
793 | 806 | ||
794 | public void llGetNextEmail(string address, string subject) | 807 | public LSL_Vector llGetScale() |
795 | { | 808 | { |
796 | m_LSL_Functions.llGetNextEmail(address, subject); | 809 | return m_LSL_Functions.llGetScale(); |
797 | } | 810 | } |
798 | 811 | ||
799 | public string llGetKey() | 812 | public LSL_String llGetScriptName() |
800 | { | 813 | { |
801 | return m_LSL_Functions.llGetKey(); | 814 | return m_LSL_Functions.llGetScriptName(); |
802 | } | 815 | } |
803 | 816 | ||
804 | public void llSetBuoyancy(double buoyancy) | 817 | public LSL_Integer llGetScriptState(string name) |
805 | { | 818 | { |
806 | m_LSL_Functions.llSetBuoyancy(buoyancy); | 819 | return m_LSL_Functions.llGetScriptState(name); |
807 | } | 820 | } |
808 | 821 | ||
809 | public void llSetHoverHeight(double height, int water, double tau) | 822 | public LSL_String llGetSimulatorHostname() |
810 | { | 823 | { |
811 | m_LSL_Functions.llSetHoverHeight(height, water, tau); | 824 | return m_LSL_Functions.llGetSimulatorHostname(); |
812 | } | 825 | } |
813 | 826 | ||
814 | public void llStopHover() | 827 | public LSL_Integer llGetStartParameter() |
815 | { | 828 | { |
816 | m_LSL_Functions.llStopHover(); | 829 | return m_LSL_Functions.llGetStartParameter(); |
817 | } | 830 | } |
818 | 831 | ||
819 | public void llMinEventDelay(double delay) | 832 | public LSL_Integer llGetStatus(int status) |
820 | { | 833 | { |
821 | m_LSL_Functions.llMinEventDelay(delay); | 834 | return m_LSL_Functions.llGetStatus(status); |
822 | } | 835 | } |
823 | 836 | ||
824 | public void llSoundPreload() | 837 | public LSL_String llGetSubString(string src, int start, int end) |
825 | { | 838 | { |
826 | m_LSL_Functions.llSoundPreload(); | 839 | return m_LSL_Functions.llGetSubString(src, start, end); |
827 | } | 840 | } |
828 | 841 | ||
829 | public void llRotLookAt(rotation target, double strength, double damping) | 842 | public LSL_Vector llGetSunDirection() |
830 | { | 843 | { |
831 | m_LSL_Functions.llRotLookAt(target, strength, damping); | 844 | return m_LSL_Functions.llGetSunDirection(); |
832 | } | 845 | } |
833 | 846 | ||
834 | // | 847 | public LSL_String llGetTexture(int face) |
835 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
836 | // | ||
837 | public LSL_Types.LSLInteger llStringLength(string str) | ||
838 | { | 848 | { |
839 | return m_LSL_Functions.llStringLength(str); | 849 | return m_LSL_Functions.llGetTexture(face); |
840 | } | 850 | } |
841 | 851 | ||
842 | public void llStartAnimation(string anim) | 852 | public LSL_Vector llGetTextureOffset(int face) |
843 | { | 853 | { |
844 | m_LSL_Functions.llStartAnimation(anim); | 854 | return m_LSL_Functions.llGetTextureOffset(face); |
845 | } | 855 | } |
846 | 856 | ||
847 | public void llStopAnimation(string anim) | 857 | public LSL_Float llGetTextureRot(int side) |
848 | { | 858 | { |
849 | m_LSL_Functions.llStopAnimation(anim); | 859 | return m_LSL_Functions.llGetTextureRot(side); |
850 | } | 860 | } |
851 | 861 | ||
852 | public void llPointAt() | 862 | public LSL_Vector llGetTextureScale(int side) |
853 | { | 863 | { |
854 | m_LSL_Functions.llPointAt(); | 864 | return m_LSL_Functions.llGetTextureScale(side); |
855 | } | 865 | } |
856 | 866 | ||
857 | public void llStopPointAt() | 867 | public LSL_Float llGetTime() |
858 | { | 868 | { |
859 | m_LSL_Functions.llStopPointAt(); | 869 | return m_LSL_Functions.llGetTime(); |
860 | } | 870 | } |
861 | 871 | ||
862 | public void llTargetOmega(vector axis, double spinrate, double gain) | 872 | public LSL_Float llGetTimeOfDay() |
863 | { | 873 | { |
864 | m_LSL_Functions.llTargetOmega(axis, spinrate, gain); | 874 | return m_LSL_Functions.llGetTimeOfDay(); |
865 | } | 875 | } |
866 | 876 | ||
867 | public LSL_Types.LSLInteger llGetStartParameter() | 877 | public LSL_String llGetTimestamp() |
868 | { | 878 | { |
869 | return m_StartParam; | 879 | return m_LSL_Functions.llGetTimestamp(); |
870 | } | 880 | } |
871 | 881 | ||
872 | public void llGodLikeRezObject(string inventory, vector pos) | 882 | public LSL_Vector llGetTorque() |
873 | { | 883 | { |
874 | m_LSL_Functions.llGodLikeRezObject(inventory, pos); | 884 | return m_LSL_Functions.llGetTorque(); |
875 | } | 885 | } |
876 | 886 | ||
877 | public void llRequestPermissions(string agent, int perm) | 887 | public LSL_Integer llGetUnixTime() |
878 | { | 888 | { |
879 | m_LSL_Functions.llRequestPermissions(agent, perm); | 889 | return m_LSL_Functions.llGetUnixTime(); |
880 | } | 890 | } |
881 | 891 | ||
882 | public string llGetPermissionsKey() | 892 | public LSL_Vector llGetVel() |
883 | { | 893 | { |
884 | return m_LSL_Functions.llGetPermissionsKey(); | 894 | return m_LSL_Functions.llGetVel(); |
885 | } | 895 | } |
886 | 896 | ||
887 | public LSL_Types.LSLInteger llGetPermissions() | 897 | public LSL_Float llGetWallclock() |
888 | { | 898 | { |
889 | return m_LSL_Functions.llGetPermissions(); | 899 | return m_LSL_Functions.llGetWallclock(); |
890 | } | 900 | } |
891 | 901 | ||
892 | public LSL_Types.LSLInteger llGetLinkNumber() | 902 | public void llGiveInventory(string destination, string inventory) |
893 | { | 903 | { |
894 | return m_LSL_Functions.llGetLinkNumber(); | 904 | m_LSL_Functions.llGiveInventory(destination, inventory); |
895 | } | 905 | } |
896 | 906 | ||
897 | public void llSetLinkColor(int linknumber, vector color, int face) | 907 | public void llGiveInventoryList(string destination, string category, LSL_List inventory) |
898 | { | 908 | { |
899 | m_LSL_Functions.llSetLinkColor(linknumber, color, face); | 909 | m_LSL_Functions.llGiveInventoryList(destination, category, inventory); |
900 | } | 910 | } |
901 | 911 | ||
902 | public void llCreateLink(string target, int parent) | 912 | public LSL_Integer llGiveMoney(string destination, int amount) |
903 | { | 913 | { |
904 | m_LSL_Functions.llCreateLink(target, parent); | 914 | return m_LSL_Functions.llGiveMoney(destination, amount); |
905 | } | 915 | } |
906 | 916 | ||
907 | public void llBreakLink(int linknum) | 917 | public void llGodLikeRezObject(string inventory, LSL_Vector pos) |
908 | { | 918 | { |
909 | m_LSL_Functions.llBreakLink(linknum); | 919 | m_LSL_Functions.llGodLikeRezObject(inventory, pos); |
910 | } | 920 | } |
911 | 921 | ||
912 | public void llBreakAllLinks() | 922 | public LSL_Float llGround(LSL_Vector offset) |
913 | { | 923 | { |
914 | m_LSL_Functions.llBreakAllLinks(); | 924 | return m_LSL_Functions.llGround(offset); |
915 | } | 925 | } |
916 | 926 | ||
917 | public string llGetLinkKey(int linknum) | 927 | public LSL_Vector llGroundContour(LSL_Vector offset) |
918 | { | 928 | { |
919 | return m_LSL_Functions.llGetLinkKey(linknum); | 929 | return m_LSL_Functions.llGroundContour(offset); |
920 | } | 930 | } |
921 | 931 | ||
922 | public string llGetLinkName(int linknum) | 932 | public LSL_Vector llGroundNormal(LSL_Vector offset) |
923 | { | 933 | { |
924 | return m_LSL_Functions.llGetLinkName(linknum); | 934 | return m_LSL_Functions.llGroundNormal(offset); |
925 | } | 935 | } |
926 | 936 | ||
927 | public LSL_Types.LSLInteger llGetInventoryNumber(int type) | 937 | public void llGroundRepel(double height, int water, double tau) |
928 | { | 938 | { |
929 | return m_LSL_Functions.llGetInventoryNumber(type); | 939 | m_LSL_Functions.llGroundRepel(height, water, tau); |
930 | } | 940 | } |
931 | 941 | ||
932 | public string llGetInventoryName(int type, int number) | 942 | public LSL_Vector llGroundSlope(LSL_Vector offset) |
933 | { | 943 | { |
934 | return m_LSL_Functions.llGetInventoryName(type, number); | 944 | return m_LSL_Functions.llGroundSlope(offset); |
935 | } | 945 | } |
936 | 946 | ||
937 | // | 947 | public LSL_String llHTTPRequest(string url, LSL_List parameters, string body) |
938 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
939 | // | ||
940 | public void llSetScriptState(string name, int run) | ||
941 | { | 948 | { |
942 | m_LSL_Functions.llSetScriptState(name, run); | 949 | return m_LSL_Functions.llHTTPRequest(url, parameters, body); |
943 | } | 950 | } |
944 | 951 | ||
945 | public double llGetEnergy() | 952 | public LSL_String llInsertString(string dst, int position, string src) |
946 | { | 953 | { |
947 | return m_LSL_Functions.llGetEnergy(); | 954 | return m_LSL_Functions.llInsertString(dst, position, src); |
948 | } | 955 | } |
949 | 956 | ||
950 | public void llGiveInventory(string destination, string inventory) | 957 | public void llInstantMessage(string user, string message) |
951 | { | 958 | { |
952 | m_LSL_Functions.llGiveInventory(destination, inventory); | 959 | m_LSL_Functions.llInstantMessage(user, message); |
953 | } | 960 | } |
954 | 961 | ||
955 | public void llRemoveInventory(string item) | 962 | public LSL_String llIntegerToBase64(int number) |
956 | { | 963 | { |
957 | m_LSL_Functions.llRemoveInventory(item); | 964 | return m_LSL_Functions.llIntegerToBase64(number); |
958 | } | 965 | } |
959 | 966 | ||
960 | public void llSetText(string text, vector color, double alpha) | 967 | public LSL_String llKey2Name(string id) |
961 | { | 968 | { |
962 | m_LSL_Functions.llSetText(text, color, alpha); | 969 | return m_LSL_Functions.llKey2Name(id); |
963 | } | 970 | } |
964 | 971 | ||
965 | public double llWater(vector offset) | 972 | public LSL_String llList2CSV(LSL_List src) |
966 | { | 973 | { |
967 | return m_LSL_Functions.llWater(offset); | 974 | return m_LSL_Functions.llList2CSV(src); |
968 | } | 975 | } |
969 | 976 | ||
970 | public void llPassTouches(int pass) | 977 | public LSL_Float llList2Float(LSL_List src, int index) |
971 | { | 978 | { |
972 | m_LSL_Functions.llPassTouches(pass); | 979 | return m_LSL_Functions.llList2Float(src, index); |
973 | } | 980 | } |
974 | 981 | ||
975 | public string llRequestAgentData(string id, int data) | 982 | public LSL_Integer llList2Integer(LSL_List src, int index) |
976 | { | 983 | { |
977 | return m_LSL_Functions.llRequestAgentData(id, data); | 984 | return m_LSL_Functions.llList2Integer(src, index); |
978 | } | 985 | } |
979 | 986 | ||
980 | public string llRequestInventoryData(string name) | 987 | public LSL_Key llList2Key(LSL_List src, int index) |
981 | { | 988 | { |
982 | return m_LSL_Functions.llRequestInventoryData(name); | 989 | return m_LSL_Functions.llList2Key(src, index); |
983 | } | 990 | } |
984 | 991 | ||
985 | public void llSetDamage(double damage) | 992 | public LSL_List llList2List(LSL_List src, int start, int end) |
986 | { | 993 | { |
987 | m_LSL_Functions.llSetDamage(damage); | 994 | return m_LSL_Functions.llList2List(src, start, end); |
988 | } | 995 | } |
989 | 996 | ||
990 | public void llTeleportAgentHome(string agent) | 997 | public LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride) |
991 | { | 998 | { |
992 | m_LSL_Functions.llTeleportAgentHome(agent); | 999 | return m_LSL_Functions.llList2ListStrided(src, start, end, stride); |
993 | } | 1000 | } |
994 | 1001 | ||
995 | public void llModifyLand(int action, int brush) | 1002 | public LSL_Rotation llList2Rot(LSL_List src, int index) |
996 | { | 1003 | { |
997 | m_LSL_Functions.llModifyLand(action, brush); | 1004 | return m_LSL_Functions.llList2Rot(src, index); |
998 | } | 1005 | } |
999 | 1006 | ||
1000 | public void llCollisionSound(string impact_sound, double impact_volume) | 1007 | public LSL_String llList2String(LSL_List src, int index) |
1001 | { | 1008 | { |
1002 | m_LSL_Functions.llCollisionSound(impact_sound, impact_volume); | 1009 | return m_LSL_Functions.llList2String(src, index); |
1003 | } | 1010 | } |
1004 | 1011 | ||
1005 | public void llCollisionSprite(string impact_sprite) | 1012 | public LSL_Vector llList2Vector(LSL_List src, int index) |
1006 | { | 1013 | { |
1007 | m_LSL_Functions.llCollisionSprite(impact_sprite); | 1014 | return m_LSL_Functions.llList2Vector(src, index); |
1008 | } | 1015 | } |
1009 | 1016 | ||
1010 | public string llGetAnimation(string id) | 1017 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) |
1011 | { | 1018 | { |
1012 | return m_LSL_Functions.llGetAnimation(id); | 1019 | return m_LSL_Functions.llListen(channelID, name, ID, msg); |
1013 | } | 1020 | } |
1014 | 1021 | ||
1015 | public void llResetScript() | 1022 | public void llListenControl(int number, int active) |
1016 | { | 1023 | { |
1017 | m_LSL_Functions.llResetScript(); | 1024 | m_LSL_Functions.llListenControl(number, active); |
1018 | } | 1025 | } |
1019 | 1026 | ||
1020 | public void llMessageLinked(int linknum, int num, string str, string id) | 1027 | public void llListenRemove(int number) |
1021 | { | 1028 | { |
1022 | m_LSL_Functions.llMessageLinked(linknum, num, str, id); | 1029 | m_LSL_Functions.llListenRemove(number); |
1023 | } | 1030 | } |
1024 | 1031 | ||
1025 | public void llPushObject(string target, vector impulse, vector ang_impulse, int local) | 1032 | public LSL_Integer llListFindList(LSL_List src, LSL_List test) |
1026 | { | 1033 | { |
1027 | m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local); | 1034 | return m_LSL_Functions.llListFindList(src, test); |
1028 | } | 1035 | } |
1029 | 1036 | ||
1030 | public void llPassCollisions(int pass) | 1037 | public LSL_List llListInsertList(LSL_List dest, LSL_List src, int start) |
1031 | { | 1038 | { |
1032 | m_LSL_Functions.llPassCollisions(pass); | 1039 | return m_LSL_Functions.llListInsertList(dest, src, start); |
1033 | } | 1040 | } |
1034 | 1041 | ||
1035 | public string llGetScriptName() | 1042 | public LSL_List llListRandomize(LSL_List src, int stride) |
1036 | { | 1043 | { |
1037 | return m_LSL_Functions.llGetScriptName(); | 1044 | return m_LSL_Functions.llListRandomize(src, stride); |
1038 | } | 1045 | } |
1039 | 1046 | ||
1040 | public LSL_Types.LSLInteger llGetNumberOfSides() | 1047 | public LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end) |
1041 | { | 1048 | { |
1042 | return m_LSL_Functions.llGetNumberOfSides(); | 1049 | return m_LSL_Functions.llListReplaceList(dest, src, start, end); |
1043 | } | 1050 | } |
1044 | 1051 | ||
1045 | // | 1052 | public LSL_List llListSort(LSL_List src, int stride, int ascending) |
1046 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1047 | // | ||
1048 | public rotation llAxisAngle2Rot(vector axis, double angle) | ||
1049 | { | 1053 | { |
1050 | return m_LSL_Functions.llAxisAngle2Rot(axis, angle); | 1054 | return m_LSL_Functions.llListSort(src, stride, ascending); |
1051 | } | 1055 | } |
1052 | 1056 | ||
1053 | public vector llRot2Axis(rotation rot) | 1057 | public LSL_Float llListStatistics(int operation, LSL_List src) |
1054 | { | 1058 | { |
1055 | return m_LSL_Functions.llRot2Axis(rot); | 1059 | return m_LSL_Functions.llListStatistics(operation, src); |
1056 | } | 1060 | } |
1057 | 1061 | ||
1058 | public double llRot2Angle(rotation rot) | 1062 | public void llLoadURL(string avatar_id, string message, string url) |
1059 | { | 1063 | { |
1060 | return m_LSL_Functions.llRot2Angle(rot); | 1064 | m_LSL_Functions.llLoadURL(avatar_id, message, url); |
1061 | } | 1065 | } |
1062 | 1066 | ||
1063 | public double llAcos(double val) | 1067 | public LSL_Float llLog(double val) |
1064 | { | 1068 | { |
1065 | return m_LSL_Functions.llAcos(val); | 1069 | return m_LSL_Functions.llLog(val); |
1066 | } | 1070 | } |
1067 | 1071 | ||
1068 | public double llAsin(double val) | 1072 | public LSL_Float llLog10(double val) |
1069 | { | 1073 | { |
1070 | return m_LSL_Functions.llAsin(val); | 1074 | return m_LSL_Functions.llLog10(val); |
1071 | } | 1075 | } |
1072 | 1076 | ||
1073 | public double llAngleBetween(rotation a, rotation b) | 1077 | public void llLookAt(LSL_Vector target, double strength, double damping) |
1074 | { | 1078 | { |
1075 | return m_LSL_Functions.llAngleBetween(a, b); | 1079 | m_LSL_Functions.llLookAt(target, strength, damping); |
1076 | } | 1080 | } |
1077 | 1081 | ||
1078 | public string llGetInventoryKey(string name) | 1082 | public void llLoopSound(string sound, double volume) |
1079 | { | 1083 | { |
1080 | return m_LSL_Functions.llGetInventoryKey(name); | 1084 | m_LSL_Functions.llLoopSound(sound, volume); |
1081 | } | 1085 | } |
1082 | 1086 | ||
1083 | public void llAllowInventoryDrop(int add) | 1087 | public void llLoopSoundMaster(string sound, double volume) |
1084 | { | 1088 | { |
1085 | m_LSL_Functions.llAllowInventoryDrop(add); | 1089 | m_LSL_Functions.llLoopSoundMaster(sound, volume); |
1086 | } | 1090 | } |
1087 | 1091 | ||
1088 | public vector llGetSunDirection() | 1092 | public void llLoopSoundSlave(string sound, double volume) |
1089 | { | 1093 | { |
1090 | return m_LSL_Functions.llGetSunDirection(); | 1094 | m_LSL_Functions.llLoopSoundSlave(sound, volume); |
1091 | } | 1095 | } |
1092 | 1096 | ||
1093 | public vector llGetTextureOffset(int face) | 1097 | public void llMakeExplosion() |
1094 | { | 1098 | { |
1095 | return m_LSL_Functions.llGetTextureOffset(face); | 1099 | m_LSL_Functions.llMakeExplosion(); |
1096 | } | 1100 | } |
1097 | 1101 | ||
1098 | public vector llGetTextureScale(int side) | 1102 | public void llMakeFire() |
1099 | { | 1103 | { |
1100 | return m_LSL_Functions.llGetTextureScale(side); | 1104 | m_LSL_Functions.llMakeFire(); |
1101 | } | 1105 | } |
1102 | 1106 | ||
1103 | public double llGetTextureRot(int side) | 1107 | public void llMakeFountain() |
1104 | { | 1108 | { |
1105 | return m_LSL_Functions.llGetTextureRot(side); | 1109 | m_LSL_Functions.llMakeFountain(); |
1106 | } | 1110 | } |
1107 | 1111 | ||
1108 | public LSL_Types.LSLInteger llSubStringIndex(string source, string pattern) | 1112 | public void llMakeSmoke() |
1109 | { | 1113 | { |
1110 | return m_LSL_Functions.llSubStringIndex(source, pattern); | 1114 | m_LSL_Functions.llMakeSmoke(); |
1111 | } | 1115 | } |
1112 | 1116 | ||
1113 | public string llGetOwnerKey(string id) | 1117 | public void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at) |
1114 | { | 1118 | { |
1115 | return m_LSL_Functions.llGetOwnerKey(id); | 1119 | m_LSL_Functions.llMapDestination(simname, pos, look_at); |
1116 | } | 1120 | } |
1117 | 1121 | ||
1118 | public vector llGetCenterOfMass() | 1122 | public LSL_String llMD5String(string src, int nonce) |
1119 | { | 1123 | { |
1120 | return m_LSL_Functions.llGetCenterOfMass(); | 1124 | return m_LSL_Functions.llMD5String(src, nonce); |
1121 | } | 1125 | } |
1122 | 1126 | ||
1123 | public LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending) | 1127 | public void llMessageLinked(int linknum, int num, string str, string id) |
1124 | { | 1128 | { |
1125 | return m_LSL_Functions.llListSort(src, stride, ascending); | 1129 | m_LSL_Functions.llMessageLinked(linknum, num, str, id); |
1126 | } | 1130 | } |
1127 | 1131 | ||
1128 | public LSL_Types.LSLInteger llGetListLength(LSL_Types.list src) | 1132 | public void llMinEventDelay(double delay) |
1129 | { | 1133 | { |
1130 | return m_LSL_Functions.llGetListLength(src); | 1134 | m_LSL_Functions.llMinEventDelay(delay); |
1131 | } | 1135 | } |
1132 | 1136 | ||
1133 | // | 1137 | public void llModifyLand(int action, int brush) |
1134 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1135 | // | ||
1136 | public LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index) | ||
1137 | { | 1138 | { |
1138 | return m_LSL_Functions.llList2Integer(src, index); | 1139 | m_LSL_Functions.llModifyLand(action, brush); |
1139 | } | 1140 | } |
1140 | 1141 | ||
1141 | public double osList2Double(LSL_Types.list src, int index) | 1142 | public LSL_Integer llModPow(int a, int b, int c) |
1142 | { | 1143 | { |
1143 | return m_LSL_Functions.osList2Double(src, index); | 1144 | return m_LSL_Functions.llModPow(a, b, c); |
1144 | } | 1145 | } |
1145 | 1146 | ||
1146 | public string llList2String(LSL_Types.list src, int index) | 1147 | public void llMoveToTarget(LSL_Vector target, double tau) |
1147 | { | 1148 | { |
1148 | return m_LSL_Functions.llList2String(src, index); | 1149 | m_LSL_Functions.llMoveToTarget(target, tau); |
1149 | } | 1150 | } |
1150 | 1151 | ||
1151 | public string llList2Key(LSL_Types.list src, int index) | 1152 | public void llOffsetTexture(double u, double v, int face) |
1152 | { | 1153 | { |
1153 | return m_LSL_Functions.llList2Key(src, index); | 1154 | m_LSL_Functions.llOffsetTexture(u, v, face); |
1154 | } | 1155 | } |
1155 | 1156 | ||
1156 | public vector llList2Vector(LSL_Types.list src, int index) | 1157 | public void llOpenRemoteDataChannel() |
1157 | { | 1158 | { |
1158 | return m_LSL_Functions.llList2Vector(src, index); | 1159 | m_LSL_Functions.llOpenRemoteDataChannel(); |
1159 | } | 1160 | } |
1160 | 1161 | ||
1161 | public rotation llList2Rot(LSL_Types.list src, int index) | 1162 | public LSL_Integer llOverMyLand(string id) |
1162 | { | 1163 | { |
1163 | return m_LSL_Functions.llList2Rot(src, index); | 1164 | return m_LSL_Functions.llOverMyLand(id); |
1164 | } | 1165 | } |
1165 | 1166 | ||
1166 | public LSL_Types.list llList2List(LSL_Types.list src, int start, int end) | 1167 | public void llOwnerSay(string msg) |
1167 | { | 1168 | { |
1168 | return m_LSL_Functions.llList2List(src, start, end); | 1169 | m_LSL_Functions.llOwnerSay(msg); |
1169 | } | 1170 | } |
1170 | 1171 | ||
1171 | public LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end) | 1172 | public void llParcelMediaCommandList(LSL_List commandList) |
1172 | { | 1173 | { |
1173 | return m_LSL_Functions.llDeleteSubList(src, start, end); | 1174 | m_LSL_Functions.llParcelMediaCommandList(commandList); |
1174 | } | 1175 | } |
1175 | 1176 | ||
1176 | public LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index) | 1177 | public LSL_List llParcelMediaQuery(LSL_List aList) |
1177 | { | 1178 | { |
1178 | return m_LSL_Functions.llGetListEntryType(src, index); | 1179 | return m_LSL_Functions.llParcelMediaQuery(aList); |
1179 | } | 1180 | } |
1180 | 1181 | ||
1181 | public string llList2CSV(LSL_Types.list src) | 1182 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers) |
1182 | { | 1183 | { |
1183 | return m_LSL_Functions.llList2CSV(src); | 1184 | return m_LSL_Functions.llParseString2List(str, separators, spacers); |
1184 | } | 1185 | } |
1185 | 1186 | ||
1186 | public LSL_Types.list llCSV2List(string src) | 1187 | public LSL_List llParseStringKeepNulls(string src, LSL_List seperators, LSL_List spacers) |
1187 | { | 1188 | { |
1188 | return m_LSL_Functions.llCSV2List(src); | 1189 | return m_LSL_Functions.llParseStringKeepNulls(src, seperators, spacers); |
1189 | } | 1190 | } |
1190 | 1191 | ||
1191 | public LSL_Types.list llListRandomize(LSL_Types.list src, int stride) | 1192 | public void llParticleSystem(LSL_List rules) |
1192 | { | 1193 | { |
1193 | return m_LSL_Functions.llListRandomize(src, stride); | 1194 | m_LSL_Functions.llParticleSystem(rules); |
1194 | } | 1195 | } |
1195 | 1196 | ||
1196 | public LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride) | 1197 | public void llPassCollisions(int pass) |
1197 | { | 1198 | { |
1198 | return m_LSL_Functions.llList2ListStrided(src, start, end, stride); | 1199 | m_LSL_Functions.llPassCollisions(pass); |
1199 | } | 1200 | } |
1200 | 1201 | ||
1201 | public vector llGetRegionCorner() | 1202 | public void llPassTouches(int pass) |
1202 | { | 1203 | { |
1203 | return m_LSL_Functions.llGetRegionCorner(); | 1204 | m_LSL_Functions.llPassTouches(pass); |
1204 | } | 1205 | } |
1205 | 1206 | ||
1206 | public LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int start) | 1207 | public void llPlaySound(string sound, double volume) |
1207 | { | 1208 | { |
1208 | return m_LSL_Functions.llListInsertList(dest, src, start); | 1209 | m_LSL_Functions.llPlaySound(sound, volume); |
1209 | } | 1210 | } |
1210 | 1211 | ||
1211 | public LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test) | 1212 | public void llPlaySoundSlave(string sound, double volume) |
1212 | { | 1213 | { |
1213 | return m_LSL_Functions.llListFindList(src, test); | 1214 | m_LSL_Functions.llPlaySoundSlave(sound, volume); |
1214 | } | 1215 | } |
1215 | 1216 | ||
1216 | public string llGetObjectName() | 1217 | public void llPointAt() |
1217 | { | 1218 | { |
1218 | return m_LSL_Functions.llGetObjectName(); | 1219 | m_LSL_Functions.llPointAt(); |
1219 | } | 1220 | } |
1220 | 1221 | ||
1221 | public void llSetObjectName(string name) | 1222 | public LSL_Float llPow(double fbase, double fexponent) |
1222 | { | 1223 | { |
1223 | m_LSL_Functions.llSetObjectName(name); | 1224 | return m_LSL_Functions.llPow(fbase, fexponent); |
1224 | } | 1225 | } |
1225 | 1226 | ||
1226 | public string llGetDate() | 1227 | public void llPreloadSound(string sound) |
1227 | { | 1228 | { |
1228 | return m_LSL_Functions.llGetDate(); | 1229 | m_LSL_Functions.llPreloadSound(sound); |
1229 | } | 1230 | } |
1230 | 1231 | ||
1231 | public LSL_Types.LSLInteger llEdgeOfWorld(vector pos, vector dir) | 1232 | public void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local) |
1232 | { | 1233 | { |
1233 | return m_LSL_Functions.llEdgeOfWorld(pos, dir); | 1234 | m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local); |
1234 | } | 1235 | } |
1235 | 1236 | ||
1236 | public LSL_Types.LSLInteger llGetAgentInfo(string id) | 1237 | public void llRefreshPrimURL() |
1237 | { | 1238 | { |
1238 | return m_LSL_Functions.llGetAgentInfo(id); | 1239 | m_LSL_Functions.llRefreshPrimURL(); |
1239 | } | 1240 | } |
1240 | 1241 | ||
1241 | // | 1242 | public void llRegionSay(int channelID, string text) |
1242 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1243 | // | ||
1244 | public void llAdjustSoundVolume(double volume) | ||
1245 | { | 1243 | { |
1246 | m_LSL_Functions.llAdjustSoundVolume(volume); | 1244 | m_LSL_Functions.llRegionSay(channelID, text); |
1247 | } | 1245 | } |
1248 | 1246 | ||
1249 | public void llSetSoundQueueing(int queue) | 1247 | public void llReleaseCamera(string avatar) |
1250 | { | 1248 | { |
1251 | m_LSL_Functions.llSetSoundQueueing(queue); | 1249 | m_LSL_Functions.llReleaseCamera(avatar); |
1252 | } | 1250 | } |
1253 | 1251 | ||
1254 | public void llSetSoundRadius(double radius) | 1252 | public void llReleaseControls() |
1255 | { | 1253 | { |
1256 | m_LSL_Functions.llSetSoundRadius(radius); | 1254 | m_LSL_Functions.llReleaseControls(); |
1257 | } | 1255 | } |
1258 | 1256 | ||
1259 | public string llKey2Name(string id) | 1257 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) |
1260 | { | 1258 | { |
1261 | return m_LSL_Functions.llKey2Name(id); | 1259 | m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); |
1262 | } | 1260 | } |
1263 | 1261 | ||
1264 | public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate) | 1262 | public void llRemoteDataSetRegion() |
1265 | { | 1263 | { |
1266 | m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate); | 1264 | m_LSL_Functions.llRemoteDataSetRegion(); |
1267 | } | 1265 | } |
1268 | 1266 | ||
1269 | public void llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west) | 1267 | public void llRemoteLoadScript() |
1270 | { | 1268 | { |
1271 | m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west); | 1269 | m_LSL_Functions.llRemoteLoadScript(); |
1272 | } | 1270 | } |
1273 | 1271 | ||
1274 | public void llEjectFromLand(string pest) | 1272 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) |
1275 | { | 1273 | { |
1276 | m_LSL_Functions.llEjectFromLand(pest); | 1274 | m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); |
1277 | } | 1275 | } |
1278 | 1276 | ||
1279 | public LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers) | 1277 | public void llRemoveFromLandBanList(string avatar) |
1280 | { | 1278 | { |
1281 | return m_LSL_Functions.llParseString2List(str,separators,spacers); | 1279 | m_LSL_Functions.llRemoveFromLandBanList(avatar); |
1282 | } | 1280 | } |
1283 | 1281 | ||
1284 | public LSL_Types.LSLInteger llOverMyLand(string id) | 1282 | public void llRemoveFromLandPassList(string avatar) |
1285 | { | 1283 | { |
1286 | return m_LSL_Functions.llOverMyLand(id); | 1284 | m_LSL_Functions.llRemoveFromLandPassList(avatar); |
1287 | } | 1285 | } |
1288 | 1286 | ||
1289 | public string llGetLandOwnerAt(vector pos) | 1287 | public void llRemoveInventory(string item) |
1290 | { | 1288 | { |
1291 | return m_LSL_Functions.llGetLandOwnerAt(pos); | 1289 | m_LSL_Functions.llRemoveInventory(item); |
1292 | } | 1290 | } |
1293 | 1291 | ||
1294 | public string llGetNotecardLine(string name, int line) | 1292 | public void llRemoveVehicleFlags(int flags) |
1295 | { | 1293 | { |
1296 | return m_LSL_Functions.llGetNotecardLine(name, line); | 1294 | m_LSL_Functions.llRemoveVehicleFlags(flags); |
1297 | } | 1295 | } |
1298 | 1296 | ||
1299 | public vector llGetAgentSize(string id) | 1297 | public LSL_Key llRequestAgentData(string id, int data) |
1300 | { | 1298 | { |
1301 | return m_LSL_Functions.llGetAgentSize(id); | 1299 | return m_LSL_Functions.llRequestAgentData(id, data); |
1302 | } | 1300 | } |
1303 | 1301 | ||
1304 | public LSL_Types.LSLInteger llSameGroup(string agent) | 1302 | public LSL_Key llRequestInventoryData(string name) |
1305 | { | 1303 | { |
1306 | return m_LSL_Functions.llSameGroup(agent); | 1304 | return m_LSL_Functions.llRequestInventoryData(name); |
1307 | } | 1305 | } |
1308 | 1306 | ||
1309 | public void llUnSit(string id) | 1307 | public void llRequestPermissions(string agent, int perm) |
1310 | { | 1308 | { |
1311 | m_LSL_Functions.llUnSit(id); | 1309 | m_LSL_Functions.llRequestPermissions(agent, perm); |
1312 | } | 1310 | } |
1313 | 1311 | ||
1314 | public vector llGroundSlope(vector offset) | 1312 | public LSL_Key llRequestSimulatorData(string simulator, int data) |
1315 | { | 1313 | { |
1316 | return m_LSL_Functions.llGroundSlope(offset); | 1314 | return m_LSL_Functions.llRequestSimulatorData(simulator, data); |
1317 | } | 1315 | } |
1318 | 1316 | ||
1319 | public vector llGroundNormal(vector offset) | 1317 | public void llResetLandBanList() |
1320 | { | 1318 | { |
1321 | return m_LSL_Functions.llGroundNormal(offset); | 1319 | m_LSL_Functions.llResetLandBanList(); |
1322 | } | 1320 | } |
1323 | 1321 | ||
1324 | public vector llGroundContour(vector offset) | 1322 | public void llResetLandPassList() |
1325 | { | 1323 | { |
1326 | return m_LSL_Functions.llGroundContour(offset); | 1324 | m_LSL_Functions.llResetLandPassList(); |
1327 | } | 1325 | } |
1328 | 1326 | ||
1329 | public LSL_Types.LSLInteger llGetAttached() | 1327 | public void llResetOtherScript(string name) |
1330 | { | 1328 | { |
1331 | return m_LSL_Functions.llGetAttached(); | 1329 | m_LSL_Functions.llResetOtherScript(name); |
1332 | } | 1330 | } |
1333 | 1331 | ||
1334 | public LSL_Types.LSLInteger llGetFreeMemory() | 1332 | public void llResetScript() |
1335 | { | 1333 | { |
1336 | return m_LSL_Functions.llGetFreeMemory(); | 1334 | m_LSL_Functions.llResetScript(); |
1337 | } | 1335 | } |
1338 | 1336 | ||
1339 | public string llGetRegionName() | 1337 | public void llResetTime() |
1340 | { | 1338 | { |
1341 | return m_LSL_Functions.llGetRegionName(); | 1339 | m_LSL_Functions.llResetTime(); |
1342 | } | 1340 | } |
1343 | 1341 | ||
1344 | public double llGetRegionTimeDilation() | 1342 | public void llRezAtRoot(string inventory, LSL_Vector position, LSL_Vector velocity, LSL_Rotation rot, int param) |
1345 | { | 1343 | { |
1346 | return m_LSL_Functions.llGetRegionTimeDilation(); | 1344 | m_LSL_Functions.llRezAtRoot(inventory, position, velocity, rot, param); |
1347 | } | 1345 | } |
1348 | 1346 | ||
1349 | public double llGetRegionFPS() | 1347 | public void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
1350 | { | 1348 | { |
1351 | return m_LSL_Functions.llGetRegionFPS(); | 1349 | m_LSL_Functions.llRezObject(inventory, pos, vel, rot, param); |
1352 | } | 1350 | } |
1353 | 1351 | ||
1354 | // | 1352 | public LSL_Float llRot2Angle(LSL_Rotation rot) |
1355 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1356 | // | ||
1357 | public void llParticleSystem(LSL_Types.list rules) | ||
1358 | { | 1353 | { |
1359 | m_LSL_Functions.llParticleSystem(rules); | 1354 | return m_LSL_Functions.llRot2Angle(rot); |
1360 | } | 1355 | } |
1361 | 1356 | ||
1362 | public void llGroundRepel(double height, int water, double tau) | 1357 | public LSL_Vector llRot2Axis(LSL_Rotation rot) |
1363 | { | 1358 | { |
1364 | m_LSL_Functions.llGroundRepel(height, water, tau); | 1359 | return m_LSL_Functions.llRot2Axis(rot); |
1365 | } | 1360 | } |
1366 | 1361 | ||
1367 | public void llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | 1362 | public LSL_Vector llRot2Euler(LSL_Rotation r) |
1368 | { | 1363 | { |
1369 | m_LSL_Functions.llGiveInventoryList(destination, category, inventory); | 1364 | return m_LSL_Functions.llRot2Euler(r); |
1370 | } | 1365 | } |
1371 | 1366 | ||
1372 | public void llSetVehicleType(int type) | 1367 | public LSL_Vector llRot2Fwd(LSL_Rotation r) |
1373 | { | 1368 | { |
1374 | m_LSL_Functions.llSetVehicleType(type); | 1369 | return m_LSL_Functions.llRot2Fwd(r); |
1375 | } | 1370 | } |
1376 | 1371 | ||
1377 | public void llSetVehicledoubleParam(int param, double value) | 1372 | public LSL_Vector llRot2Left(LSL_Rotation r) |
1378 | { | 1373 | { |
1379 | m_LSL_Functions.llSetVehicledoubleParam(param, value); | 1374 | return m_LSL_Functions.llRot2Left(r); |
1380 | } | 1375 | } |
1381 | 1376 | ||
1382 | public void llSetVehicleFloatParam(int param, float value) | 1377 | public LSL_Vector llRot2Up(LSL_Rotation r) |
1383 | { | 1378 | { |
1384 | m_LSL_Functions.llSetVehicleFloatParam(param, value); | 1379 | return m_LSL_Functions.llRot2Up(r); |
1385 | } | 1380 | } |
1386 | 1381 | ||
1387 | public void llSetVehicleVectorParam(int param, vector vec) | 1382 | public void llRotateTexture(double rotation, int face) |
1388 | { | 1383 | { |
1389 | m_LSL_Functions.llSetVehicleVectorParam(param, vec); | 1384 | m_LSL_Functions.llRotateTexture(rotation, face); |
1390 | } | 1385 | } |
1391 | 1386 | ||
1392 | public void llSetVehicleRotationParam(int param, rotation rot) | 1387 | public LSL_Rotation llRotBetween(LSL_Vector start, LSL_Vector end) |
1393 | { | 1388 | { |
1394 | m_LSL_Functions.llSetVehicleRotationParam(param, rot); | 1389 | return m_LSL_Functions.llRotBetween(start, end); |
1395 | } | 1390 | } |
1396 | 1391 | ||
1397 | public void llSetVehicleFlags(int flags) | 1392 | public void llRotLookAt(LSL_Rotation target, double strength, double damping) |
1398 | { | 1393 | { |
1399 | m_LSL_Functions.llSetVehicleFlags(flags); | 1394 | m_LSL_Functions.llRotLookAt(target, strength, damping); |
1400 | } | 1395 | } |
1401 | 1396 | ||
1402 | public void llRemoveVehicleFlags(int flags) | 1397 | public LSL_Integer llRotTarget(LSL_Rotation rot, double error) |
1403 | { | 1398 | { |
1404 | m_LSL_Functions.llRemoveVehicleFlags(flags); | 1399 | return m_LSL_Functions.llRotTarget(rot, error); |
1405 | } | 1400 | } |
1406 | 1401 | ||
1407 | public void llSitTarget(vector offset, rotation rot) | 1402 | public void llRotTargetRemove(int number) |
1408 | { | 1403 | { |
1409 | m_LSL_Functions.llSitTarget(offset, rot); | 1404 | m_LSL_Functions.llRotTargetRemove(number); |
1410 | } | 1405 | } |
1411 | 1406 | ||
1412 | public string llAvatarOnSitTarget() | 1407 | public LSL_Integer llRound(double f) |
1413 | { | 1408 | { |
1414 | return m_LSL_Functions.llAvatarOnSitTarget(); | 1409 | return m_LSL_Functions.llRound(f); |
1415 | } | 1410 | } |
1416 | 1411 | ||
1417 | public void llAddToLandPassList(string avatar, double hours) | 1412 | public LSL_Integer llSameGroup(string agent) |
1418 | { | 1413 | { |
1419 | m_LSL_Functions.llAddToLandPassList(avatar, hours); | 1414 | return m_LSL_Functions.llSameGroup(agent); |
1420 | } | 1415 | } |
1421 | 1416 | ||
1422 | public void llSetTouchText(string text) | 1417 | public void llSay(int channelID, string text) |
1423 | { | 1418 | { |
1424 | m_LSL_Functions.llSetTouchText(text); | 1419 | m_LSL_Functions.llSay(channelID, text); |
1425 | } | 1420 | } |
1426 | 1421 | ||
1427 | public void llSetSitText(string text) | 1422 | public void llScaleTexture(double u, double v, int face) |
1428 | { | 1423 | { |
1429 | m_LSL_Functions.llSetSitText(text); | 1424 | m_LSL_Functions.llScaleTexture(u, v, face); |
1430 | } | 1425 | } |
1431 | 1426 | ||
1432 | public void llSetCameraEyeOffset(vector offset) | 1427 | public LSL_Integer llScriptDanger(LSL_Vector pos) |
1433 | { | 1428 | { |
1434 | m_LSL_Functions.llSetCameraEyeOffset(offset); | 1429 | return m_LSL_Functions.llScriptDanger(pos); |
1435 | } | 1430 | } |
1436 | 1431 | ||
1437 | public void llSetCameraAtOffset(vector offset) | 1432 | public LSL_Key llSendRemoteData(string channel, string dest, int idata, string sdata) |
1438 | { | 1433 | { |
1439 | m_LSL_Functions.llSetCameraAtOffset(offset); | 1434 | return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); |
1440 | } | 1435 | } |
1441 | 1436 | ||
1442 | public string llDumpList2String(LSL_Types.list src, string seperator) | 1437 | public void llSensor(string name, string id, int type, double range, double arc) |
1443 | { | 1438 | { |
1444 | return m_LSL_Functions.llDumpList2String(src, seperator); | 1439 | m_LSL_Functions.llSensor(name, id, type, range, arc); |
1445 | } | 1440 | } |
1446 | 1441 | ||
1447 | public LSL_Types.LSLInteger llScriptDanger(vector pos) | 1442 | public void llSensorRemove() |
1448 | { | 1443 | { |
1449 | return m_LSL_Functions.llScriptDanger(pos); | 1444 | m_LSL_Functions.llSensorRemove(); |
1450 | } | 1445 | } |
1451 | 1446 | ||
1452 | public void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel) | 1447 | public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate) |
1453 | { | 1448 | { |
1454 | m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel); | 1449 | m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate); |
1455 | } | 1450 | } |
1456 | 1451 | ||
1457 | public void llVolumeDetect(int detect) | 1452 | public void llSetAlpha(double alpha, int face) |
1458 | { | 1453 | { |
1459 | m_LSL_Functions.llVolumeDetect(detect); | 1454 | m_LSL_Functions.llSetAlpha(alpha, face); |
1460 | } | 1455 | } |
1461 | 1456 | ||
1462 | public void llResetOtherScript(string name) | 1457 | public void llSetBuoyancy(double buoyancy) |
1463 | { | 1458 | { |
1464 | m_LSL_Functions.llResetOtherScript(name); | 1459 | m_LSL_Functions.llSetBuoyancy(buoyancy); |
1465 | } | 1460 | } |
1466 | 1461 | ||
1467 | public LSL_Types.LSLInteger llGetScriptState(string name) | 1462 | public void llSetCameraAtOffset(LSL_Vector offset) |
1468 | { | 1463 | { |
1469 | return m_LSL_Functions.llGetScriptState(name); | 1464 | m_LSL_Functions.llSetCameraAtOffset(offset); |
1470 | } | 1465 | } |
1471 | 1466 | ||
1472 | public void llRemoteLoadScript() | 1467 | public void llSetCameraEyeOffset(LSL_Vector offset) |
1473 | { | 1468 | { |
1474 | m_LSL_Functions.llRemoteLoadScript(); | 1469 | m_LSL_Functions.llSetCameraEyeOffset(offset); |
1475 | } | 1470 | } |
1476 | 1471 | ||
1477 | public void llSetRemoteScriptAccessPin(int pin) | 1472 | public void llSetCameraParams(LSL_List rules) |
1478 | { | 1473 | { |
1479 | m_LSL_Functions.llSetRemoteScriptAccessPin(pin); | 1474 | m_LSL_Functions.llSetCameraParams(rules); |
1480 | } | 1475 | } |
1481 | 1476 | ||
1482 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) | 1477 | public void llSetClickAction(int action) |
1483 | { | 1478 | { |
1484 | m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); | 1479 | m_LSL_Functions.llSetClickAction(action); |
1485 | } | 1480 | } |
1486 | 1481 | ||
1487 | // | 1482 | public void llSetColor(LSL_Vector color, int face) |
1488 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1489 | // | ||
1490 | public void llOpenRemoteDataChannel() | ||
1491 | { | 1483 | { |
1492 | m_LSL_Functions.llOpenRemoteDataChannel(); | 1484 | m_LSL_Functions.llSetColor(color, face); |
1493 | } | 1485 | } |
1494 | 1486 | ||
1495 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) | 1487 | public void llSetDamage(double damage) |
1496 | { | 1488 | { |
1497 | return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); | 1489 | m_LSL_Functions.llSetDamage(damage); |
1498 | } | 1490 | } |
1499 | 1491 | ||
1500 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) | 1492 | public void llSetForce(LSL_Vector force, int local) |
1501 | { | 1493 | { |
1502 | m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); | 1494 | m_LSL_Functions.llSetForce(force, local); |
1503 | } | 1495 | } |
1504 | 1496 | ||
1505 | public void llCloseRemoteDataChannel(string channel) | 1497 | public void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local) |
1506 | { | 1498 | { |
1507 | m_LSL_Functions.llCloseRemoteDataChannel(channel); | 1499 | m_LSL_Functions.llSetForceAndTorque(force, torque, local); |
1508 | } | 1500 | } |
1509 | 1501 | ||
1510 | public string llMD5String(string src, int nonce) | 1502 | public void llSetHoverHeight(double height, int water, double tau) |
1511 | { | 1503 | { |
1512 | return m_LSL_Functions.llMD5String(src, nonce); | 1504 | m_LSL_Functions.llSetHoverHeight(height, water, tau); |
1513 | } | 1505 | } |
1514 | 1506 | ||
1515 | public void llSetPrimitiveParams(LSL_Types.list rules) | 1507 | public void llSetInventoryPermMask(string item, int mask, int value) |
1516 | { | 1508 | { |
1517 | m_LSL_Functions.llSetPrimitiveParams(rules); | 1509 | m_LSL_Functions.llSetInventoryPermMask(item, mask, value); |
1518 | } | 1510 | } |
1519 | 1511 | ||
1520 | public void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules) | 1512 | public void llSetLinkAlpha(int linknumber, double alpha, int face) |
1521 | { | 1513 | { |
1522 | m_LSL_Functions.llSetLinkPrimitiveParams(linknumber, rules); | 1514 | m_LSL_Functions.llSetLinkAlpha(linknumber, alpha, face); |
1523 | } | 1515 | } |
1524 | public string llStringToBase64(string str) | 1516 | |
1517 | public void llSetLinkColor(int linknumber, LSL_Vector color, int face) | ||
1525 | { | 1518 | { |
1526 | return m_LSL_Functions.llStringToBase64(str); | 1519 | m_LSL_Functions.llSetLinkColor(linknumber, color, face); |
1527 | } | 1520 | } |
1528 | 1521 | ||
1529 | public string llBase64ToString(string str) | 1522 | public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules) |
1530 | { | 1523 | { |
1531 | return m_LSL_Functions.llBase64ToString(str); | 1524 | m_LSL_Functions.llSetLinkPrimitiveParams(linknumber, rules); |
1532 | } | 1525 | } |
1533 | 1526 | ||
1534 | public void llXorBase64Strings() | 1527 | public void llSetLinkTexture(int linknumber, string texture, int face) |
1535 | { | 1528 | { |
1536 | m_LSL_Functions.llXorBase64Strings(); | 1529 | m_LSL_Functions.llSetLinkTexture(linknumber, texture, face); |
1537 | } | 1530 | } |
1538 | 1531 | ||
1539 | public void llRemoteDataSetRegion() | 1532 | public void llSetLocalRot(LSL_Rotation rot) |
1540 | { | 1533 | { |
1541 | m_LSL_Functions.llRemoteDataSetRegion(); | 1534 | m_LSL_Functions.llSetLocalRot(rot); |
1542 | } | 1535 | } |
1543 | 1536 | ||
1544 | public double llLog10(double val) | 1537 | public void llSetObjectDesc(string desc) |
1545 | { | 1538 | { |
1546 | return m_LSL_Functions.llLog10(val); | 1539 | m_LSL_Functions.llSetObjectDesc(desc); |
1547 | } | 1540 | } |
1548 | 1541 | ||
1549 | public double llLog(double val) | 1542 | public void llSetObjectName(string name) |
1550 | { | 1543 | { |
1551 | return m_LSL_Functions.llLog(val); | 1544 | m_LSL_Functions.llSetObjectName(name); |
1552 | } | 1545 | } |
1553 | 1546 | ||
1554 | public LSL_Types.list llGetAnimationList(string id) | 1547 | public void llSetObjectPermMask(int mask, int value) |
1555 | { | 1548 | { |
1556 | return m_LSL_Functions.llGetAnimationList(id); | 1549 | m_LSL_Functions.llSetObjectPermMask(mask, value); |
1557 | } | 1550 | } |
1558 | 1551 | ||
1559 | public void llSetParcelMusicURL(string url) | 1552 | public void llSetParcelMusicURL(string url) |
@@ -1561,323 +1554,324 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1561 | m_LSL_Functions.llSetParcelMusicURL(url); | 1554 | m_LSL_Functions.llSetParcelMusicURL(url); |
1562 | } | 1555 | } |
1563 | 1556 | ||
1564 | public vector llGetRootPosition() | 1557 | public void llSetPayPrice(int price, LSL_List quick_pay_buttons) |
1565 | { | 1558 | { |
1566 | return m_LSL_Functions.llGetRootPosition(); | 1559 | m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); |
1567 | } | 1560 | } |
1568 | 1561 | ||
1569 | public rotation llGetRootRotation() | 1562 | public void llSetPos(LSL_Vector pos) |
1570 | { | 1563 | { |
1571 | return m_LSL_Functions.llGetRootRotation(); | 1564 | m_LSL_Functions.llSetPos(pos); |
1572 | } | 1565 | } |
1573 | 1566 | ||
1574 | public string llGetObjectDesc() | 1567 | public void llSetPrimitiveParams(LSL_List rules) |
1575 | { | 1568 | { |
1576 | return m_LSL_Functions.llGetObjectDesc(); | 1569 | m_LSL_Functions.llSetPrimitiveParams(rules); |
1577 | } | 1570 | } |
1578 | 1571 | ||
1579 | public void llSetObjectDesc(string desc) | 1572 | public void llSetPrimURL() |
1580 | { | 1573 | { |
1581 | m_LSL_Functions.llSetObjectDesc(desc); | 1574 | m_LSL_Functions.llSetPrimURL(); |
1582 | } | 1575 | } |
1583 | 1576 | ||
1584 | public string llGetCreator() | 1577 | public void llSetRemoteScriptAccessPin(int pin) |
1585 | { | 1578 | { |
1586 | return m_LSL_Functions.llGetCreator(); | 1579 | m_LSL_Functions.llSetRemoteScriptAccessPin(pin); |
1587 | } | 1580 | } |
1588 | 1581 | ||
1589 | public string llGetTimestamp() | 1582 | public void llSetRot(LSL_Rotation rot) |
1590 | { | 1583 | { |
1591 | return m_LSL_Functions.llGetTimestamp(); | 1584 | m_LSL_Functions.llSetRot(rot); |
1592 | } | 1585 | } |
1593 | 1586 | ||
1594 | public void llSetLinkAlpha(int linknumber, double alpha, int face) | 1587 | public void llSetScale(LSL_Vector scale) |
1595 | { | 1588 | { |
1596 | m_LSL_Functions.llSetLinkAlpha(linknumber, alpha, face); | 1589 | m_LSL_Functions.llSetScale(scale); |
1597 | } | 1590 | } |
1598 | 1591 | ||
1599 | public LSL_Types.LSLInteger llGetNumberOfPrims() | 1592 | public void llSetScriptState(string name, int run) |
1600 | { | 1593 | { |
1601 | return m_LSL_Functions.llGetNumberOfPrims(); | 1594 | m_LSL_Functions.llSetScriptState(name, run); |
1602 | } | 1595 | } |
1603 | 1596 | ||
1604 | public string llGetNumberOfNotecardLines(string name) | 1597 | public void llSetSitText(string text) |
1605 | { | 1598 | { |
1606 | return m_LSL_Functions.llGetNumberOfNotecardLines(name); | 1599 | m_LSL_Functions.llSetSitText(text); |
1607 | } | 1600 | } |
1608 | 1601 | ||
1609 | public LSL_Types.list llGetBoundingBox(string obj) | 1602 | public void llSetSoundQueueing(int queue) |
1610 | { | 1603 | { |
1611 | return m_LSL_Functions.llGetBoundingBox(obj); | 1604 | m_LSL_Functions.llSetSoundQueueing(queue); |
1612 | } | 1605 | } |
1613 | 1606 | ||
1614 | public vector llGetGeometricCenter() | 1607 | public void llSetSoundRadius(double radius) |
1615 | { | 1608 | { |
1616 | return m_LSL_Functions.llGetGeometricCenter(); | 1609 | m_LSL_Functions.llSetSoundRadius(radius); |
1617 | } | 1610 | } |
1618 | 1611 | ||
1619 | public LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules) | 1612 | public void llSetStatus(int status, int value) |
1620 | { | 1613 | { |
1621 | return m_LSL_Functions.llGetPrimitiveParams(rules); | 1614 | m_LSL_Functions.llSetStatus(status, value); |
1622 | } | 1615 | } |
1623 | 1616 | ||
1624 | // | 1617 | public void llSetText(string text, LSL_Vector color, double alpha) |
1625 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1626 | // | ||
1627 | public string llIntegerToBase64(int number) | ||
1628 | { | 1618 | { |
1629 | return m_LSL_Functions.llIntegerToBase64(number); | 1619 | m_LSL_Functions.llSetText(text, color, alpha); |
1630 | } | 1620 | } |
1631 | 1621 | ||
1632 | public LSL_Types.LSLInteger llBase64ToInteger(string str) | 1622 | public void llSetTexture(string texture, int face) |
1633 | { | 1623 | { |
1634 | return m_LSL_Functions.llBase64ToInteger(str); | 1624 | m_LSL_Functions.llSetTexture(texture, face); |
1635 | } | 1625 | } |
1636 | 1626 | ||
1637 | public double llGetGMTclock() | 1627 | public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate) |
1638 | { | 1628 | { |
1639 | return m_LSL_Functions.llGetGMTclock(); | 1629 | m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate); |
1640 | } | 1630 | } |
1641 | 1631 | ||
1642 | public string llGetSimulatorHostname() | 1632 | public void llSetTimerEvent(double sec) |
1643 | { | 1633 | { |
1644 | return m_LSL_Functions.llGetSimulatorHostname(); | 1634 | m_LSL_Functions.llSetTimerEvent(sec); |
1645 | } | 1635 | } |
1646 | 1636 | ||
1647 | public void llSetLocalRot(rotation rot) | 1637 | public void llSetTorque(LSL_Vector torque, int local) |
1648 | { | 1638 | { |
1649 | m_LSL_Functions.llSetLocalRot(rot); | 1639 | m_LSL_Functions.llSetTorque(torque, local); |
1650 | } | 1640 | } |
1651 | 1641 | ||
1652 | public LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list seperators, LSL_Types.list spacers) | 1642 | public void llSetTouchText(string text) |
1653 | { | 1643 | { |
1654 | return m_LSL_Functions.llParseStringKeepNulls(src, seperators, spacers); | 1644 | m_LSL_Functions.llSetTouchText(text); |
1655 | } | 1645 | } |
1656 | 1646 | ||
1657 | public void llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, int param) | 1647 | public void llSetVehicleFlags(int flags) |
1658 | { | 1648 | { |
1659 | m_LSL_Functions.llRezAtRoot(inventory, position, velocity, rot, param); | 1649 | m_LSL_Functions.llSetVehicleFlags(flags); |
1660 | } | 1650 | } |
1661 | 1651 | ||
1662 | public LSL_Types.LSLInteger llGetObjectPermMask(int mask) | 1652 | public void llSetVehicleFloatParam(int param, float value) |
1663 | { | 1653 | { |
1664 | return m_LSL_Functions.llGetObjectPermMask(mask); | 1654 | m_LSL_Functions.llSetVehicleFloatParam(param, value); |
1665 | } | 1655 | } |
1666 | 1656 | ||
1667 | public void llSetObjectPermMask(int mask, int value) | 1657 | public void llSetVehicleRotationParam(int param, LSL_Rotation rot) |
1668 | { | 1658 | { |
1669 | m_LSL_Functions.llSetObjectPermMask(mask, value); | 1659 | m_LSL_Functions.llSetVehicleRotationParam(param, rot); |
1670 | } | 1660 | } |
1671 | 1661 | ||
1672 | public LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask) | 1662 | public void llSetVehicleType(int type) |
1673 | { | 1663 | { |
1674 | return m_LSL_Functions.llGetInventoryPermMask(item, mask); | 1664 | m_LSL_Functions.llSetVehicleType(type); |
1675 | } | 1665 | } |
1676 | 1666 | ||
1677 | public void llSetInventoryPermMask(string item, int mask, int value) | 1667 | public void llSetVehicleVectorParam(int param, LSL_Vector vec) |
1678 | { | 1668 | { |
1679 | m_LSL_Functions.llSetInventoryPermMask(item, mask, value); | 1669 | m_LSL_Functions.llSetVehicleVectorParam(param, vec); |
1680 | } | 1670 | } |
1681 | 1671 | ||
1682 | public string llGetInventoryCreator(string item) | 1672 | public void llShout(int channelID, string text) |
1683 | { | 1673 | { |
1684 | return m_LSL_Functions.llGetInventoryCreator(item); | 1674 | m_LSL_Functions.llShout(channelID, text); |
1685 | } | 1675 | } |
1686 | 1676 | ||
1687 | public string llRequestSimulatorData(string simulator, int data) | 1677 | public LSL_Float llSin(double f) |
1688 | { | 1678 | { |
1689 | return m_LSL_Functions.llRequestSimulatorData(simulator, data); | 1679 | return m_LSL_Functions.llSin(f); |
1690 | } | 1680 | } |
1691 | 1681 | ||
1692 | public void llForceMouselook(int mouselook) | 1682 | public void llSitTarget(LSL_Vector offset, LSL_Rotation rot) |
1693 | { | 1683 | { |
1694 | m_LSL_Functions.llForceMouselook(mouselook); | 1684 | m_LSL_Functions.llSitTarget(offset, rot); |
1695 | } | 1685 | } |
1696 | 1686 | ||
1697 | public double llGetObjectMass(string id) | 1687 | public void llSleep(double sec) |
1698 | { | 1688 | { |
1699 | return m_LSL_Functions.llGetObjectMass(id); | 1689 | m_LSL_Functions.llSleep(sec); |
1700 | } | 1690 | } |
1701 | 1691 | ||
1702 | public LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end) | 1692 | public void llSound() |
1703 | { | 1693 | { |
1704 | return m_LSL_Functions.llListReplaceList(dest, src, start, end); | 1694 | m_LSL_Functions.llSound(); |
1705 | } | 1695 | } |
1706 | 1696 | ||
1707 | public void llLoadURL(string avatar_id, string message, string url) | 1697 | public void llSoundPreload() |
1708 | { | 1698 | { |
1709 | m_LSL_Functions.llLoadURL(avatar_id, message, url); | 1699 | m_LSL_Functions.llSoundPreload(); |
1710 | } | 1700 | } |
1711 | 1701 | ||
1712 | public void llParcelMediaCommandList(LSL_Types.list commandList) | 1702 | public LSL_Float llSqrt(double f) |
1713 | { | 1703 | { |
1714 | m_LSL_Functions.llParcelMediaCommandList(commandList); | 1704 | return m_LSL_Functions.llSqrt(f); |
1715 | } | 1705 | } |
1716 | 1706 | ||
1717 | public LSL_Types.list llParcelMediaQuery(LSL_Types.list aList) | 1707 | public void llStartAnimation(string anim) |
1718 | { | 1708 | { |
1719 | return m_LSL_Functions.llParcelMediaQuery(aList); | 1709 | m_LSL_Functions.llStartAnimation(anim); |
1720 | } | 1710 | } |
1721 | 1711 | ||
1722 | public LSL_Types.LSLInteger llModPow(int a, int b, int c) | 1712 | public void llStopAnimation(string anim) |
1723 | { | 1713 | { |
1724 | return m_LSL_Functions.llModPow(a, b, c); | 1714 | m_LSL_Functions.llStopAnimation(anim); |
1725 | } | 1715 | } |
1726 | 1716 | ||
1727 | // | 1717 | public void llStopHover() |
1728 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1729 | // | ||
1730 | public LSL_Types.LSLInteger llGetInventoryType(string name) | ||
1731 | { | 1718 | { |
1732 | return m_LSL_Functions.llGetInventoryType(name); | 1719 | m_LSL_Functions.llStopHover(); |
1733 | } | 1720 | } |
1734 | 1721 | ||
1735 | public void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons) | 1722 | public void llStopLookAt() |
1736 | { | 1723 | { |
1737 | m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); | 1724 | m_LSL_Functions.llStopLookAt(); |
1738 | } | 1725 | } |
1739 | 1726 | ||
1740 | public vector llGetCameraPos() | 1727 | public void llStopMoveToTarget() |
1741 | { | 1728 | { |
1742 | return m_LSL_Functions.llGetCameraPos(); | 1729 | m_LSL_Functions.llStopMoveToTarget(); |
1743 | } | 1730 | } |
1744 | 1731 | ||
1745 | public rotation llGetCameraRot() | 1732 | public void llStopPointAt() |
1746 | { | 1733 | { |
1747 | return m_LSL_Functions.llGetCameraRot(); | 1734 | m_LSL_Functions.llStopPointAt(); |
1748 | } | 1735 | } |
1749 | 1736 | ||
1750 | public void llSetPrimURL() | 1737 | public void llStopSound() |
1751 | { | 1738 | { |
1752 | m_LSL_Functions.llSetPrimURL(); | 1739 | m_LSL_Functions.llStopSound(); |
1753 | } | 1740 | } |
1754 | 1741 | ||
1755 | public void llRefreshPrimURL() | 1742 | public LSL_Integer llStringLength(string str) |
1756 | { | 1743 | { |
1757 | m_LSL_Functions.llRefreshPrimURL(); | 1744 | return m_LSL_Functions.llStringLength(str); |
1758 | } | 1745 | } |
1759 | 1746 | ||
1760 | public string llEscapeURL(string url) | 1747 | public LSL_String llStringToBase64(string str) |
1761 | { | 1748 | { |
1762 | return m_LSL_Functions.llEscapeURL(url); | 1749 | return m_LSL_Functions.llStringToBase64(str); |
1763 | } | 1750 | } |
1764 | 1751 | ||
1765 | public string llUnescapeURL(string url) | 1752 | public LSL_String llStringTrim(string src, int type) |
1766 | { | 1753 | { |
1767 | return m_LSL_Functions.llUnescapeURL(url); | 1754 | return m_LSL_Functions.llStringTrim(src, type); |
1768 | } | 1755 | } |
1769 | 1756 | ||
1770 | public void llMapDestination(string simname, vector pos, vector look_at) | 1757 | public LSL_Integer llSubStringIndex(string source, string pattern) |
1771 | { | 1758 | { |
1772 | m_LSL_Functions.llMapDestination(simname, pos, look_at); | 1759 | return m_LSL_Functions.llSubStringIndex(source, pattern); |
1773 | } | 1760 | } |
1774 | 1761 | ||
1775 | public void llAddToLandBanList(string avatar, double hours) | 1762 | public void llTakeCamera(string avatar) |
1776 | { | 1763 | { |
1777 | m_LSL_Functions.llAddToLandBanList(avatar, hours); | 1764 | m_LSL_Functions.llTakeCamera(avatar); |
1778 | } | 1765 | } |
1779 | 1766 | ||
1780 | public void llRemoveFromLandPassList(string avatar) | 1767 | public void llTakeControls(int controls, int accept, int pass_on) |
1781 | { | 1768 | { |
1782 | m_LSL_Functions.llRemoveFromLandPassList(avatar); | 1769 | m_LSL_Functions.llTakeControls(controls, accept, pass_on); |
1783 | } | 1770 | } |
1784 | 1771 | ||
1785 | public void llRemoveFromLandBanList(string avatar) | 1772 | public LSL_Float llTan(double f) |
1786 | { | 1773 | { |
1787 | m_LSL_Functions.llRemoveFromLandBanList(avatar); | 1774 | return m_LSL_Functions.llTan(f); |
1788 | } | 1775 | } |
1789 | 1776 | ||
1790 | public void llSetCameraParams(LSL_Types.list rules) | 1777 | public LSL_Integer llTarget(LSL_Vector position, double range) |
1791 | { | 1778 | { |
1792 | m_LSL_Functions.llSetCameraParams(rules); | 1779 | return m_LSL_Functions.llTarget(position, range); |
1793 | } | 1780 | } |
1794 | 1781 | ||
1795 | public void llClearCameraParams() | 1782 | public void llTargetOmega(LSL_Vector axis, double spinrate, double gain) |
1796 | { | 1783 | { |
1797 | m_LSL_Functions.llClearCameraParams(); | 1784 | m_LSL_Functions.llTargetOmega(axis, spinrate, gain); |
1798 | } | 1785 | } |
1799 | 1786 | ||
1800 | public double llListStatistics(int operation, LSL_Types.list src) | 1787 | public void llTargetRemove(int number) |
1801 | { | 1788 | { |
1802 | return m_LSL_Functions.llListStatistics(operation, src); | 1789 | m_LSL_Functions.llTargetRemove(number); |
1803 | } | 1790 | } |
1804 | 1791 | ||
1805 | public LSL_Types.LSLInteger llGetUnixTime() | 1792 | public void llTeleportAgentHome(string agent) |
1806 | { | 1793 | { |
1807 | return m_LSL_Functions.llGetUnixTime(); | 1794 | m_LSL_Functions.llTeleportAgentHome(agent); |
1808 | } | 1795 | } |
1809 | 1796 | ||
1810 | public LSL_Types.LSLInteger llGetParcelFlags(vector pos) | 1797 | public void llTextBox(string avatar, string message, int chat_channel) |
1811 | { | 1798 | { |
1812 | return m_LSL_Functions.llGetParcelFlags(pos); | 1799 | m_LSL_Functions.llTextBox(avatar, message, chat_channel); |
1813 | } | 1800 | } |
1814 | 1801 | ||
1815 | public LSL_Types.LSLInteger llGetRegionFlags() | 1802 | public LSL_String llToLower(string source) |
1816 | { | 1803 | { |
1817 | return m_LSL_Functions.llGetRegionFlags(); | 1804 | return m_LSL_Functions.llToLower(source); |
1818 | } | 1805 | } |
1819 | 1806 | ||
1820 | public string llXorBase64StringsCorrect(string str1, string str2) | 1807 | public LSL_String llToUpper(string source) |
1821 | { | 1808 | { |
1822 | return m_LSL_Functions.llXorBase64StringsCorrect(str1, str2); | 1809 | return m_LSL_Functions.llToUpper(source); |
1823 | } | 1810 | } |
1824 | 1811 | ||
1825 | public string llHTTPRequest(string url, LSL_Types.list parameters, string body) | 1812 | public void llTriggerSound(string sound, double volume) |
1826 | { | 1813 | { |
1827 | return m_LSL_Functions.llHTTPRequest(url, parameters, body); | 1814 | m_LSL_Functions.llTriggerSound(sound, volume); |
1828 | } | 1815 | } |
1829 | 1816 | ||
1830 | public void llResetLandBanList() | 1817 | public void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, LSL_Vector bottom_south_west) |
1831 | { | 1818 | { |
1832 | m_LSL_Functions.llResetLandBanList(); | 1819 | m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west); |
1833 | } | 1820 | } |
1834 | 1821 | ||
1835 | public void llResetLandPassList() | 1822 | public LSL_String llUnescapeURL(string url) |
1836 | { | 1823 | { |
1837 | m_LSL_Functions.llResetLandPassList(); | 1824 | return m_LSL_Functions.llUnescapeURL(url); |
1838 | } | 1825 | } |
1839 | 1826 | ||
1840 | public LSL_Types.LSLInteger llGetParcelPrimCount(vector pos, int category, int sim_wide) | 1827 | public void llUnSit(string id) |
1841 | { | 1828 | { |
1842 | return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); | 1829 | m_LSL_Functions.llUnSit(id); |
1843 | } | 1830 | } |
1844 | 1831 | ||
1845 | public LSL_Types.list llGetParcelPrimOwners(vector pos) | 1832 | public LSL_Float llVecDist(LSL_Vector a, LSL_Vector b) |
1846 | { | 1833 | { |
1847 | return m_LSL_Functions.llGetParcelPrimOwners(pos); | 1834 | return m_LSL_Functions.llVecDist(a, b); |
1848 | } | 1835 | } |
1849 | 1836 | ||
1850 | public LSL_Types.LSLInteger llGetObjectPrimCount(string object_id) | 1837 | public LSL_Float llVecMag(LSL_Vector v) |
1851 | { | 1838 | { |
1852 | return m_LSL_Functions.llGetObjectPrimCount(object_id); | 1839 | return m_LSL_Functions.llVecMag(v); |
1853 | } | 1840 | } |
1854 | 1841 | ||
1855 | // | 1842 | public LSL_Vector llVecNorm(LSL_Vector v) |
1856 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
1857 | // | ||
1858 | public LSL_Types.LSLInteger llGetParcelMaxPrims(vector pos, int sim_wide) | ||
1859 | { | 1843 | { |
1860 | return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); | 1844 | return m_LSL_Functions.llVecNorm(v); |
1861 | } | 1845 | } |
1862 | 1846 | ||
1863 | public LSL_Types.list llGetParcelDetails(vector pos, LSL_Types.list param) | 1847 | public void llVolumeDetect(int detect) |
1864 | { | 1848 | { |
1865 | return m_LSL_Functions.llGetParcelDetails(pos, param); | 1849 | m_LSL_Functions.llVolumeDetect(detect); |
1866 | } | 1850 | } |
1867 | 1851 | ||
1868 | public void llSetLinkTexture(int linknumber, string texture, int face) | 1852 | public LSL_Float llWater(LSL_Vector offset) |
1869 | { | 1853 | { |
1870 | m_LSL_Functions.llSetLinkTexture(linknumber, texture, face); | 1854 | return m_LSL_Functions.llWater(offset); |
1871 | } | 1855 | } |
1872 | 1856 | ||
1873 | public string llStringTrim(string src, int type) | 1857 | public void llWhisper(int channelID, string text) |
1874 | { | 1858 | { |
1875 | return m_LSL_Functions.llStringTrim(src, type); | 1859 | m_LSL_Functions.llWhisper(channelID, text); |
1876 | } | 1860 | } |
1877 | 1861 | ||
1878 | public LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | 1862 | public LSL_Vector llWind(LSL_Vector offset) |
1879 | { | 1863 | { |
1880 | return m_LSL_Functions.llGetObjectDetails(id, args); | 1864 | return m_LSL_Functions.llWind(offset); |
1865 | } | ||
1866 | |||
1867 | public void llXorBase64Strings() | ||
1868 | { | ||
1869 | m_LSL_Functions.llXorBase64Strings(); | ||
1870 | } | ||
1871 | |||
1872 | public LSL_String llXorBase64StringsCorrect(string str1, string str2) | ||
1873 | { | ||
1874 | return m_LSL_Functions.llXorBase64StringsCorrect(str1, str2); | ||
1881 | } | 1875 | } |
1882 | 1876 | ||
1883 | // | 1877 | // |
@@ -1944,12 +1938,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1944 | 1938 | ||
1945 | // Teleport Functions | 1939 | // Teleport Functions |
1946 | 1940 | ||
1947 | public void osTeleportAgent(string agent, string regionName, vector position, vector lookat) | 1941 | public void osTeleportAgent(string agent, string regionName, LSL_Vector position, LSL_Vector lookat) |
1948 | { | 1942 | { |
1949 | m_LSL_Functions.osTeleportAgent(agent, regionName, position, lookat); | 1943 | m_LSL_Functions.osTeleportAgent(agent, regionName, position, lookat); |
1950 | } | 1944 | } |
1951 | 1945 | ||
1952 | public void osTeleportAgent(string agent, vector position, vector lookat) | 1946 | public void osTeleportAgent(string agent, LSL_Vector position, LSL_Vector lookat) |
1953 | { | 1947 | { |
1954 | m_LSL_Functions.osTeleportAgent(agent, position, lookat); | 1948 | m_LSL_Functions.osTeleportAgent(agent, position, lookat); |
1955 | } | 1949 | } |
@@ -2039,14 +2033,6 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2039 | return m_LSL_Functions.osGetScriptEngineName(); | 2033 | return m_LSL_Functions.osGetScriptEngineName(); |
2040 | } | 2034 | } |
2041 | 2035 | ||
2042 | // | ||
2043 | |||
2044 | public double llList2Float(LSL_Types.list src, int index) | ||
2045 | { | ||
2046 | return m_LSL_Functions.llList2Float(src, index); | ||
2047 | } | ||
2048 | |||
2049 | |||
2050 | public System.Collections.Hashtable osParseJSON(string JSON) | 2036 | public System.Collections.Hashtable osParseJSON(string JSON) |
2051 | { | 2037 | { |
2052 | return m_LSL_Functions.osParseJSON(JSON); | 2038 | return m_LSL_Functions.osParseJSON(JSON); |
@@ -2471,8 +2457,8 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2471 | public const int OBJECT_CREATOR = 8; | 2457 | public const int OBJECT_CREATOR = 8; |
2472 | 2458 | ||
2473 | // Can not be public const? | 2459 | // Can not be public const? |
2474 | public static readonly vector ZERO_VECTOR = new vector(0.0, 0.0, 0.0); | 2460 | public static readonly LSL_Vector ZERO_VECTOR = new LSL_Vector(0f, 0f, 0f); |
2475 | public static readonly rotation ZERO_ROTATION = new rotation(0.0, 0, 0.0, 1.0); | 2461 | public static readonly LSL_Rotation ZERO_ROTATION = new LSL_Rotation(0f, 0f, 0f, 1f); |
2476 | 2462 | ||
2477 | // constants for llSetCameraParams | 2463 | // constants for llSetCameraParams |
2478 | public const int CAMERA_PITCH = 0; | 2464 | public const int CAMERA_PITCH = 0; |
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs index 90cd3b1..1017fd8 100644 --- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs | |||
@@ -45,7 +45,13 @@ using OpenSim.Region.Environment.Scenes; | |||
45 | using OpenSim.Region.Physics.Manager; | 45 | using OpenSim.Region.Physics.Manager; |
46 | using OpenSim.Region.ScriptEngine.Common.ScriptEngineBase; | 46 | using OpenSim.Region.ScriptEngine.Common.ScriptEngineBase; |
47 | 47 | ||
48 | //using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL; | 48 | using LSL_Float = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLFloat; |
49 | using LSL_Integer = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLInteger; | ||
50 | using LSL_Key = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; | ||
51 | using LSL_List = OpenSim.Region.ScriptEngine.Common.LSL_Types.list; | ||
52 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion; | ||
53 | using LSL_String = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; | ||
54 | using LSL_Vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3; | ||
49 | 55 | ||
50 | namespace OpenSim.Region.ScriptEngine.Common | 56 | namespace OpenSim.Region.ScriptEngine.Common |
51 | { | 57 | { |
@@ -61,6 +67,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
61 | internal uint m_localID; | 67 | internal uint m_localID; |
62 | internal UUID m_itemID; | 68 | internal UUID m_itemID; |
63 | internal bool throwErrorOnNotImplemented = true; | 69 | internal bool throwErrorOnNotImplemented = true; |
70 | internal float m_delayFactor = 1.0f; | ||
71 | internal float m_distanceFactor = 1.0f; | ||
72 | |||
64 | 73 | ||
65 | public LSL_BuiltIn_Commands(ScriptEngineBase.ScriptEngine ScriptEngine, SceneObjectPart host, uint localID, UUID itemID) | 74 | public LSL_BuiltIn_Commands(ScriptEngineBase.ScriptEngine ScriptEngine, SceneObjectPart host, uint localID, UUID itemID) |
66 | { | 75 | { |
@@ -81,12 +90,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
81 | 90 | ||
82 | } | 91 | } |
83 | 92 | ||
84 | private DateTime m_timer = DateTime.Now; | ||
85 | private string m_state = "default"; | 93 | private string m_state = "default"; |
94 | private DateTime m_timer = DateTime.Now; | ||
86 | private bool m_waitingForScriptAnswer=false; | 95 | private bool m_waitingForScriptAnswer=false; |
87 | private float m_delayFactor = 1.0f; | ||
88 | private float m_distanceFactor = 1.0f; | ||
89 | |||
90 | 96 | ||
91 | protected void ScriptSleep(int delay) | 97 | protected void ScriptSleep(int delay) |
92 | { | 98 | { |
@@ -96,6 +102,23 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
96 | System.Threading.Thread.Sleep(delay); | 102 | System.Threading.Thread.Sleep(delay); |
97 | } | 103 | } |
98 | 104 | ||
105 | // Object never expires | ||
106 | public override Object InitializeLifetimeService() | ||
107 | { | ||
108 | ILease lease = (ILease)base.InitializeLifetimeService(); | ||
109 | |||
110 | if (lease.CurrentState == LeaseState.Initial) | ||
111 | { | ||
112 | lease.InitialLeaseTime = TimeSpan.Zero; | ||
113 | } | ||
114 | return lease; | ||
115 | } | ||
116 | |||
117 | public Scene World | ||
118 | { | ||
119 | get { return m_ScriptEngine.World; } | ||
120 | } | ||
121 | |||
99 | public string State | 122 | public string State |
100 | { | 123 | { |
101 | get { return m_state; } | 124 | get { return m_state; } |
@@ -127,23 +150,6 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
127 | } | 150 | } |
128 | } | 151 | } |
129 | 152 | ||
130 | // Object never expires | ||
131 | public override Object InitializeLifetimeService() | ||
132 | { | ||
133 | ILease lease = (ILease)base.InitializeLifetimeService(); | ||
134 | |||
135 | if (lease.CurrentState == LeaseState.Initial) | ||
136 | { | ||
137 | lease.InitialLeaseTime = TimeSpan.Zero; | ||
138 | } | ||
139 | return lease; | ||
140 | } | ||
141 | |||
142 | public Scene World | ||
143 | { | ||
144 | get { return m_ScriptEngine.World; } | ||
145 | } | ||
146 | |||
147 | // Extension commands use this: | 153 | // Extension commands use this: |
148 | public ICommander GetCommander(string name) | 154 | public ICommander GetCommander(string name) |
149 | { | 155 | { |
@@ -220,68 +226,57 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
220 | } | 226 | } |
221 | } | 227 | } |
222 | 228 | ||
223 | public void osSetRegionWaterHeight(double height) | ||
224 | { | ||
225 | m_host.AddScriptLPS(1); | ||
226 | //Check to make sure that the script's owner is the estate manager/master | ||
227 | //World.Permissions.GenericEstatePermission( | ||
228 | if (World.ExternalChecks.ExternalChecksCanBeGodLike(m_host.OwnerID)) | ||
229 | { | ||
230 | World.EventManager.TriggerRequestChangeWaterHeight((float)height); | ||
231 | } | ||
232 | } | ||
233 | |||
234 | //These are the implementations of the various ll-functions used by the LSL scripts. | 229 | //These are the implementations of the various ll-functions used by the LSL scripts. |
235 | //starting out, we use the System.Math library for trig functions. - ckrinke 8-14-07 | 230 | //starting out, we use the System.Math library for trig functions. - ckrinke 8-14-07 |
236 | public double llSin(double f) | 231 | public LSL_Float llSin(double f) |
237 | { | 232 | { |
238 | m_host.AddScriptLPS(1); | 233 | m_host.AddScriptLPS(1); |
239 | return (double)Math.Sin(f); | 234 | return (double)Math.Sin(f); |
240 | } | 235 | } |
241 | 236 | ||
242 | public double llCos(double f) | 237 | public LSL_Float llCos(double f) |
243 | { | 238 | { |
244 | m_host.AddScriptLPS(1); | 239 | m_host.AddScriptLPS(1); |
245 | return (double)Math.Cos(f); | 240 | return (double)Math.Cos(f); |
246 | } | 241 | } |
247 | 242 | ||
248 | public double llTan(double f) | 243 | public LSL_Float llTan(double f) |
249 | { | 244 | { |
250 | m_host.AddScriptLPS(1); | 245 | m_host.AddScriptLPS(1); |
251 | return (double)Math.Tan(f); | 246 | return (double)Math.Tan(f); |
252 | } | 247 | } |
253 | 248 | ||
254 | public double llAtan2(double x, double y) | 249 | public LSL_Float llAtan2(double x, double y) |
255 | { | 250 | { |
256 | m_host.AddScriptLPS(1); | 251 | m_host.AddScriptLPS(1); |
257 | return (double)Math.Atan2(y, x); | 252 | return (double)Math.Atan2(y, x); |
258 | } | 253 | } |
259 | 254 | ||
260 | public double llSqrt(double f) | 255 | public LSL_Float llSqrt(double f) |
261 | { | 256 | { |
262 | m_host.AddScriptLPS(1); | 257 | m_host.AddScriptLPS(1); |
263 | return (double)Math.Sqrt(f); | 258 | return (double)Math.Sqrt(f); |
264 | } | 259 | } |
265 | 260 | ||
266 | public double llPow(double fbase, double fexponent) | 261 | public LSL_Float llPow(double fbase, double fexponent) |
267 | { | 262 | { |
268 | m_host.AddScriptLPS(1); | 263 | m_host.AddScriptLPS(1); |
269 | return (double)Math.Pow(fbase, fexponent); | 264 | return (double)Math.Pow(fbase, fexponent); |
270 | } | 265 | } |
271 | 266 | ||
272 | public LSL_Types.LSLInteger llAbs(int i) | 267 | public LSL_Integer llAbs(int i) |
273 | { | 268 | { |
274 | m_host.AddScriptLPS(1); | 269 | m_host.AddScriptLPS(1); |
275 | return (int)Math.Abs(i); | 270 | return (int)Math.Abs(i); |
276 | } | 271 | } |
277 | 272 | ||
278 | public double llFabs(double f) | 273 | public LSL_Float llFabs(double f) |
279 | { | 274 | { |
280 | m_host.AddScriptLPS(1); | 275 | m_host.AddScriptLPS(1); |
281 | return (double)Math.Abs(f); | 276 | return (double)Math.Abs(f); |
282 | } | 277 | } |
283 | 278 | ||
284 | public double llFrand(double mag) | 279 | public LSL_Float llFrand(double mag) |
285 | { | 280 | { |
286 | m_host.AddScriptLPS(1); | 281 | m_host.AddScriptLPS(1); |
287 | lock (Util.RandomClass) | 282 | lock (Util.RandomClass) |
@@ -290,44 +285,44 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
290 | } | 285 | } |
291 | } | 286 | } |
292 | 287 | ||
293 | public LSL_Types.LSLInteger llFloor(double f) | 288 | public LSL_Integer llFloor(double f) |
294 | { | 289 | { |
295 | m_host.AddScriptLPS(1); | 290 | m_host.AddScriptLPS(1); |
296 | return (int)Math.Floor(f); | 291 | return (int)Math.Floor(f); |
297 | } | 292 | } |
298 | 293 | ||
299 | public LSL_Types.LSLInteger llCeil(double f) | 294 | public LSL_Integer llCeil(double f) |
300 | { | 295 | { |
301 | m_host.AddScriptLPS(1); | 296 | m_host.AddScriptLPS(1); |
302 | return (int)Math.Ceiling(f); | 297 | return (int)Math.Ceiling(f); |
303 | } | 298 | } |
304 | 299 | ||
305 | // Xantor 01/May/2008 fixed midpointrounding (2.5 becomes 3.0 instead of 2.0, default = ToEven) | 300 | // Xantor 01/May/2008 fixed midpointrounding (2.5 becomes 3.0 instead of 2.0, default = ToEven) |
306 | public LSL_Types.LSLInteger llRound(double f) | 301 | public LSL_Integer llRound(double f) |
307 | { | 302 | { |
308 | m_host.AddScriptLPS(1); | 303 | m_host.AddScriptLPS(1); |
309 | return (int)Math.Round(f, MidpointRounding.AwayFromZero); | 304 | return (int)Math.Round(f, MidpointRounding.AwayFromZero); |
310 | } | 305 | } |
311 | 306 | ||
312 | //This next group are vector operations involving squaring and square root. ckrinke | 307 | //This next group are vector operations involving squaring and square root. ckrinke |
313 | public double llVecMag(LSL_Types.Vector3 v) | 308 | public LSL_Float llVecMag(LSL_Vector v) |
314 | { | 309 | { |
315 | m_host.AddScriptLPS(1); | 310 | m_host.AddScriptLPS(1); |
316 | return LSL_Types.Vector3.Mag(v); | 311 | return LSL_Vector.Mag(v); |
317 | } | 312 | } |
318 | 313 | ||
319 | public LSL_Types.Vector3 llVecNorm(LSL_Types.Vector3 v) | 314 | public LSL_Vector llVecNorm(LSL_Vector v) |
320 | { | 315 | { |
321 | m_host.AddScriptLPS(1); | 316 | m_host.AddScriptLPS(1); |
322 | double mag = LSL_Types.Vector3.Mag(v); | 317 | double mag = LSL_Vector.Mag(v); |
323 | LSL_Types.Vector3 nor = new LSL_Types.Vector3(); | 318 | LSL_Vector nor = new LSL_Vector(); |
324 | nor.x = v.x / mag; | 319 | nor.x = v.x / mag; |
325 | nor.y = v.y / mag; | 320 | nor.y = v.y / mag; |
326 | nor.z = v.z / mag; | 321 | nor.z = v.z / mag; |
327 | return nor; | 322 | return nor; |
328 | } | 323 | } |
329 | 324 | ||
330 | public double llVecDist(LSL_Types.Vector3 a, LSL_Types.Vector3 b) | 325 | public LSL_Float llVecDist(LSL_Vector a, LSL_Vector b) |
331 | { | 326 | { |
332 | m_host.AddScriptLPS(1); | 327 | m_host.AddScriptLPS(1); |
333 | double dx = a.x - b.x; | 328 | double dx = a.x - b.x; |
@@ -350,23 +345,23 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
350 | 345 | ||
351 | // Old implementation of llRot2Euler, now normalized | 346 | // Old implementation of llRot2Euler, now normalized |
352 | 347 | ||
353 | public LSL_Types.Vector3 llRot2Euler(LSL_Types.Quaternion r) | 348 | public LSL_Vector llRot2Euler(LSL_Rotation r) |
354 | { | 349 | { |
355 | m_host.AddScriptLPS(1); | 350 | m_host.AddScriptLPS(1); |
356 | //This implementation is from http://lslwiki.net/lslwiki/wakka.php?wakka=LibraryRotationFunctions. ckrinke | 351 | //This implementation is from http://lslwiki.net/lslwiki/wakka.php?wakka=LibraryRotationFunctions. ckrinke |
357 | LSL_Types.Quaternion t = new LSL_Types.Quaternion(r.x * r.x, r.y * r.y, r.z * r.z, r.s * r.s); | 352 | LSL_Rotation t = new LSL_Rotation(r.x * r.x, r.y * r.y, r.z * r.z, r.s * r.s); |
358 | double m = (t.x + t.y + t.z + t.s); | 353 | double m = (t.x + t.y + t.z + t.s); |
359 | if (m == 0) return new LSL_Types.Vector3(); | 354 | if (m == 0) return new LSL_Vector(); |
360 | double n = 2 * (r.y * r.s + r.x * r.z); | 355 | double n = 2 * (r.y * r.s + r.x * r.z); |
361 | double p = m * m - n * n; | 356 | double p = m * m - n * n; |
362 | if (p > 0) | 357 | if (p > 0) |
363 | return new LSL_Types.Vector3(NormalizeAngle(Math.Atan2(2.0 * (r.x * r.s - r.y * r.z), (-t.x - t.y + t.z + t.s))), | 358 | return new LSL_Vector(NormalizeAngle(Math.Atan2(2.0 * (r.x * r.s - r.y * r.z), (-t.x - t.y + t.z + t.s))), |
364 | NormalizeAngle(Math.Atan2(n, Math.Sqrt(p))), | 359 | NormalizeAngle(Math.Atan2(n, Math.Sqrt(p))), |
365 | NormalizeAngle(Math.Atan2(2.0 * (r.z * r.s - r.x * r.y), (t.x - t.y - t.z + t.s)))); | 360 | NormalizeAngle(Math.Atan2(2.0 * (r.z * r.s - r.x * r.y), (t.x - t.y - t.z + t.s)))); |
366 | else if (n > 0) | 361 | else if (n > 0) |
367 | return new LSL_Types.Vector3(0.0, Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); | 362 | return new LSL_Vector(0.0, Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); |
368 | else | 363 | else |
369 | return new LSL_Types.Vector3(0.0, -Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); | 364 | return new LSL_Vector(0.0, -Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); |
370 | } | 365 | } |
371 | 366 | ||
372 | /* From wiki: | 367 | /* From wiki: |
@@ -414,7 +409,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
414 | * Apparently in some cases this is better from a numerical precision perspective? | 409 | * Apparently in some cases this is better from a numerical precision perspective? |
415 | */ | 410 | */ |
416 | 411 | ||
417 | public LSL_Types.Quaternion llEuler2Rot(LSL_Types.Vector3 v) | 412 | public LSL_Rotation llEuler2Rot(LSL_Vector v) |
418 | { | 413 | { |
419 | m_host.AddScriptLPS(1); | 414 | m_host.AddScriptLPS(1); |
420 | 415 | ||
@@ -432,10 +427,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
432 | z = s1*s2*c3+c1*c2*s3; | 427 | z = s1*s2*c3+c1*c2*s3; |
433 | s = c1*c2*c3-s1*s2*s3; | 428 | s = c1*c2*c3-s1*s2*s3; |
434 | 429 | ||
435 | return new LSL_Types.Quaternion(x, y, z, s); | 430 | return new LSL_Rotation(x, y, z, s); |
436 | } | 431 | } |
437 | 432 | ||
438 | public LSL_Types.Quaternion llAxes2Rot(LSL_Types.Vector3 fwd, LSL_Types.Vector3 left, LSL_Types.Vector3 up) | 433 | public LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up) |
439 | { | 434 | { |
440 | m_host.AddScriptLPS(1); | 435 | m_host.AddScriptLPS(1); |
441 | double x, y, z, s; | 436 | double x, y, z, s; |
@@ -468,7 +463,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
468 | if (f == 5) { z = -z; } | 463 | if (f == 5) { z = -z; } |
469 | if (f == 6) { y = -y; } | 464 | if (f == 6) { y = -y; } |
470 | 465 | ||
471 | LSL_Types.Quaternion result = new LSL_Types.Quaternion(x, y, z, s); | 466 | LSL_Rotation result = new LSL_Rotation(x, y, z, s); |
472 | 467 | ||
473 | // a hack to correct a few questionable angles :( | 468 | // a hack to correct a few questionable angles :( |
474 | if (llVecDist(llRot2Fwd(result), fwd) > 0.001 || llVecDist(llRot2Left(result), left) > 0.001) | 469 | if (llVecDist(llRot2Fwd(result), fwd) > 0.001 || llVecDist(llRot2Left(result), left) > 0.001) |
@@ -477,7 +472,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
477 | return result; | 472 | return result; |
478 | } | 473 | } |
479 | 474 | ||
480 | public LSL_Types.Vector3 llRot2Fwd(LSL_Types.Quaternion r) | 475 | public LSL_Vector llRot2Fwd(LSL_Rotation r) |
481 | { | 476 | { |
482 | m_host.AddScriptLPS(1); | 477 | m_host.AddScriptLPS(1); |
483 | 478 | ||
@@ -499,10 +494,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
499 | x = r.x * r.x - r.y * r.y - r.z * r.z + r.s * r.s; | 494 | x = r.x * r.x - r.y * r.y - r.z * r.z + r.s * r.s; |
500 | y = 2 * (r.x * r.y + r.z * r.s); | 495 | y = 2 * (r.x * r.y + r.z * r.s); |
501 | z = 2 * (r.x * r.z - r.y * r.s); | 496 | z = 2 * (r.x * r.z - r.y * r.s); |
502 | return (new LSL_Types.Vector3(x, y, z)); | 497 | return (new LSL_Vector(x, y, z)); |
503 | } | 498 | } |
504 | 499 | ||
505 | public LSL_Types.Vector3 llRot2Left(LSL_Types.Quaternion r) | 500 | public LSL_Vector llRot2Left(LSL_Rotation r) |
506 | { | 501 | { |
507 | m_host.AddScriptLPS(1); | 502 | m_host.AddScriptLPS(1); |
508 | 503 | ||
@@ -524,10 +519,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
524 | x = 2 * (r.x * r.y - r.z * r.s); | 519 | x = 2 * (r.x * r.y - r.z * r.s); |
525 | y = -r.x * r.x + r.y * r.y - r.z * r.z + r.s * r.s; | 520 | y = -r.x * r.x + r.y * r.y - r.z * r.z + r.s * r.s; |
526 | z = 2 * (r.x * r.s + r.y * r.z); | 521 | z = 2 * (r.x * r.s + r.y * r.z); |
527 | return (new LSL_Types.Vector3(x, y, z)); | 522 | return (new LSL_Vector(x, y, z)); |
528 | } | 523 | } |
529 | 524 | ||
530 | public LSL_Types.Vector3 llRot2Up(LSL_Types.Quaternion r) | 525 | public LSL_Vector llRot2Up(LSL_Rotation r) |
531 | { | 526 | { |
532 | m_host.AddScriptLPS(1); | 527 | m_host.AddScriptLPS(1); |
533 | double x, y, z, m; | 528 | double x, y, z, m; |
@@ -548,18 +543,18 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
548 | x = 2 * (r.x * r.z + r.y * r.s); | 543 | x = 2 * (r.x * r.z + r.y * r.s); |
549 | y = 2 * (-r.x * r.s + r.y * r.z); | 544 | y = 2 * (-r.x * r.s + r.y * r.z); |
550 | z = -r.x * r.x - r.y * r.y + r.z * r.z + r.s * r.s; | 545 | z = -r.x * r.x - r.y * r.y + r.z * r.z + r.s * r.s; |
551 | return (new LSL_Types.Vector3(x, y, z)); | 546 | return (new LSL_Vector(x, y, z)); |
552 | } | 547 | } |
553 | 548 | ||
554 | public LSL_Types.Quaternion llRotBetween(LSL_Types.Vector3 a, LSL_Types.Vector3 b) | 549 | public LSL_Rotation llRotBetween(LSL_Vector a, LSL_Vector b) |
555 | { | 550 | { |
556 | //A and B should both be normalized | 551 | //A and B should both be normalized |
557 | m_host.AddScriptLPS(1); | 552 | m_host.AddScriptLPS(1); |
558 | double dotProduct = LSL_Types.Vector3.Dot(a, b); | 553 | double dotProduct = LSL_Vector.Dot(a, b); |
559 | LSL_Types.Vector3 crossProduct = LSL_Types.Vector3.Cross(a, b); | 554 | LSL_Vector crossProduct = LSL_Vector.Cross(a, b); |
560 | double magProduct = LSL_Types.Vector3.Mag(a) * LSL_Types.Vector3.Mag(b); | 555 | double magProduct = LSL_Vector.Mag(a) * LSL_Vector.Mag(b); |
561 | double angle = Math.Acos(dotProduct / magProduct); | 556 | double angle = Math.Acos(dotProduct / magProduct); |
562 | LSL_Types.Vector3 axis = LSL_Types.Vector3.Norm(crossProduct); | 557 | LSL_Vector axis = LSL_Vector.Norm(crossProduct); |
563 | double s = Math.Sin(angle / 2); | 558 | double s = Math.Sin(angle / 2); |
564 | 559 | ||
565 | double x = axis.x * s; | 560 | double x = axis.x * s; |
@@ -568,9 +563,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
568 | double w = Math.Cos(angle / 2); | 563 | double w = Math.Cos(angle / 2); |
569 | 564 | ||
570 | if (Double.IsNaN(x) || Double.IsNaN(y) || Double.IsNaN(z) || Double.IsNaN(w)) | 565 | if (Double.IsNaN(x) || Double.IsNaN(y) || Double.IsNaN(z) || Double.IsNaN(w)) |
571 | return new LSL_Types.Quaternion(0.0f, 0.0f, 0.0f, 1.0f); | 566 | return new LSL_Rotation(0.0f, 0.0f, 0.0f, 1.0f); |
572 | 567 | ||
573 | return new LSL_Types.Quaternion((float)x, (float)y, (float)z, (float)w); | 568 | return new LSL_Rotation((float)x, (float)y, (float)z, (float)w); |
574 | } | 569 | } |
575 | 570 | ||
576 | public void llWhisper(int channelID, string text) | 571 | public void llWhisper(int channelID, string text) |
@@ -632,7 +627,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
632 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); | 627 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); |
633 | } | 628 | } |
634 | 629 | ||
635 | public LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg) | 630 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) |
636 | { | 631 | { |
637 | m_host.AddScriptLPS(1); | 632 | m_host.AddScriptLPS(1); |
638 | UUID keyID; | 633 | UUID keyID; |
@@ -707,10 +702,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
707 | return SensedObject.Name; | 702 | return SensedObject.Name; |
708 | } | 703 | } |
709 | 704 | ||
710 | public string llDetectedName(int number) | 705 | public LSL_String llDetectedName(int number) |
711 | { | 706 | { |
712 | m_host.AddScriptLPS(1); | 707 | m_host.AddScriptLPS(1); |
713 | LSL_Types.list SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); | 708 | LSL_List SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); |
714 | if (SenseList != null) | 709 | if (SenseList != null) |
715 | { | 710 | { |
716 | if ((number >= 0) && (number < SenseList.Length)) | 711 | if ((number >= 0) && (number < SenseList.Length)) |
@@ -750,7 +745,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
750 | 745 | ||
751 | public UUID uuidDetectedKey(int number) | 746 | public UUID uuidDetectedKey(int number) |
752 | { | 747 | { |
753 | LSL_Types.list SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); | 748 | LSL_List SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); |
754 | if (SenseList != null) | 749 | if (SenseList != null) |
755 | { | 750 | { |
756 | if ((number >= 0) && (number < SenseList.Length)) | 751 | if ((number >= 0) && (number < SenseList.Length)) |
@@ -787,7 +782,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
787 | 782 | ||
788 | public EntityBase entityDetectedKey(int number) | 783 | public EntityBase entityDetectedKey(int number) |
789 | { | 784 | { |
790 | LSL_Types.list SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); | 785 | LSL_List SenseList = m_ScriptEngine.m_ASYNCLSLCommandManager.m_SensorRepeat.GetSensorList(m_localID, m_itemID); |
791 | if (SenseList != null) | 786 | if (SenseList != null) |
792 | { | 787 | { |
793 | if ((number >= 0) && (number < SenseList.Length)) | 788 | if ((number >= 0) && (number < SenseList.Length)) |
@@ -834,7 +829,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
834 | return null; | 829 | return null; |
835 | } | 830 | } |
836 | 831 | ||
837 | public string llDetectedKey(int number) | 832 | public LSL_String llDetectedKey(int number) |
838 | { | 833 | { |
839 | m_host.AddScriptLPS(1); | 834 | m_host.AddScriptLPS(1); |
840 | UUID SensedUUID = uuidDetectedKey(number); | 835 | UUID SensedUUID = uuidDetectedKey(number); |
@@ -843,7 +838,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
843 | return SensedUUID.ToString(); | 838 | return SensedUUID.ToString(); |
844 | } | 839 | } |
845 | 840 | ||
846 | public string llDetectedOwner(int number) | 841 | public LSL_String llDetectedOwner(int number) |
847 | { | 842 | { |
848 | // returns UUID of owner of object detected | 843 | // returns UUID of owner of object detected |
849 | m_host.AddScriptLPS(1); | 844 | m_host.AddScriptLPS(1); |
@@ -869,7 +864,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
869 | 864 | ||
870 | } | 865 | } |
871 | 866 | ||
872 | public LSL_Types.LSLInteger llDetectedType(int number) | 867 | public LSL_Integer llDetectedType(int number) |
873 | { | 868 | { |
874 | m_host.AddScriptLPS(1); | 869 | m_host.AddScriptLPS(1); |
875 | EntityBase SensedObject = entityDetectedKey(number); | 870 | EntityBase SensedObject = entityDetectedKey(number); |
@@ -878,7 +873,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
878 | int mask = 0; | 873 | int mask = 0; |
879 | 874 | ||
880 | UUID SensedUUID = uuidDetectedKey(number); | 875 | UUID SensedUUID = uuidDetectedKey(number); |
881 | LSL_Types.Vector3 ZeroVector = new LSL_Types.Vector3(0, 0, 0); | 876 | LSL_Vector ZeroVector = new LSL_Vector(0, 0, 0); |
882 | 877 | ||
883 | if (World.GetScenePresence(SensedUUID) != null) mask |= 0x01; // actor | 878 | if (World.GetScenePresence(SensedUUID) != null) mask |= 0x01; // actor |
884 | if (SensedObject.Velocity.Equals(ZeroVector)) | 879 | if (SensedObject.Velocity.Equals(ZeroVector)) |
@@ -889,71 +884,71 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
889 | return mask; | 884 | return mask; |
890 | } | 885 | } |
891 | 886 | ||
892 | public LSL_Types.Vector3 llDetectedPos(int number) | 887 | public LSL_Vector llDetectedPos(int number) |
893 | { | 888 | { |
894 | m_host.AddScriptLPS(1); | 889 | m_host.AddScriptLPS(1); |
895 | EntityBase SensedObject = entityDetectedKey(number); | 890 | EntityBase SensedObject = entityDetectedKey(number); |
896 | if (SensedObject == null) | 891 | if (SensedObject == null) |
897 | return new LSL_Types.Vector3(0, 0, 0); | 892 | return new LSL_Vector(0, 0, 0); |
898 | return new LSL_Types.Vector3( | 893 | return new LSL_Vector( |
899 | SensedObject.AbsolutePosition.X, | 894 | SensedObject.AbsolutePosition.X, |
900 | SensedObject.AbsolutePosition.Y, | 895 | SensedObject.AbsolutePosition.Y, |
901 | SensedObject.AbsolutePosition.Z); | 896 | SensedObject.AbsolutePosition.Z); |
902 | } | 897 | } |
903 | 898 | ||
904 | public LSL_Types.Vector3 llDetectedVel(int number) | 899 | public LSL_Vector llDetectedVel(int number) |
905 | { | 900 | { |
906 | m_host.AddScriptLPS(1); | 901 | m_host.AddScriptLPS(1); |
907 | EntityBase SensedObject = entityDetectedKey(number); | 902 | EntityBase SensedObject = entityDetectedKey(number); |
908 | if (SensedObject == null) | 903 | if (SensedObject == null) |
909 | return new LSL_Types.Vector3(0, 0, 0); | 904 | return new LSL_Vector(0, 0, 0); |
910 | return new LSL_Types.Vector3( | 905 | return new LSL_Vector( |
911 | SensedObject.Velocity.X, | 906 | SensedObject.Velocity.X, |
912 | SensedObject.Velocity.Y, | 907 | SensedObject.Velocity.Y, |
913 | SensedObject.Velocity.Z); | 908 | SensedObject.Velocity.Z); |
914 | } | 909 | } |
915 | 910 | ||
916 | public LSL_Types.Vector3 llDetectedGrab(int number) | 911 | public LSL_Vector llDetectedGrab(int number) |
917 | { | 912 | { |
918 | m_host.AddScriptLPS(1); | 913 | m_host.AddScriptLPS(1); |
919 | EntityBase SensedObject = entityDetectedKey(number); | 914 | EntityBase SensedObject = entityDetectedKey(number); |
920 | if (SensedObject == null) | 915 | if (SensedObject == null) |
921 | return new LSL_Types.Vector3(0, 0, 0); | 916 | return new LSL_Vector(0, 0, 0); |
922 | 917 | ||
923 | return new LSL_Types.Vector3( | 918 | return new LSL_Vector( |
924 | SensedObject.AbsolutePosition.X, | 919 | SensedObject.AbsolutePosition.X, |
925 | SensedObject.AbsolutePosition.Y, | 920 | SensedObject.AbsolutePosition.Y, |
926 | SensedObject.AbsolutePosition.Z); | 921 | SensedObject.AbsolutePosition.Z); |
927 | } | 922 | } |
928 | 923 | ||
929 | public LSL_Types.Quaternion llDetectedRot(int number) | 924 | public LSL_Rotation llDetectedRot(int number) |
930 | { | 925 | { |
931 | m_host.AddScriptLPS(1); | 926 | m_host.AddScriptLPS(1); |
932 | EntityBase SensedObject = entityDetectedKey(number); | 927 | EntityBase SensedObject = entityDetectedKey(number); |
933 | if (SensedObject == null) | 928 | if (SensedObject == null) |
934 | return new LSL_Types.Quaternion(); | 929 | return new LSL_Rotation(); |
935 | return new LSL_Types.Quaternion( | 930 | return new LSL_Rotation( |
936 | SensedObject.Rotation.X, | 931 | SensedObject.Rotation.X, |
937 | SensedObject.Rotation.Y, | 932 | SensedObject.Rotation.Y, |
938 | SensedObject.Rotation.Z, | 933 | SensedObject.Rotation.Z, |
939 | SensedObject.Rotation.W); | 934 | SensedObject.Rotation.W); |
940 | } | 935 | } |
941 | 936 | ||
942 | public LSL_Types.LSLInteger llDetectedGroup(int number) | 937 | public LSL_Integer llDetectedGroup(int number) |
943 | { | 938 | { |
944 | m_host.AddScriptLPS(1); | 939 | m_host.AddScriptLPS(1); |
945 | UUID SensedUUID = uuidDetectedKey(number); | 940 | UUID SensedUUID = uuidDetectedKey(number); |
946 | if (SensedUUID == UUID.Zero) | 941 | if (SensedUUID == UUID.Zero) |
947 | return new LSL_Types.LSLInteger(0); | 942 | return new LSL_Integer(0); |
948 | ScenePresence presence = World.GetScenePresence(SensedUUID); | 943 | ScenePresence presence = World.GetScenePresence(SensedUUID); |
949 | IClientAPI client = presence.ControllingClient; | 944 | IClientAPI client = presence.ControllingClient; |
950 | if (m_host.GroupID == client.ActiveGroupId) | 945 | if (m_host.GroupID == client.ActiveGroupId) |
951 | return new LSL_Types.LSLInteger(1); | 946 | return new LSL_Integer(1); |
952 | else | 947 | else |
953 | return new LSL_Types.LSLInteger(0); | 948 | return new LSL_Integer(0); |
954 | } | 949 | } |
955 | 950 | ||
956 | public LSL_Types.LSLInteger llDetectedLinkNumber(int number) | 951 | public LSL_Integer llDetectedLinkNumber(int number) |
957 | { | 952 | { |
958 | m_host.AddScriptLPS(1); | 953 | m_host.AddScriptLPS(1); |
959 | EntityBase SensedObject = entityDetectedKey(number); | 954 | EntityBase SensedObject = entityDetectedKey(number); |
@@ -962,13 +957,55 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
962 | return m_host.LinkNum; | 957 | return m_host.LinkNum; |
963 | } | 958 | } |
964 | 959 | ||
960 | public LSL_Vector llDetectedTouchBinormal(int index) | ||
961 | { | ||
962 | m_host.AddScriptLPS(1); | ||
963 | NotImplemented("llDetectedTouchBinormal"); | ||
964 | return new LSL_Vector(); | ||
965 | } | ||
966 | |||
967 | public LSL_Integer llDetectedTouchFace(int index) | ||
968 | { | ||
969 | m_host.AddScriptLPS(1); | ||
970 | NotImplemented("llDetectedTouchFace"); | ||
971 | return new LSL_Integer(0); | ||
972 | } | ||
973 | |||
974 | public LSL_Vector llDetectedTouchNormal(int index) | ||
975 | { | ||
976 | m_host.AddScriptLPS(1); | ||
977 | NotImplemented("llDetectedTouchNormal"); | ||
978 | return new LSL_Vector(); | ||
979 | } | ||
980 | |||
981 | public LSL_Vector llDetectedTouchPos(int index) | ||
982 | { | ||
983 | m_host.AddScriptLPS(1); | ||
984 | NotImplemented("llDetectedTouchPos"); | ||
985 | return new LSL_Vector(); | ||
986 | } | ||
987 | |||
988 | public LSL_Vector llDetectedTouchST(int index) | ||
989 | { | ||
990 | m_host.AddScriptLPS(1); | ||
991 | NotImplemented("llDetectedTouchST"); | ||
992 | return new LSL_Vector(); | ||
993 | } | ||
994 | |||
995 | public LSL_Vector llDetectedTouchUV(int index) | ||
996 | { | ||
997 | m_host.AddScriptLPS(1); | ||
998 | NotImplemented("llDetectedTouchUV"); | ||
999 | return new LSL_Vector(); | ||
1000 | } | ||
1001 | |||
965 | public void llDie() | 1002 | public void llDie() |
966 | { | 1003 | { |
967 | m_host.AddScriptLPS(1); | 1004 | m_host.AddScriptLPS(1); |
968 | World.DeleteSceneObject(m_host.ParentGroup); | 1005 | World.DeleteSceneObject(m_host.ParentGroup); |
969 | } | 1006 | } |
970 | 1007 | ||
971 | public double llGround(LSL_Types.Vector3 offset) | 1008 | public LSL_Float llGround(LSL_Vector offset) |
972 | { | 1009 | { |
973 | m_host.AddScriptLPS(1); | 1010 | m_host.AddScriptLPS(1); |
974 | int x = (int)(m_host.OffsetPosition.X + offset.x); | 1011 | int x = (int)(m_host.OffsetPosition.X + offset.x); |
@@ -976,16 +1013,16 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
976 | return World.GetLandHeight(x, y); | 1013 | return World.GetLandHeight(x, y); |
977 | } | 1014 | } |
978 | 1015 | ||
979 | public double llCloud(LSL_Types.Vector3 offset) | 1016 | public LSL_Float llCloud(LSL_Vector offset) |
980 | { | 1017 | { |
981 | m_host.AddScriptLPS(1); | 1018 | m_host.AddScriptLPS(1); |
982 | return 0; | 1019 | return 0; |
983 | } | 1020 | } |
984 | 1021 | ||
985 | public LSL_Types.Vector3 llWind(LSL_Types.Vector3 offset) | 1022 | public LSL_Vector llWind(LSL_Vector offset) |
986 | { | 1023 | { |
987 | m_host.AddScriptLPS(1); | 1024 | m_host.AddScriptLPS(1); |
988 | return new LSL_Types.Vector3(); | 1025 | return new LSL_Vector(); |
989 | } | 1026 | } |
990 | 1027 | ||
991 | public void llSetStatus(int status, int value) | 1028 | public void llSetStatus(int status, int value) |
@@ -1076,7 +1113,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1076 | } | 1113 | } |
1077 | } | 1114 | } |
1078 | 1115 | ||
1079 | public LSL_Types.LSLInteger llGetStatus(int status) | 1116 | public LSL_Integer llGetStatus(int status) |
1080 | { | 1117 | { |
1081 | m_host.AddScriptLPS(1); | 1118 | m_host.AddScriptLPS(1); |
1082 | // Console.WriteLine(m_host.ToString() + " status is " + m_host.GetEffectiveObjectFlags().ToString()); | 1119 | // Console.WriteLine(m_host.ToString() + " status is " + m_host.GetEffectiveObjectFlags().ToString()); |
@@ -1136,13 +1173,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1136 | return 0; | 1173 | return 0; |
1137 | } | 1174 | } |
1138 | 1175 | ||
1139 | public void llSetScale(LSL_Types.Vector3 scale) | 1176 | public void llSetScale(LSL_Vector scale) |
1140 | { | 1177 | { |
1141 | m_host.AddScriptLPS(1); | 1178 | m_host.AddScriptLPS(1); |
1142 | SetScale(m_host, scale); | 1179 | SetScale(m_host, scale); |
1143 | } | 1180 | } |
1144 | 1181 | ||
1145 | private void SetScale(SceneObjectPart part, LSL_Types.Vector3 scale) | 1182 | private void SetScale(SceneObjectPart part, LSL_Vector scale) |
1146 | { | 1183 | { |
1147 | // TODO: this needs to trigger a persistance save as well | 1184 | // TODO: this needs to trigger a persistance save as well |
1148 | 1185 | ||
@@ -1172,24 +1209,31 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1172 | part.SendFullUpdateToAllClients(); | 1209 | part.SendFullUpdateToAllClients(); |
1173 | } | 1210 | } |
1174 | 1211 | ||
1175 | public LSL_Types.Vector3 llGetScale() | 1212 | public LSL_Vector llGetScale() |
1213 | { | ||
1214 | m_host.AddScriptLPS(1); | ||
1215 | return new LSL_Vector(m_host.Scale.X, m_host.Scale.Y, m_host.Scale.Z); | ||
1216 | } | ||
1217 | |||
1218 | public void llSetClickAction(int action) | ||
1176 | { | 1219 | { |
1177 | m_host.AddScriptLPS(1); | 1220 | m_host.AddScriptLPS(1); |
1178 | return new LSL_Types.Vector3(m_host.Scale.X, m_host.Scale.Y, m_host.Scale.Z); | 1221 | NotImplemented("llSetClickAction"); |
1222 | return; | ||
1179 | } | 1223 | } |
1180 | 1224 | ||
1181 | public void llSetColor(LSL_Types.Vector3 color, int face) | 1225 | public void llSetColor(LSL_Vector color, int face) |
1182 | { | 1226 | { |
1183 | m_host.AddScriptLPS(1); | 1227 | m_host.AddScriptLPS(1); |
1184 | 1228 | ||
1185 | SetColor(m_host, color, face); | 1229 | SetColor(m_host, color, face); |
1186 | } | 1230 | } |
1187 | 1231 | ||
1188 | private void SetColor(SceneObjectPart part, LSL_Types.Vector3 color, int face) | 1232 | private void SetColor(SceneObjectPart part, LSL_Vector color, int face) |
1189 | { | 1233 | { |
1190 | Primitive.TextureEntry tex = part.Shape.Textures; | 1234 | Primitive.TextureEntry tex = part.Shape.Textures; |
1191 | Color4 texcolor; | 1235 | Color4 texcolor; |
1192 | if (face > -1) | 1236 | if (face >= 0 && face < GetNumberOfSides(part)) |
1193 | { | 1237 | { |
1194 | texcolor = tex.CreateFace((uint)face).RGBA; | 1238 | texcolor = tex.CreateFace((uint)face).RGBA; |
1195 | texcolor.R = Util.Clip((float)color.x, 0.0f, 1.0f); | 1239 | texcolor.R = Util.Clip((float)color.x, 0.0f, 1.0f); |
@@ -1199,9 +1243,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1199 | part.UpdateTexture(tex); | 1243 | part.UpdateTexture(tex); |
1200 | return; | 1244 | return; |
1201 | } | 1245 | } |
1202 | else if (face == -1) | 1246 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1203 | { | 1247 | { |
1204 | for (uint i = 0; i < 32; i++) | 1248 | for (uint i = 0; i < GetNumberOfSides(part); i++) |
1205 | { | 1249 | { |
1206 | if (tex.FaceTextures[i] != null) | 1250 | if (tex.FaceTextures[i] != null) |
1207 | { | 1251 | { |
@@ -1225,16 +1269,16 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1225 | public void SetGlow(SceneObjectPart part, int face, float glow) | 1269 | public void SetGlow(SceneObjectPart part, int face, float glow) |
1226 | { | 1270 | { |
1227 | Primitive.TextureEntry tex = part.Shape.Textures; | 1271 | Primitive.TextureEntry tex = part.Shape.Textures; |
1228 | if (face > -1) | 1272 | if (face >= 0 && face < GetNumberOfSides(part)) |
1229 | { | 1273 | { |
1230 | tex.CreateFace((uint) face); | 1274 | tex.CreateFace((uint) face); |
1231 | tex.FaceTextures[face].Glow = glow; | 1275 | tex.FaceTextures[face].Glow = glow; |
1232 | part.UpdateTexture(tex); | 1276 | part.UpdateTexture(tex); |
1233 | return; | 1277 | return; |
1234 | } | 1278 | } |
1235 | else if (face == -1) | 1279 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1236 | { | 1280 | { |
1237 | for (uint i = 0; i < 32; i++) | 1281 | for (uint i = 0; i < GetNumberOfSides(part); i++) |
1238 | { | 1282 | { |
1239 | if (tex.FaceTextures[i] != null) | 1283 | if (tex.FaceTextures[i] != null) |
1240 | { | 1284 | { |
@@ -1272,7 +1316,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1272 | } | 1316 | } |
1273 | 1317 | ||
1274 | Primitive.TextureEntry tex = part.Shape.Textures; | 1318 | Primitive.TextureEntry tex = part.Shape.Textures; |
1275 | if (face > -1) | 1319 | if (face >= 0 && face < GetNumberOfSides(part)) |
1276 | { | 1320 | { |
1277 | tex.CreateFace((uint) face); | 1321 | tex.CreateFace((uint) face); |
1278 | tex.FaceTextures[face].Shiny = sval; | 1322 | tex.FaceTextures[face].Shiny = sval; |
@@ -1280,9 +1324,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1280 | part.UpdateTexture(tex); | 1324 | part.UpdateTexture(tex); |
1281 | return; | 1325 | return; |
1282 | } | 1326 | } |
1283 | else if (face == -1) | 1327 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1284 | { | 1328 | { |
1285 | for (uint i = 0; i < 32; i++) | 1329 | for (uint i = 0; i < GetNumberOfSides(part); i++) |
1286 | { | 1330 | { |
1287 | if (tex.FaceTextures[i] != null) | 1331 | if (tex.FaceTextures[i] != null) |
1288 | { | 1332 | { |
@@ -1300,16 +1344,16 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1300 | public void SetFullBright(SceneObjectPart part, int face, bool bright) | 1344 | public void SetFullBright(SceneObjectPart part, int face, bool bright) |
1301 | { | 1345 | { |
1302 | Primitive.TextureEntry tex = part.Shape.Textures; | 1346 | Primitive.TextureEntry tex = part.Shape.Textures; |
1303 | if (face > -1) | 1347 | if (face >= 0 && face < GetNumberOfSides(part)) |
1304 | { | 1348 | { |
1305 | tex.CreateFace((uint) face); | 1349 | tex.CreateFace((uint) face); |
1306 | tex.FaceTextures[face].Fullbright = bright; | 1350 | tex.FaceTextures[face].Fullbright = bright; |
1307 | part.UpdateTexture(tex); | 1351 | part.UpdateTexture(tex); |
1308 | return; | 1352 | return; |
1309 | } | 1353 | } |
1310 | else if (face == -1) | 1354 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1311 | { | 1355 | { |
1312 | for (uint i = 0; i < 32; i++) | 1356 | for (uint i = 0; i < GetNumberOfSides(part); i++) |
1313 | { | 1357 | { |
1314 | if (tex.FaceTextures[i] != null) | 1358 | if (tex.FaceTextures[i] != null) |
1315 | { | 1359 | { |
@@ -1322,19 +1366,28 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1322 | } | 1366 | } |
1323 | } | 1367 | } |
1324 | 1368 | ||
1325 | public double llGetAlpha(int face) | 1369 | public LSL_Float llGetAlpha(int face) |
1326 | { | 1370 | { |
1327 | m_host.AddScriptLPS(1); | 1371 | m_host.AddScriptLPS(1); |
1328 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 1372 | return GetAlpha(m_host, face); |
1329 | if (face == -1) // TMP: Until we can determine number of sides, ALL_SIDES (-1) will return default color | 1373 | } |
1374 | |||
1375 | private LSL_Float GetAlpha(SceneObjectPart part, int face) | ||
1376 | { | ||
1377 | Primitive.TextureEntry tex = part.Shape.Textures; | ||
1378 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) | ||
1330 | { | 1379 | { |
1331 | return (double)((tex.DefaultTexture.RGBA.A * 255) / 255); | 1380 | int i; |
1381 | double sum = 0.0; | ||
1382 | for (i = 0 ; i < GetNumberOfSides(part) ; i++) | ||
1383 | sum += (double)tex.GetFace((uint)i).RGBA.A; | ||
1384 | return sum; | ||
1332 | } | 1385 | } |
1333 | if (face > -1) | 1386 | if (face >= 0 && face < GetNumberOfSides(part)) |
1334 | { | 1387 | { |
1335 | return (double)((tex.GetFace((uint)face).RGBA.A * 255) / 255); | 1388 | return (double)tex.GetFace((uint)face).RGBA.A; |
1336 | } | 1389 | } |
1337 | return 0; | 1390 | return 0.0; |
1338 | } | 1391 | } |
1339 | 1392 | ||
1340 | public void llSetAlpha(double alpha, int face) | 1393 | public void llSetAlpha(double alpha, int face) |
@@ -1348,7 +1401,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1348 | { | 1401 | { |
1349 | Primitive.TextureEntry tex = part.Shape.Textures; | 1402 | Primitive.TextureEntry tex = part.Shape.Textures; |
1350 | Color4 texcolor; | 1403 | Color4 texcolor; |
1351 | if (face > -1) | 1404 | if (face >= 0 && face < GetNumberOfSides(part)) |
1352 | { | 1405 | { |
1353 | texcolor = tex.CreateFace((uint)face).RGBA; | 1406 | texcolor = tex.CreateFace((uint)face).RGBA; |
1354 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); | 1407 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); |
@@ -1356,9 +1409,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1356 | part.UpdateTexture(tex); | 1409 | part.UpdateTexture(tex); |
1357 | return; | 1410 | return; |
1358 | } | 1411 | } |
1359 | else if (face == -1) | 1412 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1360 | { | 1413 | { |
1361 | for (int i = 0; i < 32; i++) | 1414 | for (int i = 0; i < GetNumberOfSides(part); i++) |
1362 | { | 1415 | { |
1363 | if (tex.FaceTextures[i] != null) | 1416 | if (tex.FaceTextures[i] != null) |
1364 | { | 1417 | { |
@@ -1389,7 +1442,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1389 | /// <param name="tension"></param> | 1442 | /// <param name="tension"></param> |
1390 | /// <param name="Force"></param> | 1443 | /// <param name="Force"></param> |
1391 | private void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, | 1444 | private void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, |
1392 | float wind, float tension, LSL_Types.Vector3 Force) | 1445 | float wind, float tension, LSL_Vector Force) |
1393 | { | 1446 | { |
1394 | if (part == null) | 1447 | if (part == null) |
1395 | return; | 1448 | return; |
@@ -1447,7 +1500,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1447 | /// <param name="intensity"></param> | 1500 | /// <param name="intensity"></param> |
1448 | /// <param name="radius"></param> | 1501 | /// <param name="radius"></param> |
1449 | /// <param name="falloff"></param> | 1502 | /// <param name="falloff"></param> |
1450 | private void SetPointLight(SceneObjectPart part, bool light, LSL_Types.Vector3 color, float intensity, float radius, float falloff) | 1503 | private void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff) |
1451 | { | 1504 | { |
1452 | if (part == null) | 1505 | if (part == null) |
1453 | return; | 1506 | return; |
@@ -1471,31 +1524,46 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1471 | part.ScheduleFullUpdate(); | 1524 | part.ScheduleFullUpdate(); |
1472 | } | 1525 | } |
1473 | 1526 | ||
1474 | public LSL_Types.Vector3 llGetColor(int face) | 1527 | public LSL_Vector llGetColor(int face) |
1475 | { | 1528 | { |
1476 | m_host.AddScriptLPS(1); | 1529 | m_host.AddScriptLPS(1); |
1477 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 1530 | return GetColor(m_host, face); |
1531 | } | ||
1532 | |||
1533 | private LSL_Vector GetColor(SceneObjectPart part, int face) | ||
1534 | { | ||
1535 | Primitive.TextureEntry tex = part.Shape.Textures; | ||
1478 | Color4 texcolor; | 1536 | Color4 texcolor; |
1479 | LSL_Types.Vector3 rgb; | 1537 | LSL_Vector rgb = new LSL_Vector(); |
1480 | if (face == -1) // TMP: Until we can determine number of sides, ALL_SIDES (-1) will return default color | 1538 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1481 | { | 1539 | { |
1482 | texcolor = tex.DefaultTexture.RGBA; | 1540 | int i; |
1483 | rgb.x = (255 - (texcolor.R * 255)) / 255; | 1541 | |
1484 | rgb.y = (255 - (texcolor.G * 255)) / 255; | 1542 | for (i = 0 ; i < GetNumberOfSides(part) ; i++) |
1485 | rgb.z = (255 - (texcolor.B * 255)) / 255; | 1543 | { |
1544 | texcolor = tex.GetFace((uint)i).RGBA; | ||
1545 | rgb.x += texcolor.R; | ||
1546 | rgb.y += texcolor.G; | ||
1547 | rgb.z += texcolor.B; | ||
1548 | } | ||
1549 | |||
1550 | rgb.x /= (float)GetNumberOfSides(part); | ||
1551 | rgb.y /= (float)GetNumberOfSides(part); | ||
1552 | rgb.z /= (float)GetNumberOfSides(part); | ||
1553 | |||
1486 | return rgb; | 1554 | return rgb; |
1487 | } | 1555 | } |
1488 | if (face > -1) | 1556 | if (face >= 0 && face < GetNumberOfSides(part)) |
1489 | { | 1557 | { |
1490 | texcolor = tex.GetFace((uint)face).RGBA; | 1558 | texcolor = tex.GetFace((uint)face).RGBA; |
1491 | rgb.x = (255 - (texcolor.R * 255)) / 255; | 1559 | rgb.x = texcolor.R; |
1492 | rgb.y = (255 - (texcolor.G * 255)) / 255; | 1560 | rgb.y = texcolor.G; |
1493 | rgb.z = (255 - (texcolor.B * 255)) / 255; | 1561 | rgb.z = texcolor.B; |
1494 | return rgb; | 1562 | return rgb; |
1495 | } | 1563 | } |
1496 | else | 1564 | else |
1497 | { | 1565 | { |
1498 | return new LSL_Types.Vector3(); | 1566 | return new LSL_Vector(); |
1499 | } | 1567 | } |
1500 | } | 1568 | } |
1501 | 1569 | ||
@@ -1520,7 +1588,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1520 | 1588 | ||
1521 | Primitive.TextureEntry tex = part.Shape.Textures; | 1589 | Primitive.TextureEntry tex = part.Shape.Textures; |
1522 | 1590 | ||
1523 | if (face > -1) | 1591 | if (face >= 0 && face < GetNumberOfSides(part)) |
1524 | { | 1592 | { |
1525 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); | 1593 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); |
1526 | texface.TextureID = textureID; | 1594 | texface.TextureID = textureID; |
@@ -1528,9 +1596,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1528 | part.UpdateTexture(tex); | 1596 | part.UpdateTexture(tex); |
1529 | return; | 1597 | return; |
1530 | } | 1598 | } |
1531 | else if (face == -1) | 1599 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1532 | { | 1600 | { |
1533 | for (uint i = 0; i < 32; i++) | 1601 | for (uint i = 0; i < GetNumberOfSides(part); i++) |
1534 | { | 1602 | { |
1535 | if (tex.FaceTextures[i] != null) | 1603 | if (tex.FaceTextures[i] != null) |
1536 | { | 1604 | { |
@@ -1554,7 +1622,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1554 | private void ScaleTexture(SceneObjectPart part, double u, double v, int face) | 1622 | private void ScaleTexture(SceneObjectPart part, double u, double v, int face) |
1555 | { | 1623 | { |
1556 | Primitive.TextureEntry tex = part.Shape.Textures; | 1624 | Primitive.TextureEntry tex = part.Shape.Textures; |
1557 | if (face > -1) | 1625 | if (face >= 0 && face < GetNumberOfSides(part)) |
1558 | { | 1626 | { |
1559 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); | 1627 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); |
1560 | texface.RepeatU = (float)u; | 1628 | texface.RepeatU = (float)u; |
@@ -1563,9 +1631,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1563 | part.UpdateTexture(tex); | 1631 | part.UpdateTexture(tex); |
1564 | return; | 1632 | return; |
1565 | } | 1633 | } |
1566 | if (face == -1) | 1634 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1567 | { | 1635 | { |
1568 | for (int i = 0; i < 32; i++) | 1636 | for (int i = 0; i < GetNumberOfSides(part); i++) |
1569 | { | 1637 | { |
1570 | if (tex.FaceTextures[i] != null) | 1638 | if (tex.FaceTextures[i] != null) |
1571 | { | 1639 | { |
@@ -1590,7 +1658,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1590 | private void OffsetTexture(SceneObjectPart part, double u, double v, int face) | 1658 | private void OffsetTexture(SceneObjectPart part, double u, double v, int face) |
1591 | { | 1659 | { |
1592 | Primitive.TextureEntry tex = part.Shape.Textures; | 1660 | Primitive.TextureEntry tex = part.Shape.Textures; |
1593 | if (face > -1) | 1661 | if (face >= 0 && face < GetNumberOfSides(part)) |
1594 | { | 1662 | { |
1595 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); | 1663 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); |
1596 | texface.OffsetU = (float)u; | 1664 | texface.OffsetU = (float)u; |
@@ -1599,9 +1667,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1599 | part.UpdateTexture(tex); | 1667 | part.UpdateTexture(tex); |
1600 | return; | 1668 | return; |
1601 | } | 1669 | } |
1602 | if (face == -1) | 1670 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1603 | { | 1671 | { |
1604 | for (int i = 0; i < 32; i++) | 1672 | for (int i = 0; i < GetNumberOfSides(part); i++) |
1605 | { | 1673 | { |
1606 | if (tex.FaceTextures[i] != null) | 1674 | if (tex.FaceTextures[i] != null) |
1607 | { | 1675 | { |
@@ -1626,7 +1694,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1626 | private void RotateTexture(SceneObjectPart part, double rotation, int face) | 1694 | private void RotateTexture(SceneObjectPart part, double rotation, int face) |
1627 | { | 1695 | { |
1628 | Primitive.TextureEntry tex = part.Shape.Textures; | 1696 | Primitive.TextureEntry tex = part.Shape.Textures; |
1629 | if (face > -1) | 1697 | if (face >= 0 && face < GetNumberOfSides(part)) |
1630 | { | 1698 | { |
1631 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); | 1699 | Primitive.TextureEntryFace texface = tex.CreateFace((uint)face); |
1632 | texface.Rotation = (float)rotation; | 1700 | texface.Rotation = (float)rotation; |
@@ -1634,9 +1702,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1634 | part.UpdateTexture(tex); | 1702 | part.UpdateTexture(tex); |
1635 | return; | 1703 | return; |
1636 | } | 1704 | } |
1637 | if (face == -1) | 1705 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
1638 | { | 1706 | { |
1639 | for (int i = 0; i < 32; i++) | 1707 | for (int i = 0; i < GetNumberOfSides(part); i++) |
1640 | { | 1708 | { |
1641 | if (tex.FaceTextures[i] != null) | 1709 | if (tex.FaceTextures[i] != null) |
1642 | { | 1710 | { |
@@ -1649,15 +1717,20 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1649 | } | 1717 | } |
1650 | } | 1718 | } |
1651 | 1719 | ||
1652 | public string llGetTexture(int face) | 1720 | public LSL_String llGetTexture(int face) |
1653 | { | 1721 | { |
1654 | m_host.AddScriptLPS(1); | 1722 | m_host.AddScriptLPS(1); |
1655 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 1723 | return GetTexture(m_host, face); |
1656 | if (face == -1) | 1724 | } |
1725 | |||
1726 | private LSL_String GetTexture(SceneObjectPart part, int face) | ||
1727 | { | ||
1728 | Primitive.TextureEntry tex = part.Shape.Textures; | ||
1729 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) | ||
1657 | { | 1730 | { |
1658 | face = 0; | 1731 | face = 0; |
1659 | } | 1732 | } |
1660 | if (face > -1) | 1733 | if (face >= 0 && face < GetNumberOfSides(part)) |
1661 | { | 1734 | { |
1662 | Primitive.TextureEntryFace texface; | 1735 | Primitive.TextureEntryFace texface; |
1663 | texface = tex.GetFace((uint)face); | 1736 | texface = tex.GetFace((uint)face); |
@@ -1669,7 +1742,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1669 | } | 1742 | } |
1670 | } | 1743 | } |
1671 | 1744 | ||
1672 | public void llSetPos(LSL_Types.Vector3 pos) | 1745 | public void llSetPos(LSL_Vector pos) |
1673 | { | 1746 | { |
1674 | m_host.AddScriptLPS(1); | 1747 | m_host.AddScriptLPS(1); |
1675 | 1748 | ||
@@ -1678,10 +1751,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1678 | ScriptSleep(200); | 1751 | ScriptSleep(200); |
1679 | } | 1752 | } |
1680 | 1753 | ||
1681 | private void SetPos(SceneObjectPart part, LSL_Types.Vector3 targetPos) | 1754 | private void SetPos(SceneObjectPart part, LSL_Vector targetPos) |
1682 | { | 1755 | { |
1683 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) | 1756 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) |
1684 | LSL_Types.Vector3 currentPos = llGetLocalPos(); | 1757 | LSL_Vector currentPos = llGetLocalPos(); |
1685 | if (llVecDist(currentPos, targetPos) > 10.0f * m_distanceFactor) | 1758 | if (llVecDist(currentPos, targetPos) > 10.0f * m_distanceFactor) |
1686 | { | 1759 | { |
1687 | targetPos = currentPos + m_distanceFactor * 10.0f * llVecNorm(targetPos - currentPos); | 1760 | targetPos = currentPos + m_distanceFactor * 10.0f * llVecNorm(targetPos - currentPos); |
@@ -1697,32 +1770,32 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1697 | } | 1770 | } |
1698 | } | 1771 | } |
1699 | 1772 | ||
1700 | public LSL_Types.Vector3 llGetPos() | 1773 | public LSL_Vector llGetPos() |
1701 | { | 1774 | { |
1702 | m_host.AddScriptLPS(1); | 1775 | m_host.AddScriptLPS(1); |
1703 | return new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 1776 | return new LSL_Vector(m_host.AbsolutePosition.X, |
1704 | m_host.AbsolutePosition.Y, | 1777 | m_host.AbsolutePosition.Y, |
1705 | m_host.AbsolutePosition.Z); | 1778 | m_host.AbsolutePosition.Z); |
1706 | } | 1779 | } |
1707 | 1780 | ||
1708 | public LSL_Types.Vector3 llGetLocalPos() | 1781 | public LSL_Vector llGetLocalPos() |
1709 | { | 1782 | { |
1710 | m_host.AddScriptLPS(1); | 1783 | m_host.AddScriptLPS(1); |
1711 | if (m_host.ParentID != 0) | 1784 | if (m_host.ParentID != 0) |
1712 | { | 1785 | { |
1713 | return new LSL_Types.Vector3(m_host.OffsetPosition.X, | 1786 | return new LSL_Vector(m_host.OffsetPosition.X, |
1714 | m_host.OffsetPosition.Y, | 1787 | m_host.OffsetPosition.Y, |
1715 | m_host.OffsetPosition.Z); | 1788 | m_host.OffsetPosition.Z); |
1716 | } | 1789 | } |
1717 | else | 1790 | else |
1718 | { | 1791 | { |
1719 | return new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 1792 | return new LSL_Vector(m_host.AbsolutePosition.X, |
1720 | m_host.AbsolutePosition.Y, | 1793 | m_host.AbsolutePosition.Y, |
1721 | m_host.AbsolutePosition.Z); | 1794 | m_host.AbsolutePosition.Z); |
1722 | } | 1795 | } |
1723 | } | 1796 | } |
1724 | 1797 | ||
1725 | public void llSetRot(LSL_Types.Quaternion rot) | 1798 | public void llSetRot(LSL_Rotation rot) |
1726 | { | 1799 | { |
1727 | m_host.AddScriptLPS(1); | 1800 | m_host.AddScriptLPS(1); |
1728 | 1801 | ||
@@ -1731,31 +1804,27 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1731 | ScriptSleep(200); | 1804 | ScriptSleep(200); |
1732 | } | 1805 | } |
1733 | 1806 | ||
1734 | private void SetRot(SceneObjectPart part, LSL_Types.Quaternion rot) | 1807 | private void SetRot(SceneObjectPart part, LSL_Rotation rot) |
1735 | { | 1808 | { |
1736 | part.UpdateRotation(new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s)); | 1809 | part.UpdateRotation(new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s)); |
1737 | // Update rotation does not move the object in the physics scene if it's a linkset. | 1810 | // Update rotation does not move the object in the physics scene if it's a linkset. |
1738 | part.ParentGroup.AbsolutePosition = part.ParentGroup.AbsolutePosition; | 1811 | part.ParentGroup.AbsolutePosition = part.ParentGroup.AbsolutePosition; |
1739 | } | 1812 | } |
1740 | 1813 | ||
1741 | public LSL_Types.Quaternion llGetRot() | 1814 | public LSL_Rotation llGetRot() |
1742 | { | 1815 | { |
1743 | m_host.AddScriptLPS(1); | 1816 | m_host.AddScriptLPS(1); |
1744 | Quaternion q = m_host.RotationOffset; | 1817 | Quaternion q = m_host.RotationOffset; |
1745 | return new LSL_Types.Quaternion(q.X, q.Y, q.Z, q.W); | 1818 | return new LSL_Rotation(q.X, q.Y, q.Z, q.W); |
1746 | } | 1819 | } |
1747 | 1820 | ||
1748 | public LSL_Types.Quaternion llGetLocalRot() | 1821 | public LSL_Rotation llGetLocalRot() |
1749 | { | 1822 | { |
1750 | m_host.AddScriptLPS(1); | 1823 | m_host.AddScriptLPS(1); |
1751 | return new LSL_Types.Quaternion( | 1824 | return new LSL_Rotation(m_host.RotationOffset.X, m_host.RotationOffset.Y, m_host.RotationOffset.Z, m_host.RotationOffset.W); |
1752 | m_host.RotationOffset.X, | ||
1753 | m_host.RotationOffset.Y, | ||
1754 | m_host.RotationOffset.Z, | ||
1755 | m_host.RotationOffset.W); | ||
1756 | } | 1825 | } |
1757 | 1826 | ||
1758 | public void llSetForce(LSL_Types.Vector3 force, int local) | 1827 | public void llSetForce(LSL_Vector force, int local) |
1759 | { | 1828 | { |
1760 | m_host.AddScriptLPS(1); | 1829 | m_host.AddScriptLPS(1); |
1761 | 1830 | ||
@@ -1771,9 +1840,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1771 | } | 1840 | } |
1772 | } | 1841 | } |
1773 | 1842 | ||
1774 | public LSL_Types.Vector3 llGetForce() | 1843 | public LSL_Vector llGetForce() |
1775 | { | 1844 | { |
1776 | LSL_Types.Vector3 force = new LSL_Types.Vector3(0.0, 0.0, 0.0); | 1845 | LSL_Vector force = new LSL_Vector(0.0, 0.0, 0.0); |
1777 | 1846 | ||
1778 | m_host.AddScriptLPS(1); | 1847 | m_host.AddScriptLPS(1); |
1779 | 1848 | ||
@@ -1791,11 +1860,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1791 | return force; | 1860 | return force; |
1792 | } | 1861 | } |
1793 | 1862 | ||
1794 | public LSL_Types.LSLInteger llTarget(LSL_Types.Vector3 position, double range) | 1863 | public LSL_Integer llTarget(LSL_Vector position, double range) |
1795 | { | 1864 | { |
1796 | m_host.AddScriptLPS(1); | 1865 | m_host.AddScriptLPS(1); |
1797 | return m_host.registerTargetWaypoint(new Vector3((float)position.x, (float)position.y, (float)position.z), (float)range); | 1866 | return m_host.registerTargetWaypoint(new Vector3((float)position.x, (float)position.y, (float)position.z), (float)range); |
1798 | |||
1799 | } | 1867 | } |
1800 | 1868 | ||
1801 | public void llTargetRemove(int number) | 1869 | public void llTargetRemove(int number) |
@@ -1804,7 +1872,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1804 | m_host.unregisterTargetWaypoint(number); | 1872 | m_host.unregisterTargetWaypoint(number); |
1805 | } | 1873 | } |
1806 | 1874 | ||
1807 | public LSL_Types.LSLInteger llRotTarget(LSL_Types.Quaternion rot, double error) | 1875 | public LSL_Integer llRotTarget(LSL_Rotation rot, double error) |
1808 | { | 1876 | { |
1809 | m_host.AddScriptLPS(1); | 1877 | m_host.AddScriptLPS(1); |
1810 | NotImplemented("llRotTarget"); | 1878 | NotImplemented("llRotTarget"); |
@@ -1817,7 +1885,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1817 | NotImplemented("llRotTargetRemove"); | 1885 | NotImplemented("llRotTargetRemove"); |
1818 | } | 1886 | } |
1819 | 1887 | ||
1820 | public void llMoveToTarget(LSL_Types.Vector3 target, double tau) | 1888 | public void llMoveToTarget(LSL_Vector target, double tau) |
1821 | { | 1889 | { |
1822 | m_host.AddScriptLPS(1); | 1890 | m_host.AddScriptLPS(1); |
1823 | m_host.MoveToTarget(new Vector3((float)target.x, (float)target.y, (float)target.z), (float)tau); | 1891 | m_host.MoveToTarget(new Vector3((float)target.x, (float)target.y, (float)target.z), (float)tau); |
@@ -1829,7 +1897,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1829 | m_host.StopMoveToTarget(); | 1897 | m_host.StopMoveToTarget(); |
1830 | } | 1898 | } |
1831 | 1899 | ||
1832 | public void llApplyImpulse(LSL_Types.Vector3 force, int local) | 1900 | public void llApplyImpulse(LSL_Vector force, int local) |
1833 | { | 1901 | { |
1834 | m_host.AddScriptLPS(1); | 1902 | m_host.AddScriptLPS(1); |
1835 | //No energy force yet | 1903 | //No energy force yet |
@@ -1844,62 +1912,62 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1844 | m_host.ApplyImpulse(new Vector3((float)force.x, (float)force.y, (float)force.z), local != 0); | 1912 | m_host.ApplyImpulse(new Vector3((float)force.x, (float)force.y, (float)force.z), local != 0); |
1845 | } | 1913 | } |
1846 | 1914 | ||
1847 | public void llApplyRotationalImpulse(LSL_Types.Vector3 force, int local) | 1915 | public void llApplyRotationalImpulse(LSL_Vector force, int local) |
1848 | { | 1916 | { |
1849 | m_host.AddScriptLPS(1); | 1917 | m_host.AddScriptLPS(1); |
1850 | NotImplemented("llApplyRotationalImpulse"); | 1918 | NotImplemented("llApplyRotationalImpulse"); |
1851 | } | 1919 | } |
1852 | 1920 | ||
1853 | public void llSetTorque(LSL_Types.Vector3 torque, int local) | 1921 | public void llSetTorque(LSL_Vector torque, int local) |
1854 | { | 1922 | { |
1855 | m_host.AddScriptLPS(1); | 1923 | m_host.AddScriptLPS(1); |
1856 | NotImplemented("llSetTorque"); | 1924 | NotImplemented("llSetTorque"); |
1857 | } | 1925 | } |
1858 | 1926 | ||
1859 | public LSL_Types.Vector3 llGetTorque() | 1927 | public LSL_Vector llGetTorque() |
1860 | { | 1928 | { |
1861 | m_host.AddScriptLPS(1); | 1929 | m_host.AddScriptLPS(1); |
1862 | NotImplemented("llGetTorque"); | 1930 | NotImplemented("llGetTorque"); |
1863 | return new LSL_Types.Vector3(); | 1931 | return new LSL_Vector(); |
1864 | } | 1932 | } |
1865 | 1933 | ||
1866 | public void llSetForceAndTorque(LSL_Types.Vector3 force, LSL_Types.Vector3 torque, int local) | 1934 | public void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local) |
1867 | { | 1935 | { |
1868 | m_host.AddScriptLPS(1); | 1936 | m_host.AddScriptLPS(1); |
1869 | NotImplemented("llSetForceAndTorque"); | 1937 | NotImplemented("llSetForceAndTorque"); |
1870 | } | 1938 | } |
1871 | 1939 | ||
1872 | public LSL_Types.Vector3 llGetVel() | 1940 | public LSL_Vector llGetVel() |
1873 | { | 1941 | { |
1874 | m_host.AddScriptLPS(1); | 1942 | m_host.AddScriptLPS(1); |
1875 | return new LSL_Types.Vector3(m_host.Velocity.X, m_host.Velocity.Y, m_host.Velocity.Z); | 1943 | return new LSL_Vector(m_host.Velocity.X, m_host.Velocity.Y, m_host.Velocity.Z); |
1876 | } | 1944 | } |
1877 | 1945 | ||
1878 | public LSL_Types.Vector3 llGetAccel() | 1946 | public LSL_Vector llGetAccel() |
1879 | { | 1947 | { |
1880 | m_host.AddScriptLPS(1); | 1948 | m_host.AddScriptLPS(1); |
1881 | return new LSL_Types.Vector3(m_host.Acceleration.X, m_host.Acceleration.Y, m_host.Acceleration.Z); | 1949 | return new LSL_Vector(m_host.Acceleration.X, m_host.Acceleration.Y, m_host.Acceleration.Z); |
1882 | } | 1950 | } |
1883 | 1951 | ||
1884 | public LSL_Types.Vector3 llGetOmega() | 1952 | public LSL_Vector llGetOmega() |
1885 | { | 1953 | { |
1886 | m_host.AddScriptLPS(1); | 1954 | m_host.AddScriptLPS(1); |
1887 | return new LSL_Types.Vector3(m_host.RotationalVelocity.X, m_host.RotationalVelocity.Y, m_host.RotationalVelocity.Z); | 1955 | return new LSL_Vector(m_host.RotationalVelocity.X, m_host.RotationalVelocity.Y, m_host.RotationalVelocity.Z); |
1888 | } | 1956 | } |
1889 | 1957 | ||
1890 | public double llGetTimeOfDay() | 1958 | public LSL_Float llGetTimeOfDay() |
1891 | { | 1959 | { |
1892 | m_host.AddScriptLPS(1); | 1960 | m_host.AddScriptLPS(1); |
1893 | return (double)(((DateTime.Now.TimeOfDay.TotalMilliseconds / 1000) % (3600 * 4)) * World.TimeDilation); | 1961 | return (double)(((DateTime.Now.TimeOfDay.TotalMilliseconds / 1000) % (3600 * 4)) * World.TimeDilation); |
1894 | } | 1962 | } |
1895 | 1963 | ||
1896 | public double llGetWallclock() | 1964 | public LSL_Float llGetWallclock() |
1897 | { | 1965 | { |
1898 | m_host.AddScriptLPS(1); | 1966 | m_host.AddScriptLPS(1); |
1899 | return DateTime.Now.TimeOfDay.TotalSeconds; | 1967 | return DateTime.Now.TimeOfDay.TotalSeconds; |
1900 | } | 1968 | } |
1901 | 1969 | ||
1902 | public double llGetTime() | 1970 | public LSL_Float llGetTime() |
1903 | { | 1971 | { |
1904 | m_host.AddScriptLPS(1); | 1972 | m_host.AddScriptLPS(1); |
1905 | TimeSpan ScriptTime = DateTime.Now - m_timer; | 1973 | TimeSpan ScriptTime = DateTime.Now - m_timer; |
@@ -1912,7 +1980,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1912 | m_timer = DateTime.Now; | 1980 | m_timer = DateTime.Now; |
1913 | } | 1981 | } |
1914 | 1982 | ||
1915 | public double llGetAndResetTime() | 1983 | public LSL_Float llGetAndResetTime() |
1916 | { | 1984 | { |
1917 | m_host.AddScriptLPS(1); | 1985 | m_host.AddScriptLPS(1); |
1918 | TimeSpan ScriptTime = DateTime.Now - m_timer; | 1986 | TimeSpan ScriptTime = DateTime.Now - m_timer; |
@@ -2017,7 +2085,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2017 | /// this more complicated than it might otherwise seem. | 2085 | /// this more complicated than it might otherwise seem. |
2018 | /// </summary> | 2086 | /// </summary> |
2019 | 2087 | ||
2020 | public string llGetSubString(string src, int start, int end) | 2088 | public LSL_String llGetSubString(string src, int start, int end) |
2021 | { | 2089 | { |
2022 | 2090 | ||
2023 | m_host.AddScriptLPS(1); | 2091 | m_host.AddScriptLPS(1); |
@@ -2113,7 +2181,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2113 | /// i.e. end < start. | 2181 | /// i.e. end < start. |
2114 | /// </summary> | 2182 | /// </summary> |
2115 | 2183 | ||
2116 | public string llDeleteSubString(string src, int start, int end) | 2184 | public LSL_String llDeleteSubString(string src, int start, int end) |
2117 | { | 2185 | { |
2118 | 2186 | ||
2119 | m_host.AddScriptLPS(1); | 2187 | m_host.AddScriptLPS(1); |
@@ -2196,7 +2264,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2196 | /// string bound, with the result being a concatenation. | 2264 | /// string bound, with the result being a concatenation. |
2197 | /// </summary> | 2265 | /// </summary> |
2198 | 2266 | ||
2199 | public string llInsertString(string dest, int index, string src) | 2267 | public LSL_String llInsertString(string dest, int index, string src) |
2200 | { | 2268 | { |
2201 | 2269 | ||
2202 | m_host.AddScriptLPS(1); | 2270 | m_host.AddScriptLPS(1); |
@@ -2234,19 +2302,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2234 | 2302 | ||
2235 | } | 2303 | } |
2236 | 2304 | ||
2237 | public string llToUpper(string src) | 2305 | public LSL_String llToUpper(string src) |
2238 | { | 2306 | { |
2239 | m_host.AddScriptLPS(1); | 2307 | m_host.AddScriptLPS(1); |
2240 | return src.ToUpper(); | 2308 | return src.ToUpper(); |
2241 | } | 2309 | } |
2242 | 2310 | ||
2243 | public string llToLower(string src) | 2311 | public LSL_String llToLower(string src) |
2244 | { | 2312 | { |
2245 | m_host.AddScriptLPS(1); | 2313 | m_host.AddScriptLPS(1); |
2246 | return src.ToLower(); | 2314 | return src.ToLower(); |
2247 | } | 2315 | } |
2248 | 2316 | ||
2249 | public LSL_Types.LSLInteger llGiveMoney(string destination, int amount) | 2317 | public LSL_Integer llGiveMoney(string destination, int amount) |
2250 | { | 2318 | { |
2251 | UUID invItemID=InventorySelf(); | 2319 | UUID invItemID=InventorySelf(); |
2252 | if (invItemID == UUID.Zero) | 2320 | if (invItemID == UUID.Zero) |
@@ -2315,7 +2383,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2315 | // ScriptSleep(100); | 2383 | // ScriptSleep(100); |
2316 | } | 2384 | } |
2317 | 2385 | ||
2318 | public void llRezAtRoot(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param) | 2386 | public void llRezAtRoot(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
2319 | { | 2387 | { |
2320 | m_host.AddScriptLPS(1); | 2388 | m_host.AddScriptLPS(1); |
2321 | if (Double.IsNaN(rot.x) || Double.IsNaN(rot.y) || Double.IsNaN(rot.z) || Double.IsNaN(rot.s)) | 2389 | if (Double.IsNaN(rot.x) || Double.IsNaN(rot.y) || Double.IsNaN(rot.z) || Double.IsNaN(rot.s)) |
@@ -2363,11 +2431,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2363 | // objects rezzed with this method are die_at_edge by default. | 2431 | // objects rezzed with this method are die_at_edge by default. |
2364 | new_group.RootPart.SetDieAtEdge(true); | 2432 | new_group.RootPart.SetDieAtEdge(true); |
2365 | 2433 | ||
2366 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(m_localID, m_itemID, "object_rez", EventQueueManager.llDetectNull, new Object[] { new LSL_Types.LSLString(new_group.RootPart.ToString()) }); | 2434 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(m_localID, m_itemID, "object_rez", EventQueueManager.llDetectNull, new Object[] { new LSL_String(new_group.RootPart.ToString()) }); |
2367 | float groupmass = new_group.GetMass(); | 2435 | float groupmass = new_group.GetMass(); |
2368 | 2436 | ||
2369 | //Recoil. | 2437 | //Recoil. |
2370 | llApplyImpulse(new LSL_Types.Vector3(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0); | 2438 | llApplyImpulse(new LSL_Vector(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0); |
2371 | found = true; | 2439 | found = true; |
2372 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) | 2440 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) |
2373 | ScriptSleep((int)((groupmass * velmag) / 10)); | 2441 | ScriptSleep((int)((groupmass * velmag) / 10)); |
@@ -2379,12 +2447,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2379 | llSay(0, "Could not find object " + inventory); | 2447 | llSay(0, "Could not find object " + inventory); |
2380 | } | 2448 | } |
2381 | 2449 | ||
2382 | public void llRezObject(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param) | 2450 | public void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
2383 | { | 2451 | { |
2384 | llRezAtRoot(inventory, pos, vel, rot, param); | 2452 | llRezAtRoot(inventory, pos, vel, rot, param); |
2385 | } | 2453 | } |
2386 | 2454 | ||
2387 | public void llLookAt(LSL_Types.Vector3 target, double strength, double damping) | 2455 | public void llLookAt(LSL_Vector target, double strength, double damping) |
2388 | { | 2456 | { |
2389 | m_host.AddScriptLPS(1); | 2457 | m_host.AddScriptLPS(1); |
2390 | NotImplemented("llLookAt"); | 2458 | NotImplemented("llLookAt"); |
@@ -2409,7 +2477,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2409 | Thread.Sleep((int)(sec * 1000)); | 2477 | Thread.Sleep((int)(sec * 1000)); |
2410 | } | 2478 | } |
2411 | 2479 | ||
2412 | public double llGetMass() | 2480 | public LSL_Float llGetMass() |
2413 | { | 2481 | { |
2414 | m_host.AddScriptLPS(1); | 2482 | m_host.AddScriptLPS(1); |
2415 | return m_host.GetMass(); | 2483 | return m_host.GetMass(); |
@@ -2495,7 +2563,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2495 | Deprecated("llReleaseCamera"); | 2563 | Deprecated("llReleaseCamera"); |
2496 | } | 2564 | } |
2497 | 2565 | ||
2498 | public string llGetOwner() | 2566 | public LSL_String llGetOwner() |
2499 | { | 2567 | { |
2500 | m_host.AddScriptLPS(1); | 2568 | m_host.AddScriptLPS(1); |
2501 | 2569 | ||
@@ -2544,6 +2612,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2544 | msg.RegionID = World.RegionInfo.RegionID.Guid;//RegionID.Guid; | 2612 | msg.RegionID = World.RegionInfo.RegionID.Guid;//RegionID.Guid; |
2545 | msg.binaryBucket = new byte[0];// binaryBucket; | 2613 | msg.binaryBucket = new byte[0];// binaryBucket; |
2546 | World.TriggerGridInstantMessage(msg, InstantMessageReceiver.IMModule); | 2614 | World.TriggerGridInstantMessage(msg, InstantMessageReceiver.IMModule); |
2615 | // ScriptSleep(2000); | ||
2547 | } | 2616 | } |
2548 | 2617 | ||
2549 | public void llEmail(string address, string subject, string message) | 2618 | public void llEmail(string address, string subject, string message) |
@@ -2563,7 +2632,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2563 | NotImplemented("llGetNextEmail"); | 2632 | NotImplemented("llGetNextEmail"); |
2564 | } | 2633 | } |
2565 | 2634 | ||
2566 | public string llGetKey() | 2635 | public LSL_String llGetKey() |
2567 | { | 2636 | { |
2568 | m_host.AddScriptLPS(1); | 2637 | m_host.AddScriptLPS(1); |
2569 | return m_host.UUID.ToString(); | 2638 | return m_host.UUID.ToString(); |
@@ -2607,13 +2676,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2607 | Deprecated("llSoundPreload"); | 2676 | Deprecated("llSoundPreload"); |
2608 | } | 2677 | } |
2609 | 2678 | ||
2610 | public void llRotLookAt(LSL_Types.Quaternion target, double strength, double damping) | 2679 | public void llRotLookAt(LSL_Rotation target, double strength, double damping) |
2611 | { | 2680 | { |
2612 | m_host.AddScriptLPS(1); | 2681 | m_host.AddScriptLPS(1); |
2613 | NotImplemented("llRotLookAt"); | 2682 | NotImplemented("llRotLookAt"); |
2614 | } | 2683 | } |
2615 | 2684 | ||
2616 | public LSL_Types.LSLInteger llStringLength(string str) | 2685 | public LSL_Integer llStringLength(string str) |
2617 | { | 2686 | { |
2618 | m_host.AddScriptLPS(1); | 2687 | m_host.AddScriptLPS(1); |
2619 | if (str.Length > 0) | 2688 | if (str.Length > 0) |
@@ -2697,22 +2766,23 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2697 | NotImplemented("llStopPointAt"); | 2766 | NotImplemented("llStopPointAt"); |
2698 | } | 2767 | } |
2699 | 2768 | ||
2700 | public void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain) | 2769 | public void llTargetOmega(LSL_Vector axis, double spinrate, double gain) |
2701 | { | 2770 | { |
2702 | m_host.AddScriptLPS(1); | 2771 | m_host.AddScriptLPS(1); |
2703 | m_host.RotationalVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); | 2772 | m_host.RotationalVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); |
2704 | m_host.AngularVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); | 2773 | m_host.AngularVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); |
2705 | m_host.ScheduleTerseUpdate(); | 2774 | m_host.ScheduleTerseUpdate(); |
2706 | m_host.SendTerseUpdateToAllClients(); | 2775 | m_host.SendTerseUpdateToAllClients(); |
2776 | m_host.ParentGroup.HasGroupChanged = true; | ||
2707 | } | 2777 | } |
2708 | 2778 | ||
2709 | public LSL_Types.LSLInteger llGetStartParameter() | 2779 | public LSL_Integer llGetStartParameter() |
2710 | { | 2780 | { |
2711 | // This is not handled here | 2781 | // This is not handled here |
2712 | return 0; | 2782 | return 0; |
2713 | } | 2783 | } |
2714 | 2784 | ||
2715 | public void llGodLikeRezObject(string inventory, LSL_Types.Vector3 pos) | 2785 | public void llGodLikeRezObject(string inventory, LSL_Vector pos) |
2716 | { | 2786 | { |
2717 | m_host.AddScriptLPS(1); | 2787 | m_host.AddScriptLPS(1); |
2718 | NotImplemented("llGodLikeRezObject"); | 2788 | NotImplemented("llGodLikeRezObject"); |
@@ -2732,15 +2802,20 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2732 | 2802 | ||
2733 | if (agentID == UUID.Zero || perm == 0) // Releasing permissions | 2803 | if (agentID == UUID.Zero || perm == 0) // Releasing permissions |
2734 | { | 2804 | { |
2805 | llReleaseControls(); | ||
2806 | |||
2735 | m_host.TaskInventory[invItemID].PermsGranter=UUID.Zero; | 2807 | m_host.TaskInventory[invItemID].PermsGranter=UUID.Zero; |
2736 | m_host.TaskInventory[invItemID].PermsMask=0; | 2808 | m_host.TaskInventory[invItemID].PermsMask=0; |
2737 | 2809 | ||
2738 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 2810 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
2739 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Types.LSLInteger(0)}); | 2811 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Integer(0)}); |
2740 | 2812 | ||
2741 | return; | 2813 | return; |
2742 | } | 2814 | } |
2743 | 2815 | ||
2816 | if ( m_host.TaskInventory[invItemID].PermsGranter != agentID || (perm & BuiltIn_Commands_BaseClass.PERMISSION_TAKE_CONTROLS) == 0) | ||
2817 | llReleaseControls(); | ||
2818 | |||
2744 | m_host.AddScriptLPS(1); | 2819 | m_host.AddScriptLPS(1); |
2745 | 2820 | ||
2746 | if (m_host.ParentGroup.RootPart.IsAttachment && agent == m_host.ParentGroup.RootPart.AttachedAvatar) | 2821 | if (m_host.ParentGroup.RootPart.IsAttachment && agent == m_host.ParentGroup.RootPart.AttachedAvatar) |
@@ -2757,7 +2832,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2757 | m_host.TaskInventory[invItemID].PermsMask=perm; | 2832 | m_host.TaskInventory[invItemID].PermsMask=perm; |
2758 | 2833 | ||
2759 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 2834 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
2760 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Types.LSLInteger(perm)}); | 2835 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Integer(perm)}); |
2761 | 2836 | ||
2762 | return; | 2837 | return; |
2763 | } | 2838 | } |
@@ -2775,7 +2850,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2775 | m_host.TaskInventory[invItemID].PermsMask=perm; | 2850 | m_host.TaskInventory[invItemID].PermsMask=perm; |
2776 | 2851 | ||
2777 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 2852 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
2778 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Types.LSLInteger(perm)}); | 2853 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Integer(perm)}); |
2779 | 2854 | ||
2780 | return; | 2855 | return; |
2781 | } | 2856 | } |
@@ -2803,7 +2878,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2803 | 2878 | ||
2804 | // Requested agent is not in range, refuse perms | 2879 | // Requested agent is not in range, refuse perms |
2805 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 2880 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
2806 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Types.LSLInteger(0)}); | 2881 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Integer(0)}); |
2807 | } | 2882 | } |
2808 | 2883 | ||
2809 | void handleScriptAnswer(IClientAPI client, UUID taskID, UUID itemID, int answer) | 2884 | void handleScriptAnswer(IClientAPI client, UUID taskID, UUID itemID, int answer) |
@@ -2821,10 +2896,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2821 | 2896 | ||
2822 | m_host.TaskInventory[invItemID].PermsMask=answer; | 2897 | m_host.TaskInventory[invItemID].PermsMask=answer; |
2823 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 2898 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
2824 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Types.LSLInteger(answer)}); | 2899 | m_localID, m_itemID, "run_time_permissions", EventQueueManager.llDetectNull, new Object[] {new LSL_Integer(answer)}); |
2825 | } | 2900 | } |
2826 | 2901 | ||
2827 | public string llGetPermissionsKey() | 2902 | public LSL_String llGetPermissionsKey() |
2828 | { | 2903 | { |
2829 | m_host.AddScriptLPS(1); | 2904 | m_host.AddScriptLPS(1); |
2830 | 2905 | ||
@@ -2839,7 +2914,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2839 | return UUID.Zero.ToString(); | 2914 | return UUID.Zero.ToString(); |
2840 | } | 2915 | } |
2841 | 2916 | ||
2842 | public LSL_Types.LSLInteger llGetPermissions() | 2917 | public LSL_Integer llGetPermissions() |
2843 | { | 2918 | { |
2844 | m_host.AddScriptLPS(1); | 2919 | m_host.AddScriptLPS(1); |
2845 | 2920 | ||
@@ -2854,7 +2929,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2854 | return 0; | 2929 | return 0; |
2855 | } | 2930 | } |
2856 | 2931 | ||
2857 | public LSL_Types.LSLInteger llGetLinkNumber() | 2932 | public LSL_Integer llGetLinkNumber() |
2858 | { | 2933 | { |
2859 | m_host.AddScriptLPS(1); | 2934 | m_host.AddScriptLPS(1); |
2860 | 2935 | ||
@@ -2868,7 +2943,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2868 | } | 2943 | } |
2869 | } | 2944 | } |
2870 | 2945 | ||
2871 | public void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face) | 2946 | public void llSetLinkColor(int linknumber, LSL_Vector color, int face) |
2872 | { | 2947 | { |
2873 | m_host.AddScriptLPS(1); | 2948 | m_host.AddScriptLPS(1); |
2874 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknumber); | 2949 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknumber); |
@@ -2991,6 +3066,8 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
2991 | } | 3066 | } |
2992 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3067 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
2993 | parentPrim.RootPart.AddFlag(PrimFlags.CreateSelected); | 3068 | parentPrim.RootPart.AddFlag(PrimFlags.CreateSelected); |
3069 | parentPrim.HasGroupChanged = true; | ||
3070 | parentPrim.ScheduleGroupForFullUpdate(); | ||
2994 | parentPrim.GetProperties(client); | 3071 | parentPrim.GetProperties(client); |
2995 | 3072 | ||
2996 | ScriptSleep(1000); | 3073 | ScriptSleep(1000); |
@@ -3067,13 +3144,14 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3067 | SceneObjectGroup parentPrim = m_host.ParentGroup; | 3144 | SceneObjectGroup parentPrim = m_host.ParentGroup; |
3068 | List<SceneObjectPart> parts = new List<SceneObjectPart>(parentPrim.Children.Values); | 3145 | List<SceneObjectPart> parts = new List<SceneObjectPart>(parentPrim.Children.Values); |
3069 | parts.Remove(parentPrim.RootPart); | 3146 | parts.Remove(parentPrim.RootPart); |
3070 | foreach (SceneObjectPart part in parts) { | 3147 | foreach (SceneObjectPart part in parts) |
3148 | { | ||
3071 | parentPrim.DelinkFromGroup(part.LocalId, true); | 3149 | parentPrim.DelinkFromGroup(part.LocalId, true); |
3072 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3150 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3073 | } | 3151 | } |
3074 | } | 3152 | } |
3075 | 3153 | ||
3076 | public string llGetLinkKey(int linknum) | 3154 | public LSL_String llGetLinkKey(int linknum) |
3077 | { | 3155 | { |
3078 | m_host.AddScriptLPS(1); | 3156 | m_host.AddScriptLPS(1); |
3079 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); | 3157 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
@@ -3087,7 +3165,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3087 | } | 3165 | } |
3088 | } | 3166 | } |
3089 | 3167 | ||
3090 | public string llGetLinkName(int linknum) | 3168 | public LSL_String llGetLinkName(int linknum) |
3091 | { | 3169 | { |
3092 | m_host.AddScriptLPS(1); | 3170 | m_host.AddScriptLPS(1); |
3093 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); | 3171 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
@@ -3101,7 +3179,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3101 | } | 3179 | } |
3102 | } | 3180 | } |
3103 | 3181 | ||
3104 | public LSL_Types.LSLInteger llGetInventoryNumber(int type) | 3182 | public LSL_Integer llGetInventoryNumber(int type) |
3105 | { | 3183 | { |
3106 | m_host.AddScriptLPS(1); | 3184 | m_host.AddScriptLPS(1); |
3107 | int count = 0; | 3185 | int count = 0; |
@@ -3115,7 +3193,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3115 | return count; | 3193 | return count; |
3116 | } | 3194 | } |
3117 | 3195 | ||
3118 | public string llGetInventoryName(int type, int number) | 3196 | public LSL_String llGetInventoryName(int type, int number) |
3119 | { | 3197 | { |
3120 | m_host.AddScriptLPS(1); | 3198 | m_host.AddScriptLPS(1); |
3121 | ArrayList keys = new ArrayList(); | 3199 | ArrayList keys = new ArrayList(); |
@@ -3172,7 +3250,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3172 | // assume it is not running. | 3250 | // assume it is not running. |
3173 | } | 3251 | } |
3174 | 3252 | ||
3175 | public double llGetEnergy() | 3253 | public LSL_Float llGetEnergy() |
3176 | { | 3254 | { |
3177 | m_host.AddScriptLPS(1); | 3255 | m_host.AddScriptLPS(1); |
3178 | // TODO: figure out real energy value | 3256 | // TODO: figure out real energy value |
@@ -3236,16 +3314,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3236 | } | 3314 | } |
3237 | } | 3315 | } |
3238 | 3316 | ||
3239 | public void llSetText(string text, LSL_Types.Vector3 color, double alpha) | 3317 | public void llSetText(string text, LSL_Vector color, double alpha) |
3240 | { | 3318 | { |
3241 | m_host.AddScriptLPS(1); | 3319 | m_host.AddScriptLPS(1); |
3242 | Vector3 av3 = new Vector3(Util.Clip((float)color.x, 0.0f, 1.0f), | 3320 | Vector3 av3 = new Vector3(Util.Clip((float)color.x, 0.0f, 1.0f), |
3243 | Util.Clip((float)color.y, 0.0f, 1.0f), | 3321 | Util.Clip((float)color.y, 0.0f, 1.0f), |
3244 | Util.Clip((float)color.z, 0.0f, 1.0f)); | 3322 | Util.Clip((float)color.z, 0.0f, 1.0f)); |
3245 | m_host.SetText(text, av3, Util.Clip((float)alpha, 0.0f, 1.0f)); | 3323 | m_host.SetText(text, av3, Util.Clip((float)alpha, 0.0f, 1.0f)); |
3324 | m_host.ParentGroup.HasGroupChanged = true; | ||
3246 | } | 3325 | } |
3247 | 3326 | ||
3248 | public double llWater(LSL_Types.Vector3 offset) | 3327 | public LSL_Float llWater(LSL_Vector offset) |
3249 | { | 3328 | { |
3250 | m_host.AddScriptLPS(1); | 3329 | m_host.AddScriptLPS(1); |
3251 | return World.RegionInfo.RegionSettings.WaterHeight; | 3330 | return World.RegionInfo.RegionSettings.WaterHeight; |
@@ -3257,7 +3336,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3257 | NotImplemented("llPassTouches"); | 3336 | NotImplemented("llPassTouches"); |
3258 | } | 3337 | } |
3259 | 3338 | ||
3260 | public string llRequestAgentData(string id, int data) | 3339 | public LSL_String llRequestAgentData(string id, int data) |
3261 | { | 3340 | { |
3262 | m_host.AddScriptLPS(1); | 3341 | m_host.AddScriptLPS(1); |
3263 | 3342 | ||
@@ -3310,7 +3389,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3310 | return tid.ToString(); | 3389 | return tid.ToString(); |
3311 | } | 3390 | } |
3312 | 3391 | ||
3313 | public string llRequestInventoryData(string name) | 3392 | public LSL_String llRequestInventoryData(string name) |
3314 | { | 3393 | { |
3315 | m_host.AddScriptLPS(1); | 3394 | m_host.AddScriptLPS(1); |
3316 | 3395 | ||
@@ -3372,6 +3451,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3372 | // ScriptSleep(5000); | 3451 | // ScriptSleep(5000); |
3373 | } | 3452 | } |
3374 | 3453 | ||
3454 | public void llTextBox(string avatar, string message, int chat_channel) | ||
3455 | { | ||
3456 | m_host.AddScriptLPS(1); | ||
3457 | NotImplemented("llTextBox"); | ||
3458 | } | ||
3459 | |||
3375 | public void llModifyLand(int action, int brush) | 3460 | public void llModifyLand(int action, int brush) |
3376 | { | 3461 | { |
3377 | m_host.AddScriptLPS(1); | 3462 | m_host.AddScriptLPS(1); |
@@ -3390,7 +3475,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3390 | NotImplemented("llCollisionSprite"); | 3475 | NotImplemented("llCollisionSprite"); |
3391 | } | 3476 | } |
3392 | 3477 | ||
3393 | public string llGetAnimation(string id) | 3478 | public LSL_String llGetAnimation(string id) |
3394 | { | 3479 | { |
3395 | m_host.AddScriptLPS(1); | 3480 | m_host.AddScriptLPS(1); |
3396 | NotImplemented("llGetAnimation"); | 3481 | NotImplemented("llGetAnimation"); |
@@ -3427,7 +3512,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3427 | 3512 | ||
3428 | object[] resobj = new object[] | 3513 | object[] resobj = new object[] |
3429 | { | 3514 | { |
3430 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3515 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3431 | }; | 3516 | }; |
3432 | 3517 | ||
3433 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3518 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3451,7 +3536,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3451 | partItemID = item.ItemID; | 3536 | partItemID = item.ItemID; |
3452 | Object[] resobj = new object[] | 3537 | Object[] resobj = new object[] |
3453 | { | 3538 | { |
3454 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3539 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3455 | }; | 3540 | }; |
3456 | 3541 | ||
3457 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3542 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3479,7 +3564,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3479 | partItemID = item.ItemID; | 3564 | partItemID = item.ItemID; |
3480 | Object[] resobj = new object[] | 3565 | Object[] resobj = new object[] |
3481 | { | 3566 | { |
3482 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3567 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3483 | }; | 3568 | }; |
3484 | 3569 | ||
3485 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3570 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3509,7 +3594,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3509 | partItemID = item.ItemID; | 3594 | partItemID = item.ItemID; |
3510 | Object[] resobj = new object[] | 3595 | Object[] resobj = new object[] |
3511 | { | 3596 | { |
3512 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3597 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3513 | }; | 3598 | }; |
3514 | 3599 | ||
3515 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3600 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3533,7 +3618,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3533 | 3618 | ||
3534 | object[] resobj = new object[] | 3619 | object[] resobj = new object[] |
3535 | { | 3620 | { |
3536 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3621 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3537 | }; | 3622 | }; |
3538 | 3623 | ||
3539 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3624 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3560,7 +3645,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3560 | partItemID = item.ItemID; | 3645 | partItemID = item.ItemID; |
3561 | Object[] resObjDef = new object[] | 3646 | Object[] resObjDef = new object[] |
3562 | { | 3647 | { |
3563 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3648 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3564 | }; | 3649 | }; |
3565 | 3650 | ||
3566 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( | 3651 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( |
@@ -3578,7 +3663,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3578 | 3663 | ||
3579 | } | 3664 | } |
3580 | 3665 | ||
3581 | public void llPushObject(string target, LSL_Types.Vector3 impulse, LSL_Types.Vector3 ang_impulse, int local) | 3666 | public void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local) |
3582 | { | 3667 | { |
3583 | m_host.AddScriptLPS(1); | 3668 | m_host.AddScriptLPS(1); |
3584 | SceneObjectPart targ = World.GetSceneObjectPart(target); | 3669 | SceneObjectPart targ = World.GetSceneObjectPart(target); |
@@ -3593,7 +3678,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3593 | NotImplemented("llPassCollisions"); | 3678 | NotImplemented("llPassCollisions"); |
3594 | } | 3679 | } |
3595 | 3680 | ||
3596 | public string llGetScriptName() | 3681 | public LSL_String llGetScriptName() |
3597 | { | 3682 | { |
3598 | 3683 | ||
3599 | string result = String.Empty; | 3684 | string result = String.Empty; |
@@ -3670,17 +3755,22 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3670 | 3755 | ||
3671 | } | 3756 | } |
3672 | 3757 | ||
3673 | public LSL_Types.LSLInteger llGetNumberOfSides() | 3758 | public LSL_Integer llGetNumberOfSides() |
3674 | { | 3759 | { |
3675 | m_host.AddScriptLPS(1); | 3760 | m_host.AddScriptLPS(1); |
3761 | return GetNumberOfSides(m_host); | ||
3762 | } | ||
3763 | |||
3764 | private int GetNumberOfSides(SceneObjectPart part) | ||
3765 | { | ||
3676 | int ret = 0; | 3766 | int ret = 0; |
3677 | bool hasCut; | 3767 | bool hasCut; |
3678 | bool hasHollow; | 3768 | bool hasHollow; |
3679 | bool hasDimple; | 3769 | bool hasDimple; |
3680 | bool hasProfileCut; | 3770 | bool hasProfileCut; |
3681 | 3771 | ||
3682 | int primType = getScriptPrimType(m_host.Shape); | 3772 | int primType = getScriptPrimType(part.Shape); |
3683 | hasCutHollowDimpleProfileCut(primType, m_host.Shape, out hasCut, out hasHollow, out hasDimple, out hasProfileCut); | 3773 | hasCutHollowDimpleProfileCut(primType, part.Shape, out hasCut, out hasHollow, out hasDimple, out hasProfileCut); |
3684 | 3774 | ||
3685 | switch (primType) | 3775 | switch (primType) |
3686 | { | 3776 | { |
@@ -3759,7 +3849,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3759 | // Xantor 29/apr/2008 | 3849 | // Xantor 29/apr/2008 |
3760 | // Returns rotation described by rotating angle radians about axis. | 3850 | // Returns rotation described by rotating angle radians about axis. |
3761 | // q = cos(a/2) + i (x * sin(a/2)) + j (y * sin(a/2)) + k (z * sin(a/2)) | 3851 | // q = cos(a/2) + i (x * sin(a/2)) + j (y * sin(a/2)) + k (z * sin(a/2)) |
3762 | public LSL_Types.Quaternion llAxisAngle2Rot(LSL_Types.Vector3 axis, double angle) | 3852 | public LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle) |
3763 | { | 3853 | { |
3764 | m_host.AddScriptLPS(1); | 3854 | m_host.AddScriptLPS(1); |
3765 | 3855 | ||
@@ -3771,13 +3861,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3771 | y = axis.y * t; | 3861 | y = axis.y * t; |
3772 | z = axis.z * t; | 3862 | z = axis.z * t; |
3773 | 3863 | ||
3774 | return new LSL_Types.Quaternion(x,y,z,s); | 3864 | return new LSL_Rotation(x,y,z,s); |
3775 | } | 3865 | } |
3776 | 3866 | ||
3777 | 3867 | ||
3778 | // Xantor 29/apr/2008 | 3868 | // Xantor 29/apr/2008 |
3779 | // converts a Quaternion to X,Y,Z axis rotations | 3869 | // converts a Quaternion to X,Y,Z axis rotations |
3780 | public LSL_Types.Vector3 llRot2Axis(LSL_Types.Quaternion rot) | 3870 | public LSL_Vector llRot2Axis(LSL_Rotation rot) |
3781 | { | 3871 | { |
3782 | m_host.AddScriptLPS(1); | 3872 | m_host.AddScriptLPS(1); |
3783 | double x,y,z; | 3873 | double x,y,z; |
@@ -3809,13 +3899,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3809 | } | 3899 | } |
3810 | 3900 | ||
3811 | 3901 | ||
3812 | return new LSL_Types.Vector3(x,y,z); | 3902 | return new LSL_Vector(x,y,z); |
3813 | 3903 | ||
3814 | } | 3904 | } |
3815 | 3905 | ||
3816 | 3906 | ||
3817 | // Returns the angle of a quaternion (see llRot2Axis for the axis) | 3907 | // Returns the angle of a quaternion (see llRot2Axis for the axis) |
3818 | public double llRot2Angle(LSL_Types.Quaternion rot) | 3908 | public LSL_Float llRot2Angle(LSL_Rotation rot) |
3819 | { | 3909 | { |
3820 | m_host.AddScriptLPS(1); | 3910 | m_host.AddScriptLPS(1); |
3821 | 3911 | ||
@@ -3837,27 +3927,27 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3837 | 3927 | ||
3838 | } | 3928 | } |
3839 | 3929 | ||
3840 | public double llAcos(double val) | 3930 | public LSL_Float llAcos(double val) |
3841 | { | 3931 | { |
3842 | m_host.AddScriptLPS(1); | 3932 | m_host.AddScriptLPS(1); |
3843 | return (double)Math.Acos(val); | 3933 | return (double)Math.Acos(val); |
3844 | } | 3934 | } |
3845 | 3935 | ||
3846 | public double llAsin(double val) | 3936 | public LSL_Float llAsin(double val) |
3847 | { | 3937 | { |
3848 | m_host.AddScriptLPS(1); | 3938 | m_host.AddScriptLPS(1); |
3849 | return (double)Math.Asin(val); | 3939 | return (double)Math.Asin(val); |
3850 | } | 3940 | } |
3851 | 3941 | ||
3852 | // Xantor 30/apr/2008 | 3942 | // Xantor 30/apr/2008 |
3853 | public double llAngleBetween(LSL_Types.Quaternion a, LSL_Types.Quaternion b) | 3943 | public LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b) |
3854 | { | 3944 | { |
3855 | m_host.AddScriptLPS(1); | 3945 | m_host.AddScriptLPS(1); |
3856 | 3946 | ||
3857 | return (double) Math.Acos(a.x * b.x + a.y * b.y + a.z * b.z + a.s * b.s) * 2; | 3947 | return (double) Math.Acos(a.x * b.x + a.y * b.y + a.z * b.z + a.s * b.s) * 2; |
3858 | } | 3948 | } |
3859 | 3949 | ||
3860 | public string llGetInventoryKey(string name) | 3950 | public LSL_String llGetInventoryKey(string name) |
3861 | { | 3951 | { |
3862 | m_host.AddScriptLPS(1); | 3952 | m_host.AddScriptLPS(1); |
3863 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 3953 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -3887,15 +3977,15 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3887 | m_host.ParentGroup.RootPart.AllowedDrop = false; | 3977 | m_host.ParentGroup.RootPart.AllowedDrop = false; |
3888 | } | 3978 | } |
3889 | 3979 | ||
3890 | public LSL_Types.Vector3 llGetSunDirection() | 3980 | public LSL_Vector llGetSunDirection() |
3891 | { | 3981 | { |
3892 | m_host.AddScriptLPS(1); | 3982 | m_host.AddScriptLPS(1); |
3893 | 3983 | ||
3894 | LSL_Types.Vector3 SunDoubleVector3; | 3984 | LSL_Vector SunDoubleVector3; |
3895 | Vector3 SunFloatVector3; | 3985 | Vector3 SunFloatVector3; |
3896 | 3986 | ||
3897 | // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule | 3987 | // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule |
3898 | // have to convert from Vector3 (float) to LSL_Types.Vector3 (double) | 3988 | // have to convert from Vector3 (float) to LSL_Vector (double) |
3899 | SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector; | 3989 | SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector; |
3900 | SunDoubleVector3.x = (double)SunFloatVector3.X; | 3990 | SunDoubleVector3.x = (double)SunFloatVector3.X; |
3901 | SunDoubleVector3.y = (double)SunFloatVector3.Y; | 3991 | SunDoubleVector3.y = (double)SunFloatVector3.Y; |
@@ -3904,26 +3994,38 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3904 | return SunDoubleVector3; | 3994 | return SunDoubleVector3; |
3905 | } | 3995 | } |
3906 | 3996 | ||
3907 | public LSL_Types.Vector3 llGetTextureOffset(int face) | 3997 | public LSL_Vector llGetTextureOffset(int face) |
3908 | { | 3998 | { |
3909 | m_host.AddScriptLPS(1); | 3999 | m_host.AddScriptLPS(1); |
3910 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 4000 | return GetTextureOffset(m_host, face); |
3911 | LSL_Types.Vector3 offset; | 4001 | } |
3912 | if (face == -1) | 4002 | |
4003 | private LSL_Vector GetTextureOffset(SceneObjectPart part, int face) | ||
4004 | { | ||
4005 | Primitive.TextureEntry tex = part.Shape.Textures; | ||
4006 | LSL_Vector offset = new LSL_Vector(); | ||
4007 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) | ||
3913 | { | 4008 | { |
3914 | face = 0; | 4009 | face = 0; |
3915 | } | 4010 | } |
3916 | offset.x = tex.GetFace((uint)face).OffsetU; | 4011 | if (face >= 0 && face < GetNumberOfSides(part)) |
3917 | offset.y = tex.GetFace((uint)face).OffsetV; | 4012 | { |
3918 | offset.z = 0.0; | 4013 | offset.x = tex.GetFace((uint)face).OffsetU; |
3919 | return offset; | 4014 | offset.y = tex.GetFace((uint)face).OffsetV; |
4015 | offset.z = 0.0; | ||
4016 | return offset; | ||
4017 | } | ||
4018 | else | ||
4019 | { | ||
4020 | return offset; | ||
4021 | } | ||
3920 | } | 4022 | } |
3921 | 4023 | ||
3922 | public LSL_Types.Vector3 llGetTextureScale(int side) | 4024 | public LSL_Vector llGetTextureScale(int side) |
3923 | { | 4025 | { |
3924 | m_host.AddScriptLPS(1); | 4026 | m_host.AddScriptLPS(1); |
3925 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 4027 | Primitive.TextureEntry tex = m_host.Shape.Textures; |
3926 | LSL_Types.Vector3 scale; | 4028 | LSL_Vector scale; |
3927 | if (side == -1) | 4029 | if (side == -1) |
3928 | { | 4030 | { |
3929 | side = 0; | 4031 | side = 0; |
@@ -3934,24 +4036,36 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3934 | return scale; | 4036 | return scale; |
3935 | } | 4037 | } |
3936 | 4038 | ||
3937 | public double llGetTextureRot(int face) | 4039 | public LSL_Float llGetTextureRot(int face) |
3938 | { | 4040 | { |
3939 | m_host.AddScriptLPS(1); | 4041 | m_host.AddScriptLPS(1); |
3940 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 4042 | return GetTextureRot(m_host, face); |
4043 | } | ||
4044 | |||
4045 | private LSL_Float GetTextureRot(SceneObjectPart part, int face) | ||
4046 | { | ||
4047 | Primitive.TextureEntry tex = part.Shape.Textures; | ||
3941 | if (face == -1) | 4048 | if (face == -1) |
3942 | { | 4049 | { |
3943 | face = 0; | 4050 | face = 0; |
3944 | } | 4051 | } |
3945 | return tex.GetFace((uint)face).Rotation; | 4052 | if (face >= 0 && face < GetNumberOfSides(part)) |
4053 | { | ||
4054 | return tex.GetFace((uint)face).Rotation; | ||
4055 | } | ||
4056 | else | ||
4057 | { | ||
4058 | return 0.0; | ||
4059 | } | ||
3946 | } | 4060 | } |
3947 | 4061 | ||
3948 | public LSL_Types.LSLInteger llSubStringIndex(string source, string pattern) | 4062 | public LSL_Integer llSubStringIndex(string source, string pattern) |
3949 | { | 4063 | { |
3950 | m_host.AddScriptLPS(1); | 4064 | m_host.AddScriptLPS(1); |
3951 | return source.IndexOf(pattern); | 4065 | return source.IndexOf(pattern); |
3952 | } | 4066 | } |
3953 | 4067 | ||
3954 | public string llGetOwnerKey(string id) | 4068 | public LSL_String llGetOwnerKey(string id) |
3955 | { | 4069 | { |
3956 | m_host.AddScriptLPS(1); | 4070 | m_host.AddScriptLPS(1); |
3957 | UUID key = new UUID(); | 4071 | UUID key = new UUID(); |
@@ -3976,14 +4090,14 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3976 | } | 4090 | } |
3977 | } | 4091 | } |
3978 | 4092 | ||
3979 | public LSL_Types.Vector3 llGetCenterOfMass() | 4093 | public LSL_Vector llGetCenterOfMass() |
3980 | { | 4094 | { |
3981 | m_host.AddScriptLPS(1); | 4095 | m_host.AddScriptLPS(1); |
3982 | NotImplemented("llGetCenterOfMass"); | 4096 | NotImplemented("llGetCenterOfMass"); |
3983 | return new LSL_Types.Vector3(); | 4097 | return new LSL_Vector(); |
3984 | } | 4098 | } |
3985 | 4099 | ||
3986 | public LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending) | 4100 | public LSL_List llListSort(LSL_List src, int stride, int ascending) |
3987 | { | 4101 | { |
3988 | m_host.AddScriptLPS(1); | 4102 | m_host.AddScriptLPS(1); |
3989 | 4103 | ||
@@ -3994,7 +4108,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
3994 | return src.Sort(stride, ascending); | 4108 | return src.Sort(stride, ascending); |
3995 | } | 4109 | } |
3996 | 4110 | ||
3997 | public LSL_Types.LSLInteger llGetListLength(LSL_Types.list src) | 4111 | public LSL_Integer llGetListLength(LSL_List src) |
3998 | { | 4112 | { |
3999 | m_host.AddScriptLPS(1); | 4113 | m_host.AddScriptLPS(1); |
4000 | 4114 | ||
@@ -4008,7 +4122,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4008 | } | 4122 | } |
4009 | } | 4123 | } |
4010 | 4124 | ||
4011 | public LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index) | 4125 | public LSL_Integer llList2Integer(LSL_List src, int index) |
4012 | { | 4126 | { |
4013 | m_host.AddScriptLPS(1); | 4127 | m_host.AddScriptLPS(1); |
4014 | if (index < 0) | 4128 | if (index < 0) |
@@ -4021,12 +4135,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4021 | } | 4135 | } |
4022 | try | 4136 | try |
4023 | { | 4137 | { |
4024 | if (src.Data[index] is LSL_Types.LSLInteger) | 4138 | if (src.Data[index] is LSL_Integer) |
4025 | return Convert.ToInt32(((LSL_Types.LSLInteger) src.Data[index]).value); | 4139 | return Convert.ToInt32(((LSL_Integer) src.Data[index]).value); |
4026 | else if (src.Data[index] is LSL_Types.LSLFloat) | 4140 | else if (src.Data[index] is LSL_Float) |
4027 | return Convert.ToInt32(((LSL_Types.LSLFloat) src.Data[index]).value); | 4141 | return Convert.ToInt32(((LSL_Float) src.Data[index]).value); |
4028 | else if (src.Data[index] is LSL_Types.LSLString) | 4142 | else if (src.Data[index] is LSL_String) |
4029 | return Convert.ToInt32(((LSL_Types.LSLString) src.Data[index]).m_string); | 4143 | return Convert.ToInt32(((LSL_String) src.Data[index]).m_string); |
4030 | return Convert.ToInt32(src.Data[index]); | 4144 | return Convert.ToInt32(src.Data[index]); |
4031 | } | 4145 | } |
4032 | catch (FormatException) | 4146 | catch (FormatException) |
@@ -4035,7 +4149,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4035 | } | 4149 | } |
4036 | } | 4150 | } |
4037 | 4151 | ||
4038 | public double osList2Double(LSL_Types.list src, int index) | 4152 | public double osList2Double(LSL_List src, int index) |
4039 | { | 4153 | { |
4040 | m_host.AddScriptLPS(1); | 4154 | m_host.AddScriptLPS(1); |
4041 | if (index < 0) | 4155 | if (index < 0) |
@@ -4046,16 +4160,16 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4046 | { | 4160 | { |
4047 | return 0.0; | 4161 | return 0.0; |
4048 | } | 4162 | } |
4049 | if (src.Data[index] is LSL_Types.LSLInteger) | 4163 | if (src.Data[index] is LSL_Integer) |
4050 | return Convert.ToDouble(((LSL_Types.LSLInteger) src.Data[index]).value); | 4164 | return Convert.ToDouble(((LSL_Integer) src.Data[index]).value); |
4051 | else if (src.Data[index] is LSL_Types.LSLFloat) | 4165 | else if (src.Data[index] is LSL_Float) |
4052 | return Convert.ToDouble(((LSL_Types.LSLFloat) src.Data[index]).value); | 4166 | return Convert.ToDouble(((LSL_Float) src.Data[index]).value); |
4053 | else if (src.Data[index] is LSL_Types.LSLString) | 4167 | else if (src.Data[index] is LSL_String) |
4054 | return Convert.ToDouble(((LSL_Types.LSLString) src.Data[index]).m_string); | 4168 | return Convert.ToDouble(((LSL_String) src.Data[index]).m_string); |
4055 | return Convert.ToDouble(src.Data[index]); | 4169 | return Convert.ToDouble(src.Data[index]); |
4056 | } | 4170 | } |
4057 | 4171 | ||
4058 | public double llList2Float(LSL_Types.list src, int index) | 4172 | public LSL_Float llList2Float(LSL_List src, int index) |
4059 | { | 4173 | { |
4060 | m_host.AddScriptLPS(1); | 4174 | m_host.AddScriptLPS(1); |
4061 | if (index < 0) | 4175 | if (index < 0) |
@@ -4068,12 +4182,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4068 | } | 4182 | } |
4069 | try | 4183 | try |
4070 | { | 4184 | { |
4071 | if (src.Data[index] is LSL_Types.LSLInteger) | 4185 | if (src.Data[index] is LSL_Integer) |
4072 | return Convert.ToDouble(((LSL_Types.LSLInteger) src.Data[index]).value); | 4186 | return Convert.ToDouble(((LSL_Integer) src.Data[index]).value); |
4073 | else if (src.Data[index] is LSL_Types.LSLFloat) | 4187 | else if (src.Data[index] is LSL_Float) |
4074 | return Convert.ToDouble(((LSL_Types.LSLFloat) src.Data[index]).value); | 4188 | return Convert.ToDouble(((LSL_Float) src.Data[index]).value); |
4075 | else if (src.Data[index] is LSL_Types.LSLString) | 4189 | else if (src.Data[index] is LSL_String) |
4076 | return Convert.ToDouble(((LSL_Types.LSLString) src.Data[index]).m_string); | 4190 | return Convert.ToDouble(((LSL_String) src.Data[index]).m_string); |
4077 | return Convert.ToDouble(src.Data[index]); | 4191 | return Convert.ToDouble(src.Data[index]); |
4078 | } | 4192 | } |
4079 | catch (FormatException) | 4193 | catch (FormatException) |
@@ -4082,7 +4196,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4082 | } | 4196 | } |
4083 | } | 4197 | } |
4084 | 4198 | ||
4085 | public string llList2String(LSL_Types.list src, int index) | 4199 | public LSL_String llList2String(LSL_List src, int index) |
4086 | { | 4200 | { |
4087 | m_host.AddScriptLPS(1); | 4201 | m_host.AddScriptLPS(1); |
4088 | if (index < 0) | 4202 | if (index < 0) |
@@ -4096,7 +4210,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4096 | return src.Data[index].ToString(); | 4210 | return src.Data[index].ToString(); |
4097 | } | 4211 | } |
4098 | 4212 | ||
4099 | public string llList2Key(LSL_Types.list src, int index) | 4213 | public LSL_String llList2Key(LSL_List src, int index) |
4100 | { | 4214 | { |
4101 | m_host.AddScriptLPS(1); | 4215 | m_host.AddScriptLPS(1); |
4102 | if (index < 0) | 4216 | if (index < 0) |
@@ -4110,7 +4224,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4110 | return src.Data[index].ToString(); | 4224 | return src.Data[index].ToString(); |
4111 | } | 4225 | } |
4112 | 4226 | ||
4113 | public LSL_Types.Vector3 llList2Vector(LSL_Types.list src, int index) | 4227 | public LSL_Vector llList2Vector(LSL_List src, int index) |
4114 | { | 4228 | { |
4115 | m_host.AddScriptLPS(1); | 4229 | m_host.AddScriptLPS(1); |
4116 | if (index < 0) | 4230 | if (index < 0) |
@@ -4119,19 +4233,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4119 | } | 4233 | } |
4120 | if (index >= src.Length) | 4234 | if (index >= src.Length) |
4121 | { | 4235 | { |
4122 | return new LSL_Types.Vector3(0, 0, 0); | 4236 | return new LSL_Vector(0, 0, 0); |
4123 | } | 4237 | } |
4124 | if (src.Data[index].GetType() == typeof(LSL_Types.Vector3)) | 4238 | if (src.Data[index].GetType() == typeof(LSL_Vector)) |
4125 | { | 4239 | { |
4126 | return (LSL_Types.Vector3)src.Data[index]; | 4240 | return (LSL_Vector)src.Data[index]; |
4127 | } | 4241 | } |
4128 | else | 4242 | else |
4129 | { | 4243 | { |
4130 | return new LSL_Types.Vector3(src.Data[index].ToString()); | 4244 | return new LSL_Vector(src.Data[index].ToString()); |
4131 | } | 4245 | } |
4132 | } | 4246 | } |
4133 | 4247 | ||
4134 | public LSL_Types.Quaternion llList2Rot(LSL_Types.list src, int index) | 4248 | public LSL_Rotation llList2Rot(LSL_List src, int index) |
4135 | { | 4249 | { |
4136 | m_host.AddScriptLPS(1); | 4250 | m_host.AddScriptLPS(1); |
4137 | if (index < 0) | 4251 | if (index < 0) |
@@ -4140,30 +4254,30 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4140 | } | 4254 | } |
4141 | if (index >= src.Length) | 4255 | if (index >= src.Length) |
4142 | { | 4256 | { |
4143 | return new LSL_Types.Quaternion(0, 0, 0, 1); | 4257 | return new LSL_Rotation(0, 0, 0, 1); |
4144 | } | 4258 | } |
4145 | if (src.Data[index].GetType() == typeof(LSL_Types.Quaternion)) | 4259 | if (src.Data[index].GetType() == typeof(LSL_Rotation)) |
4146 | { | 4260 | { |
4147 | return (LSL_Types.Quaternion)src.Data[index]; | 4261 | return (LSL_Rotation)src.Data[index]; |
4148 | } | 4262 | } |
4149 | else | 4263 | else |
4150 | { | 4264 | { |
4151 | return new LSL_Types.Quaternion(src.Data[index].ToString()); | 4265 | return new LSL_Rotation(src.Data[index].ToString()); |
4152 | } | 4266 | } |
4153 | } | 4267 | } |
4154 | 4268 | ||
4155 | public LSL_Types.list llList2List(LSL_Types.list src, int start, int end) | 4269 | public LSL_List llList2List(LSL_List src, int start, int end) |
4156 | { | 4270 | { |
4157 | m_host.AddScriptLPS(1); | 4271 | m_host.AddScriptLPS(1); |
4158 | return src.GetSublist(start, end); | 4272 | return src.GetSublist(start, end); |
4159 | } | 4273 | } |
4160 | 4274 | ||
4161 | public LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end) | 4275 | public LSL_List llDeleteSubList(LSL_List src, int start, int end) |
4162 | { | 4276 | { |
4163 | return src.DeleteSublist(end, start); | 4277 | return src.DeleteSublist(end, start); |
4164 | } | 4278 | } |
4165 | 4279 | ||
4166 | public LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index) | 4280 | public LSL_Integer llGetListEntryType(LSL_List src, int index) |
4167 | { | 4281 | { |
4168 | m_host.AddScriptLPS(1); | 4282 | m_host.AddScriptLPS(1); |
4169 | if (index < 0) | 4283 | if (index < 0) |
@@ -4175,27 +4289,27 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4175 | return 0; | 4289 | return 0; |
4176 | } | 4290 | } |
4177 | 4291 | ||
4178 | if (src.Data[index] is Int32) | 4292 | if (src.Data[index] is LSL_Integer || src.Data[index] is Int32) |
4179 | return 1; | 4293 | return 1; |
4180 | if (src.Data[index] is Double) | 4294 | if (src.Data[index] is LSL_Float || src.Data[index] is Single || src.Data[index] is Double) |
4181 | return 2; | 4295 | return 2; |
4182 | if (src.Data[index] is String) | 4296 | if (src.Data[index] is LSL_String || src.Data[index] is String) |
4183 | { | 4297 | { |
4184 | UUID tuuid; | 4298 | UUID tuuid; |
4185 | if (UUID.TryParse(src.Data[index].ToString(), out tuuid)) | 4299 | if (UUID.TryParse(src.Data[index].ToString(), out tuuid)) |
4186 | { | 4300 | { |
4187 | return 3; | 4301 | return 4; |
4188 | } | 4302 | } |
4189 | else | 4303 | else |
4190 | { | 4304 | { |
4191 | return 4; | 4305 | return 3; |
4192 | } | 4306 | } |
4193 | } | 4307 | } |
4194 | if (src.Data[index] is LSL_Types.Vector3) | 4308 | if (src.Data[index] is LSL_Vector) |
4195 | return 5; | 4309 | return 5; |
4196 | if (src.Data[index] is LSL_Types.Quaternion) | 4310 | if (src.Data[index] is LSL_Rotation) |
4197 | return 6; | 4311 | return 6; |
4198 | if (src.Data[index] is LSL_Types.list) | 4312 | if (src.Data[index] is LSL_List) |
4199 | return 7; | 4313 | return 7; |
4200 | return 0; | 4314 | return 0; |
4201 | 4315 | ||
@@ -4208,7 +4322,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4208 | /// each comma. | 4322 | /// each comma. |
4209 | /// </summary> | 4323 | /// </summary> |
4210 | 4324 | ||
4211 | public string llList2CSV(LSL_Types.list src) | 4325 | public LSL_String llList2CSV(LSL_List src) |
4212 | { | 4326 | { |
4213 | 4327 | ||
4214 | string ret = String.Empty; | 4328 | string ret = String.Empty; |
@@ -4236,10 +4350,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4236 | /// before or after an element is trimmed. | 4350 | /// before or after an element is trimmed. |
4237 | /// </summary> | 4351 | /// </summary> |
4238 | 4352 | ||
4239 | public LSL_Types.list llCSV2List(string src) | 4353 | public LSL_List llCSV2List(string src) |
4240 | { | 4354 | { |
4241 | 4355 | ||
4242 | LSL_Types.list result = new LSL_Types.list(); | 4356 | LSL_List result = new LSL_List(); |
4243 | int parens = 0; | 4357 | int parens = 0; |
4244 | int start = 0; | 4358 | int start = 0; |
4245 | int length = 0; | 4359 | int length = 0; |
@@ -4293,9 +4407,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4293 | /// sizes. | 4407 | /// sizes. |
4294 | /// </remarks> | 4408 | /// </remarks> |
4295 | 4409 | ||
4296 | public LSL_Types.list llListRandomize(LSL_Types.list src, int stride) | 4410 | public LSL_List llListRandomize(LSL_List src, int stride) |
4297 | { | 4411 | { |
4298 | LSL_Types.list result; | 4412 | LSL_List result; |
4299 | Random rand = new Random(); | 4413 | Random rand = new Random(); |
4300 | 4414 | ||
4301 | int chunkk; | 4415 | int chunkk; |
@@ -4336,7 +4450,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4336 | 4450 | ||
4337 | // Construct the randomized list | 4451 | // Construct the randomized list |
4338 | 4452 | ||
4339 | result = new LSL_Types.list(); | 4453 | result = new LSL_List(); |
4340 | 4454 | ||
4341 | for (int i = 0; i < chunkk; i++) | 4455 | for (int i = 0; i < chunkk; i++) |
4342 | { | 4456 | { |
@@ -4349,7 +4463,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4349 | else { | 4463 | else { |
4350 | object[] array = new object[src.Length]; | 4464 | object[] array = new object[src.Length]; |
4351 | Array.Copy(src.Data, 0, array, 0, src.Length); | 4465 | Array.Copy(src.Data, 0, array, 0, src.Length); |
4352 | result = new LSL_Types.list(array); | 4466 | result = new LSL_List(array); |
4353 | } | 4467 | } |
4354 | 4468 | ||
4355 | return result; | 4469 | return result; |
@@ -4363,10 +4477,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4363 | /// range are included in the result. | 4477 | /// range are included in the result. |
4364 | /// </summary> | 4478 | /// </summary> |
4365 | 4479 | ||
4366 | public LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride) | 4480 | public LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride) |
4367 | { | 4481 | { |
4368 | 4482 | ||
4369 | LSL_Types.list result = new LSL_Types.list(); | 4483 | LSL_List result = new LSL_List(); |
4370 | int[] si = new int[2]; | 4484 | int[] si = new int[2]; |
4371 | int[] ei = new int[2]; | 4485 | int[] ei = new int[2]; |
4372 | bool twopass = false; | 4486 | bool twopass = false; |
@@ -4443,10 +4557,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4443 | return result; | 4557 | return result; |
4444 | } | 4558 | } |
4445 | 4559 | ||
4446 | public LSL_Types.Vector3 llGetRegionCorner() | 4560 | public LSL_Integer llGetRegionAgentCount() |
4447 | { | 4561 | { |
4448 | m_host.AddScriptLPS(1); | 4562 | m_host.AddScriptLPS(1); |
4449 | return new LSL_Types.Vector3(World.RegionInfo.RegionLocX * Constants.RegionSize, World.RegionInfo.RegionLocY * Constants.RegionSize, 0); | 4563 | NotImplemented("llGetRegionAgentCount"); |
4564 | return new LSL_Integer(0); | ||
4565 | } | ||
4566 | |||
4567 | public LSL_Vector llGetRegionCorner() | ||
4568 | { | ||
4569 | m_host.AddScriptLPS(1); | ||
4570 | return new LSL_Vector(World.RegionInfo.RegionLocX * Constants.RegionSize, World.RegionInfo.RegionLocY * Constants.RegionSize, 0); | ||
4450 | } | 4571 | } |
4451 | 4572 | ||
4452 | /// <summary> | 4573 | /// <summary> |
@@ -4455,11 +4576,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4455 | /// new element has the index specified by <index> | 4576 | /// new element has the index specified by <index> |
4456 | /// </summary> | 4577 | /// </summary> |
4457 | 4578 | ||
4458 | public LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int index) | 4579 | public LSL_List llListInsertList(LSL_List dest, LSL_List src, int index) |
4459 | { | 4580 | { |
4460 | 4581 | ||
4461 | LSL_Types.list pref = null; | 4582 | LSL_List pref = null; |
4462 | LSL_Types.list suff = null; | 4583 | LSL_List suff = null; |
4463 | 4584 | ||
4464 | m_host.AddScriptLPS(1); | 4585 | m_host.AddScriptLPS(1); |
4465 | 4586 | ||
@@ -4505,7 +4626,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4505 | /// in src. | 4626 | /// in src. |
4506 | /// </summary> | 4627 | /// </summary> |
4507 | 4628 | ||
4508 | public LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test) | 4629 | public LSL_Integer llListFindList(LSL_List src, LSL_List test) |
4509 | { | 4630 | { |
4510 | 4631 | ||
4511 | int index = -1; | 4632 | int index = -1; |
@@ -4519,11 +4640,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4519 | { | 4640 | { |
4520 | for (int i = 0; i < length; i++) | 4641 | for (int i = 0; i < length; i++) |
4521 | { | 4642 | { |
4522 | if (AreEqual(src.Data[i], test.Data[0])) | 4643 | if (src.Data[i].Equals(test.Data[0])) |
4523 | { | 4644 | { |
4524 | int j; | 4645 | int j; |
4525 | for (j = 1; j < test.Length; j++) | 4646 | for (j = 1; j < test.Length; j++) |
4526 | if (!AreEqual(src.Data[i+j], test.Data[j])) | 4647 | if (!src.Data[i+j].Equals(test.Data[j])) |
4527 | break; | 4648 | break; |
4528 | if (j == test.Length) | 4649 | if (j == test.Length) |
4529 | { | 4650 | { |
@@ -4538,19 +4659,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4538 | 4659 | ||
4539 | } | 4660 | } |
4540 | 4661 | ||
4541 | private bool AreEqual(object src, object test) | 4662 | public LSL_String llGetObjectName() |
4542 | { | ||
4543 | if (src.GetType().FullName == "System.String") | ||
4544 | { | ||
4545 | return src.ToString() == test.ToString(); | ||
4546 | } | ||
4547 | else | ||
4548 | { | ||
4549 | return src.Equals(test); | ||
4550 | } | ||
4551 | } | ||
4552 | |||
4553 | public string llGetObjectName() | ||
4554 | { | 4663 | { |
4555 | m_host.AddScriptLPS(1); | 4664 | m_host.AddScriptLPS(1); |
4556 | return m_host.Name!=null?m_host.Name:String.Empty; | 4665 | return m_host.Name!=null?m_host.Name:String.Empty; |
@@ -4562,7 +4671,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4562 | m_host.Name = name!=null?name:String.Empty; | 4671 | m_host.Name = name!=null?name:String.Empty; |
4563 | } | 4672 | } |
4564 | 4673 | ||
4565 | public string llGetDate() | 4674 | public LSL_String llGetDate() |
4566 | { | 4675 | { |
4567 | m_host.AddScriptLPS(1); | 4676 | m_host.AddScriptLPS(1); |
4568 | DateTime date = DateTime.Now.ToUniversalTime(); | 4677 | DateTime date = DateTime.Now.ToUniversalTime(); |
@@ -4570,14 +4679,14 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4570 | return result; | 4679 | return result; |
4571 | } | 4680 | } |
4572 | 4681 | ||
4573 | public LSL_Types.LSLInteger llEdgeOfWorld(LSL_Types.Vector3 pos, LSL_Types.Vector3 dir) | 4682 | public LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir) |
4574 | { | 4683 | { |
4575 | m_host.AddScriptLPS(1); | 4684 | m_host.AddScriptLPS(1); |
4576 | NotImplemented("llEdgeOfWorld"); | 4685 | NotImplemented("llEdgeOfWorld"); |
4577 | return 0; | 4686 | return 0; |
4578 | } | 4687 | } |
4579 | 4688 | ||
4580 | public LSL_Types.LSLInteger llGetAgentInfo(string id) | 4689 | public LSL_Integer llGetAgentInfo(string id) |
4581 | { | 4690 | { |
4582 | m_host.AddScriptLPS(1); | 4691 | m_host.AddScriptLPS(1); |
4583 | NotImplemented("llGetAgentInfo"); | 4692 | NotImplemented("llGetAgentInfo"); |
@@ -4603,7 +4712,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4603 | m_host.SoundRadius = radius; | 4712 | m_host.SoundRadius = radius; |
4604 | } | 4713 | } |
4605 | 4714 | ||
4606 | public string llKey2Name(string id) | 4715 | public LSL_String llKey2Name(string id) |
4607 | { | 4716 | { |
4608 | m_host.AddScriptLPS(1); | 4717 | m_host.AddScriptLPS(1); |
4609 | UUID key = new UUID(); | 4718 | UUID key = new UUID(); |
@@ -4646,10 +4755,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4646 | 4755 | ||
4647 | m_host.AddTextureAnimation(pTexAnim); | 4756 | m_host.AddTextureAnimation(pTexAnim); |
4648 | m_host.SendFullUpdateToAllClients(); | 4757 | m_host.SendFullUpdateToAllClients(); |
4758 | m_host.ParentGroup.HasGroupChanged = true; | ||
4649 | } | 4759 | } |
4650 | 4760 | ||
4651 | public void llTriggerSoundLimited(string sound, double volume, LSL_Types.Vector3 top_north_east, | 4761 | public void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, |
4652 | LSL_Types.Vector3 bottom_south_west) | 4762 | LSL_Vector bottom_south_west) |
4653 | { | 4763 | { |
4654 | m_host.AddScriptLPS(1); | 4764 | m_host.AddScriptLPS(1); |
4655 | NotImplemented("llTriggerSoundLimited"); | 4765 | NotImplemented("llTriggerSoundLimited"); |
@@ -4672,10 +4782,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4672 | // ScriptSleep(5000); | 4782 | // ScriptSleep(5000); |
4673 | } | 4783 | } |
4674 | 4784 | ||
4675 | public LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers) | 4785 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers) |
4676 | { | 4786 | { |
4677 | m_host.AddScriptLPS(1); | 4787 | m_host.AddScriptLPS(1); |
4678 | LSL_Types.list ret = new LSL_Types.list(); | 4788 | LSL_List ret = new LSL_List(); |
4679 | object[] delimiters = new object[separators.Length + spacers.Length]; | 4789 | object[] delimiters = new object[separators.Length + spacers.Length]; |
4680 | separators.Data.CopyTo(delimiters, 0); | 4790 | separators.Data.CopyTo(delimiters, 0); |
4681 | spacers.Data.CopyTo(delimiters, separators.Length); | 4791 | spacers.Data.CopyTo(delimiters, separators.Length); |
@@ -4728,7 +4838,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4728 | return ret; | 4838 | return ret; |
4729 | } | 4839 | } |
4730 | 4840 | ||
4731 | public LSL_Types.LSLInteger llOverMyLand(string id) | 4841 | public LSL_Integer llOverMyLand(string id) |
4732 | { | 4842 | { |
4733 | m_host.AddScriptLPS(1); | 4843 | m_host.AddScriptLPS(1); |
4734 | UUID key = new UUID(); | 4844 | UUID key = new UUID(); |
@@ -4751,17 +4861,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4751 | return 0; | 4861 | return 0; |
4752 | } | 4862 | } |
4753 | 4863 | ||
4754 | public string llGetLandOwnerAt(LSL_Types.Vector3 pos) | 4864 | public LSL_String llGetLandOwnerAt(LSL_Vector pos) |
4755 | { | 4865 | { |
4756 | m_host.AddScriptLPS(1); | 4866 | m_host.AddScriptLPS(1); |
4757 | return World.GetLandOwner((float)pos.x, (float)pos.y).ToString(); | 4867 | return World.GetLandOwner((float)pos.x, (float)pos.y).ToString(); |
4758 | } | 4868 | } |
4759 | 4869 | ||
4760 | public LSL_Types.Vector3 llGetAgentSize(string id) | 4870 | public LSL_Vector llGetAgentSize(string id) |
4761 | { | 4871 | { |
4762 | m_host.AddScriptLPS(1); | 4872 | m_host.AddScriptLPS(1); |
4763 | ScenePresence avatar = World.GetScenePresence(id); | 4873 | ScenePresence avatar = World.GetScenePresence(id); |
4764 | LSL_Types.Vector3 agentSize; | 4874 | LSL_Vector agentSize; |
4765 | if (avatar == null) | 4875 | if (avatar == null) |
4766 | { | 4876 | { |
4767 | agentSize = BuiltIn_Commands_BaseClass.ZERO_VECTOR; | 4877 | agentSize = BuiltIn_Commands_BaseClass.ZERO_VECTOR; |
@@ -4769,25 +4879,25 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4769 | else | 4879 | else |
4770 | { | 4880 | { |
4771 | PhysicsVector size = avatar.PhysicsActor.Size; | 4881 | PhysicsVector size = avatar.PhysicsActor.Size; |
4772 | agentSize = new LSL_Types.Vector3(size.X, size.Y, size.Z); | 4882 | agentSize = new LSL_Vector(size.X, size.Y, size.Z); |
4773 | } | 4883 | } |
4774 | return agentSize; | 4884 | return agentSize; |
4775 | } | 4885 | } |
4776 | 4886 | ||
4777 | public LSL_Types.LSLInteger llSameGroup(string agent) | 4887 | public LSL_Integer llSameGroup(string agent) |
4778 | { | 4888 | { |
4779 | m_host.AddScriptLPS(1); | 4889 | m_host.AddScriptLPS(1); |
4780 | UUID agentId = new UUID(); | 4890 | UUID agentId = new UUID(); |
4781 | if (!UUID.TryParse(agent, out agentId)) | 4891 | if (!UUID.TryParse(agent, out agentId)) |
4782 | return new LSL_Types.LSLInteger(0); | 4892 | return new LSL_Integer(0); |
4783 | ScenePresence presence = World.GetScenePresence(agentId); | 4893 | ScenePresence presence = World.GetScenePresence(agentId); |
4784 | if (presence == null) | 4894 | if (presence == null) |
4785 | return new LSL_Types.LSLInteger(0); | 4895 | return new LSL_Integer(0); |
4786 | IClientAPI client = presence.ControllingClient; | 4896 | IClientAPI client = presence.ControllingClient; |
4787 | if (m_host.GroupID == client.ActiveGroupId) | 4897 | if (m_host.GroupID == client.ActiveGroupId) |
4788 | return new LSL_Types.LSLInteger(1); | 4898 | return new LSL_Integer(1); |
4789 | else | 4899 | else |
4790 | return new LSL_Types.LSLInteger(0); | 4900 | return new LSL_Integer(0); |
4791 | } | 4901 | } |
4792 | 4902 | ||
4793 | public void llUnSit(string id) | 4903 | public void llUnSit(string id) |
@@ -4833,7 +4943,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4833 | 4943 | ||
4834 | } | 4944 | } |
4835 | 4945 | ||
4836 | public LSL_Types.Vector3 llGroundSlope(LSL_Types.Vector3 offset) | 4946 | public LSL_Vector llGroundSlope(LSL_Vector offset) |
4837 | { | 4947 | { |
4838 | m_host.AddScriptLPS(1); | 4948 | m_host.AddScriptLPS(1); |
4839 | 4949 | ||
@@ -4843,15 +4953,15 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4843 | 4953 | ||
4844 | Vector3 p0 = new Vector3(pos.X, pos.Y, | 4954 | Vector3 p0 = new Vector3(pos.X, pos.Y, |
4845 | (float)llGround( | 4955 | (float)llGround( |
4846 | new LSL_Types.Vector3(pos.X, pos.Y, pos.Z) | 4956 | new LSL_Vector(pos.X, pos.Y, pos.Z) |
4847 | )); | 4957 | )); |
4848 | Vector3 p1 = new Vector3(pos.X + 1, pos.Y, | 4958 | Vector3 p1 = new Vector3(pos.X + 1, pos.Y, |
4849 | (float)llGround( | 4959 | (float)llGround( |
4850 | new LSL_Types.Vector3(pos.X + 1, pos.Y, pos.Z) | 4960 | new LSL_Vector(pos.X + 1, pos.Y, pos.Z) |
4851 | )); | 4961 | )); |
4852 | Vector3 p2 = new Vector3(pos.X, pos.Y + 1, | 4962 | Vector3 p2 = new Vector3(pos.X, pos.Y + 1, |
4853 | (float)llGround( | 4963 | (float)llGround( |
4854 | new LSL_Types.Vector3(pos.X, pos.Y + 1, pos.Z) | 4964 | new LSL_Vector(pos.X, pos.Y + 1, pos.Z) |
4855 | )); | 4965 | )); |
4856 | 4966 | ||
4857 | Vector3 v0 = new Vector3( | 4967 | Vector3 v0 = new Vector3( |
@@ -4867,50 +4977,50 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4867 | tv.Y = (v0.Z * v1.X) - (v0.X * v1.Z); | 4977 | tv.Y = (v0.Z * v1.X) - (v0.X * v1.Z); |
4868 | tv.Z = (v0.X * v1.Y) - (v0.Y * v1.X); | 4978 | tv.Z = (v0.X * v1.Y) - (v0.Y * v1.X); |
4869 | 4979 | ||
4870 | return new LSL_Types.Vector3(tv.X, tv.Y, tv.Z); | 4980 | return new LSL_Vector(tv.X, tv.Y, tv.Z); |
4871 | } | 4981 | } |
4872 | 4982 | ||
4873 | public LSL_Types.Vector3 llGroundNormal(LSL_Types.Vector3 offset) | 4983 | public LSL_Vector llGroundNormal(LSL_Vector offset) |
4874 | { | 4984 | { |
4875 | m_host.AddScriptLPS(1); | 4985 | m_host.AddScriptLPS(1); |
4876 | LSL_Types.Vector3 x = llGroundSlope(offset); | 4986 | LSL_Vector x = llGroundSlope(offset); |
4877 | return new LSL_Types.Vector3(x.x, x.y, 1.0); | 4987 | return new LSL_Vector(x.x, x.y, 1.0); |
4878 | } | 4988 | } |
4879 | 4989 | ||
4880 | public LSL_Types.Vector3 llGroundContour(LSL_Types.Vector3 offset) | 4990 | public LSL_Vector llGroundContour(LSL_Vector offset) |
4881 | { | 4991 | { |
4882 | m_host.AddScriptLPS(1); | 4992 | m_host.AddScriptLPS(1); |
4883 | LSL_Types.Vector3 x = llGroundSlope(offset); | 4993 | LSL_Vector x = llGroundSlope(offset); |
4884 | return new LSL_Types.Vector3(-x.y, x.x, 0.0); | 4994 | return new LSL_Vector(-x.y, x.x, 0.0); |
4885 | } | 4995 | } |
4886 | 4996 | ||
4887 | public LSL_Types.LSLInteger llGetAttached() | 4997 | public LSL_Integer llGetAttached() |
4888 | { | 4998 | { |
4889 | m_host.AddScriptLPS(1); | 4999 | m_host.AddScriptLPS(1); |
4890 | NotImplemented("llGetAttached"); | 5000 | NotImplemented("llGetAttached"); |
4891 | return 0; | 5001 | return 0; |
4892 | } | 5002 | } |
4893 | 5003 | ||
4894 | public LSL_Types.LSLInteger llGetFreeMemory() | 5004 | public LSL_Integer llGetFreeMemory() |
4895 | { | 5005 | { |
4896 | m_host.AddScriptLPS(1); | 5006 | m_host.AddScriptLPS(1); |
4897 | NotImplemented("llGetFreeMemory"); | 5007 | // Make scripts designed for LSO happy |
4898 | return 0; | 5008 | return 16384; |
4899 | } | 5009 | } |
4900 | 5010 | ||
4901 | public string llGetRegionName() | 5011 | public LSL_String llGetRegionName() |
4902 | { | 5012 | { |
4903 | m_host.AddScriptLPS(1); | 5013 | m_host.AddScriptLPS(1); |
4904 | return World.RegionInfo.RegionName; | 5014 | return World.RegionInfo.RegionName; |
4905 | } | 5015 | } |
4906 | 5016 | ||
4907 | public double llGetRegionTimeDilation() | 5017 | public LSL_Float llGetRegionTimeDilation() |
4908 | { | 5018 | { |
4909 | m_host.AddScriptLPS(1); | 5019 | m_host.AddScriptLPS(1); |
4910 | return (double)World.TimeDilation; | 5020 | return (double)World.TimeDilation; |
4911 | } | 5021 | } |
4912 | 5022 | ||
4913 | public double llGetRegionFPS() | 5023 | public LSL_Float llGetRegionFPS() |
4914 | { | 5024 | { |
4915 | m_host.AddScriptLPS(1); | 5025 | m_host.AddScriptLPS(1); |
4916 | //TODO: return actual FPS | 5026 | //TODO: return actual FPS |
@@ -4976,17 +5086,18 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4976 | return ps; | 5086 | return ps; |
4977 | } | 5087 | } |
4978 | 5088 | ||
4979 | public void llParticleSystem(LSL_Types.list rules) | 5089 | public void llParticleSystem(LSL_List rules) |
4980 | { | 5090 | { |
4981 | m_host.AddScriptLPS(1); | 5091 | m_host.AddScriptLPS(1); |
4982 | if (rules.Length == 0) | 5092 | if (rules.Length == 0) |
4983 | { | 5093 | { |
4984 | m_host.RemoveParticleSystem(); | 5094 | m_host.RemoveParticleSystem(); |
5095 | m_host.ParentGroup.HasGroupChanged = true; | ||
4985 | } | 5096 | } |
4986 | else | 5097 | else |
4987 | { | 5098 | { |
4988 | Primitive.ParticleSystem prules = getNewParticleSystemWithSLDefaultValues(); | 5099 | Primitive.ParticleSystem prules = getNewParticleSystemWithSLDefaultValues(); |
4989 | LSL_Types.Vector3 tempv = new LSL_Types.Vector3(); | 5100 | LSL_Vector tempv = new LSL_Vector(); |
4990 | 5101 | ||
4991 | float tempf = 0; | 5102 | float tempf = 0; |
4992 | 5103 | ||
@@ -4999,7 +5110,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
4999 | break; | 5110 | break; |
5000 | 5111 | ||
5001 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_START_COLOR: | 5112 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_START_COLOR: |
5002 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5113 | tempv = (LSL_Vector)rules.Data[i + 1]; |
5003 | prules.PartStartColor.R = (float)tempv.x; | 5114 | prules.PartStartColor.R = (float)tempv.x; |
5004 | prules.PartStartColor.G = (float)tempv.y; | 5115 | prules.PartStartColor.G = (float)tempv.y; |
5005 | prules.PartStartColor.B = (float)tempv.z; | 5116 | prules.PartStartColor.B = (float)tempv.z; |
@@ -5011,7 +5122,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5011 | break; | 5122 | break; |
5012 | 5123 | ||
5013 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_END_COLOR: | 5124 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_END_COLOR: |
5014 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5125 | tempv = (LSL_Vector)rules.Data[i + 1]; |
5015 | //prules.PartEndColor = new Color4(tempv.x,tempv.y,tempv.z,1); | 5126 | //prules.PartEndColor = new Color4(tempv.x,tempv.y,tempv.z,1); |
5016 | 5127 | ||
5017 | prules.PartEndColor.R = (float)tempv.x; | 5128 | prules.PartEndColor.R = (float)tempv.x; |
@@ -5025,13 +5136,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5025 | break; | 5136 | break; |
5026 | 5137 | ||
5027 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_START_SCALE: | 5138 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_START_SCALE: |
5028 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5139 | tempv = (LSL_Vector)rules.Data[i + 1]; |
5029 | prules.PartStartScaleX = (float)tempv.x; | 5140 | prules.PartStartScaleX = (float)tempv.x; |
5030 | prules.PartStartScaleY = (float)tempv.y; | 5141 | prules.PartStartScaleY = (float)tempv.y; |
5031 | break; | 5142 | break; |
5032 | 5143 | ||
5033 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_END_SCALE: | 5144 | case (int)BuiltIn_Commands_BaseClass.PSYS_PART_END_SCALE: |
5034 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5145 | tempv = (LSL_Vector)rules.Data[i + 1]; |
5035 | prules.PartEndScaleX = (float)tempv.x; | 5146 | prules.PartEndScaleX = (float)tempv.x; |
5036 | prules.PartEndScaleY = (float)tempv.y; | 5147 | prules.PartEndScaleY = (float)tempv.y; |
5037 | break; | 5148 | break; |
@@ -5042,7 +5153,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5042 | break; | 5153 | break; |
5043 | 5154 | ||
5044 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ACCEL: | 5155 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ACCEL: |
5045 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5156 | tempv = (LSL_Vector)rules.Data[i + 1]; |
5046 | prules.PartAcceleration.X = (float)tempv.x; | 5157 | prules.PartAcceleration.X = (float)tempv.x; |
5047 | prules.PartAcceleration.Y = (float)tempv.y; | 5158 | prules.PartAcceleration.Y = (float)tempv.y; |
5048 | prules.PartAcceleration.Z = (float)tempv.z; | 5159 | prules.PartAcceleration.Z = (float)tempv.z; |
@@ -5104,20 +5215,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5104 | 5215 | ||
5105 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_OMEGA: | 5216 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_OMEGA: |
5106 | // AL: This is an assumption, since it is the only thing that would match. | 5217 | // AL: This is an assumption, since it is the only thing that would match. |
5107 | tempv = (LSL_Types.Vector3)rules.Data[i + 1]; | 5218 | tempv = rules.GetVector3Item(i + 1); |
5108 | prules.AngularVelocity.X = (float)tempv.x; | 5219 | prules.AngularVelocity.X = (float)tempv.x; |
5109 | prules.AngularVelocity.Y = (float)tempv.y; | 5220 | prules.AngularVelocity.Y = (float)tempv.y; |
5110 | prules.AngularVelocity.Z = (float)tempv.z; | 5221 | prules.AngularVelocity.Z = (float)tempv.z; |
5111 | //cast?? prules.MaxAge = (float)rules[i + 1]; | ||
5112 | break; | 5222 | break; |
5113 | 5223 | ||
5114 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ANGLE_BEGIN: | 5224 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ANGLE_BEGIN: |
5115 | tempf = Convert.ToSingle(rules.Data[i + 1].ToString()); | 5225 | tempf = (float)rules.GetLSLFloatItem(i + 1); |
5116 | prules.InnerAngle = (float)tempf; | 5226 | prules.InnerAngle = (float)tempf; |
5117 | break; | 5227 | break; |
5118 | 5228 | ||
5119 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ANGLE_END: | 5229 | case (int)BuiltIn_Commands_BaseClass.PSYS_SRC_ANGLE_END: |
5120 | tempf = Convert.ToSingle(rules.Data[i + 1].ToString()); | 5230 | tempf = (float)rules.GetLSLFloatItem(i + 1); |
5121 | prules.OuterAngle = (float)tempf; | 5231 | prules.OuterAngle = (float)tempf; |
5122 | break; | 5232 | break; |
5123 | } | 5233 | } |
@@ -5126,6 +5236,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5126 | prules.CRC = 1; | 5236 | prules.CRC = 1; |
5127 | 5237 | ||
5128 | m_host.AddNewParticleSystem(prules); | 5238 | m_host.AddNewParticleSystem(prules); |
5239 | m_host.ParentGroup.HasGroupChanged = true; | ||
5129 | } | 5240 | } |
5130 | m_host.SendFullUpdateToAllClients(); | 5241 | m_host.SendFullUpdateToAllClients(); |
5131 | } | 5242 | } |
@@ -5146,7 +5257,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5146 | return UUID.Zero; | 5257 | return UUID.Zero; |
5147 | } | 5258 | } |
5148 | 5259 | ||
5149 | public void llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | 5260 | public void llGiveInventoryList(string destination, string category, LSL_List inventory) |
5150 | { | 5261 | { |
5151 | m_host.AddScriptLPS(1); | 5262 | m_host.AddScriptLPS(1); |
5152 | 5263 | ||
@@ -5195,13 +5306,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5195 | NotImplemented("llSetVehicleFloatParam"); | 5306 | NotImplemented("llSetVehicleFloatParam"); |
5196 | } | 5307 | } |
5197 | 5308 | ||
5198 | public void llSetVehicleVectorParam(int param, LSL_Types.Vector3 vec) | 5309 | public void llSetVehicleVectorParam(int param, LSL_Vector vec) |
5199 | { | 5310 | { |
5200 | m_host.AddScriptLPS(1); | 5311 | m_host.AddScriptLPS(1); |
5201 | NotImplemented("llSetVehicleVectorParam"); | 5312 | NotImplemented("llSetVehicleVectorParam"); |
5202 | } | 5313 | } |
5203 | 5314 | ||
5204 | public void llSetVehicleRotationParam(int param, LSL_Types.Quaternion rot) | 5315 | public void llSetVehicleRotationParam(int param, LSL_Rotation rot) |
5205 | { | 5316 | { |
5206 | m_host.AddScriptLPS(1); | 5317 | m_host.AddScriptLPS(1); |
5207 | NotImplemented("llSetVehicleRotationParam"); | 5318 | NotImplemented("llSetVehicleRotationParam"); |
@@ -5219,7 +5330,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5219 | NotImplemented("llRemoveVehicleFlags"); | 5330 | NotImplemented("llRemoveVehicleFlags"); |
5220 | } | 5331 | } |
5221 | 5332 | ||
5222 | public void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot) | 5333 | public void llSitTarget(LSL_Vector offset, LSL_Rotation rot) |
5223 | { | 5334 | { |
5224 | m_host.AddScriptLPS(1); | 5335 | m_host.AddScriptLPS(1); |
5225 | // LSL quaternions can normalize to 0, normal Quaternions can't. | 5336 | // LSL quaternions can normalize to 0, normal Quaternions can't. |
@@ -5230,7 +5341,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5230 | m_host.SitTargetOrientation = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); | 5341 | m_host.SitTargetOrientation = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); |
5231 | } | 5342 | } |
5232 | 5343 | ||
5233 | public string llAvatarOnSitTarget() | 5344 | public LSL_String llAvatarOnSitTarget() |
5234 | { | 5345 | { |
5235 | m_host.AddScriptLPS(1); | 5346 | m_host.AddScriptLPS(1); |
5236 | return m_host.GetAvatarOnSitTarget().ToString(); | 5347 | return m_host.GetAvatarOnSitTarget().ToString(); |
@@ -5267,19 +5378,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5267 | m_host.SitName = text; | 5378 | m_host.SitName = text; |
5268 | } | 5379 | } |
5269 | 5380 | ||
5270 | public void llSetCameraEyeOffset(LSL_Types.Vector3 offset) | 5381 | public void llSetCameraEyeOffset(LSL_Vector offset) |
5271 | { | 5382 | { |
5272 | m_host.AddScriptLPS(1); | 5383 | m_host.AddScriptLPS(1); |
5273 | m_host.SetCameraEyeOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); | 5384 | m_host.SetCameraEyeOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); |
5274 | } | 5385 | } |
5275 | 5386 | ||
5276 | public void llSetCameraAtOffset(LSL_Types.Vector3 offset) | 5387 | public void llSetCameraAtOffset(LSL_Vector offset) |
5277 | { | 5388 | { |
5278 | m_host.AddScriptLPS(1); | 5389 | m_host.AddScriptLPS(1); |
5279 | m_host.SetCameraAtOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); | 5390 | m_host.SetCameraAtOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); |
5280 | } | 5391 | } |
5281 | 5392 | ||
5282 | public string llDumpList2String(LSL_Types.list src, string seperator) | 5393 | public LSL_String llDumpList2String(LSL_List src, string seperator) |
5283 | { | 5394 | { |
5284 | m_host.AddScriptLPS(1); | 5395 | m_host.AddScriptLPS(1); |
5285 | if (src.Length == 0) | 5396 | if (src.Length == 0) |
@@ -5295,7 +5406,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5295 | return ret; | 5406 | return ret; |
5296 | } | 5407 | } |
5297 | 5408 | ||
5298 | public LSL_Types.LSLInteger llScriptDanger(LSL_Types.Vector3 pos) | 5409 | public LSL_Integer llScriptDanger(LSL_Vector pos) |
5299 | { | 5410 | { |
5300 | m_host.AddScriptLPS(1); | 5411 | m_host.AddScriptLPS(1); |
5301 | bool result = World.scriptDanger(m_host.LocalId, new Vector3((float)pos.x, (float)pos.y, (float)pos.z)); | 5412 | bool result = World.scriptDanger(m_host.LocalId, new Vector3((float)pos.x, (float)pos.y, (float)pos.z)); |
@@ -5310,7 +5421,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5310 | 5421 | ||
5311 | } | 5422 | } |
5312 | 5423 | ||
5313 | public void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel) | 5424 | public void llDialog(string avatar, string message, LSL_List buttons, int chat_channel) |
5314 | { | 5425 | { |
5315 | m_host.AddScriptLPS(1); | 5426 | m_host.AddScriptLPS(1); |
5316 | UUID av = new UUID(); | 5427 | UUID av = new UUID(); |
@@ -5378,7 +5489,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5378 | // assume it is not running. | 5489 | // assume it is not running. |
5379 | } | 5490 | } |
5380 | 5491 | ||
5381 | public LSL_Types.LSLInteger llGetScriptState(string name) | 5492 | public LSL_Integer llGetScriptState(string name) |
5382 | { | 5493 | { |
5383 | UUID item; | 5494 | UUID item; |
5384 | ScriptManager sm; | 5495 | ScriptManager sm; |
@@ -5477,13 +5588,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5477 | if (xmlrpcMod.IsEnabled()) | 5588 | if (xmlrpcMod.IsEnabled()) |
5478 | { | 5589 | { |
5479 | UUID channelID = xmlrpcMod.OpenXMLRPCChannel(m_localID, m_itemID, UUID.Zero); | 5590 | UUID channelID = xmlrpcMod.OpenXMLRPCChannel(m_localID, m_itemID, UUID.Zero); |
5480 | object[] resobj = new object[] { new LSL_Types.LSLInteger(1), new LSL_Types.LSLString(channelID.ToString()), new LSL_Types.LSLString(UUID.Zero.ToString()), new LSL_Types.LSLString(String.Empty), new LSL_Types.LSLInteger(0), new LSL_Types.LSLString(String.Empty) }; | 5591 | object[] resobj = new object[] { new LSL_Integer(1), new LSL_String(channelID.ToString()), new LSL_String(UUID.Zero.ToString()), new LSL_String(String.Empty), new LSL_Integer(0), new LSL_String(String.Empty) }; |
5481 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(m_localID, m_itemID, "remote_data", EventQueueManager.llDetectNull, resobj); | 5592 | m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(m_localID, m_itemID, "remote_data", EventQueueManager.llDetectNull, resobj); |
5482 | } | 5593 | } |
5483 | // ScriptSleep(1000); | 5594 | // ScriptSleep(1000); |
5484 | } | 5595 | } |
5485 | 5596 | ||
5486 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) | 5597 | public LSL_String llSendRemoteData(string channel, string dest, int idata, string sdata) |
5487 | { | 5598 | { |
5488 | m_host.AddScriptLPS(1); | 5599 | m_host.AddScriptLPS(1); |
5489 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); | 5600 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); |
@@ -5507,13 +5618,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5507 | // ScriptSleep(1000); | 5618 | // ScriptSleep(1000); |
5508 | } | 5619 | } |
5509 | 5620 | ||
5510 | public string llMD5String(string src, int nonce) | 5621 | public LSL_String llMD5String(string src, int nonce) |
5511 | { | 5622 | { |
5512 | m_host.AddScriptLPS(1); | 5623 | m_host.AddScriptLPS(1); |
5513 | return Util.Md5Hash(src + ":" + nonce.ToString()); | 5624 | return Util.Md5Hash(src + ":" + nonce.ToString()); |
5514 | } | 5625 | } |
5515 | 5626 | ||
5516 | private ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist) | 5627 | private ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist) |
5517 | { | 5628 | { |
5518 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); | 5629 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); |
5519 | 5630 | ||
@@ -5583,7 +5694,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5583 | return shapeBlock; | 5694 | return shapeBlock; |
5584 | } | 5695 | } |
5585 | 5696 | ||
5586 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 taper_b, LSL_Types.Vector3 topshear, byte fudge) | 5697 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge) |
5587 | { | 5698 | { |
5588 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5699 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5589 | 5700 | ||
@@ -5631,7 +5742,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5631 | part.UpdateShape(shapeBlock); | 5742 | part.UpdateShape(shapeBlock); |
5632 | } | 5743 | } |
5633 | 5744 | ||
5634 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 dimple, byte fudge) | 5745 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge) |
5635 | { | 5746 | { |
5636 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5747 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5637 | 5748 | ||
@@ -5672,7 +5783,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5672 | part.UpdateShape(shapeBlock); | 5783 | part.UpdateShape(shapeBlock); |
5673 | } | 5784 | } |
5674 | 5785 | ||
5675 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 holesize, LSL_Types.Vector3 topshear, LSL_Types.Vector3 profilecut, LSL_Types.Vector3 taper_a, float revolutions, float radiusoffset, float skew, byte fudge) | 5786 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector holesize, LSL_Vector topshear, LSL_Vector profilecut, LSL_Vector taper_a, float revolutions, float radiusoffset, float skew, byte fudge) |
5676 | { | 5787 | { |
5677 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5788 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5678 | 5789 | ||
@@ -5824,12 +5935,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5824 | part.UpdateShape(shapeBlock); | 5935 | part.UpdateShape(shapeBlock); |
5825 | } | 5936 | } |
5826 | 5937 | ||
5827 | public void llSetPrimitiveParams(LSL_Types.list rules) | 5938 | public void llSetPrimitiveParams(LSL_List rules) |
5828 | { | 5939 | { |
5829 | llSetLinkPrimitiveParams(m_host.LinkNum, rules); | 5940 | llSetLinkPrimitiveParams(m_host.LinkNum, rules); |
5830 | } | 5941 | } |
5831 | 5942 | ||
5832 | public void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules) | 5943 | public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules) |
5833 | { | 5944 | { |
5834 | m_host.AddScriptLPS(1); | 5945 | m_host.AddScriptLPS(1); |
5835 | 5946 | ||
@@ -5850,7 +5961,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5850 | int remain = rules.Length - idx; | 5961 | int remain = rules.Length - idx; |
5851 | 5962 | ||
5852 | int face; | 5963 | int face; |
5853 | LSL_Types.Vector3 v; | 5964 | LSL_Vector v; |
5854 | 5965 | ||
5855 | switch (code) | 5966 | switch (code) |
5856 | { | 5967 | { |
@@ -5858,7 +5969,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5858 | if (remain < 1) | 5969 | if (remain < 1) |
5859 | return; | 5970 | return; |
5860 | 5971 | ||
5861 | v=new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 5972 | v=new LSL_Vector(rules.Data[idx++].ToString()); |
5862 | SetPos(part, v); | 5973 | SetPos(part, v); |
5863 | 5974 | ||
5864 | break; | 5975 | break; |
@@ -5866,7 +5977,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5866 | if (remain < 1) | 5977 | if (remain < 1) |
5867 | return; | 5978 | return; |
5868 | 5979 | ||
5869 | v=new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 5980 | v=new LSL_Vector(rules.Data[idx++].ToString()); |
5870 | SetScale(part, v); | 5981 | SetScale(part, v); |
5871 | 5982 | ||
5872 | break; | 5983 | break; |
@@ -5874,7 +5985,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5874 | if (remain < 1) | 5985 | if (remain < 1) |
5875 | return; | 5986 | return; |
5876 | 5987 | ||
5877 | LSL_Types.Quaternion q = new LSL_Types.Quaternion(rules.Data[idx++].ToString()); | 5988 | LSL_Rotation q = new LSL_Rotation(rules.Data[idx++].ToString()); |
5878 | SetRot(part, q); | 5989 | SetRot(part, q); |
5879 | 5990 | ||
5880 | break; | 5991 | break; |
@@ -5887,14 +5998,14 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5887 | 5998 | ||
5888 | remain = rules.Length - idx; | 5999 | remain = rules.Length - idx; |
5889 | float hollow; | 6000 | float hollow; |
5890 | LSL_Types.Vector3 twist; | 6001 | LSL_Vector twist; |
5891 | LSL_Types.Vector3 taper_b; | 6002 | LSL_Vector taper_b; |
5892 | LSL_Types.Vector3 topshear; | 6003 | LSL_Vector topshear; |
5893 | float revolutions; | 6004 | float revolutions; |
5894 | float radiusoffset; | 6005 | float radiusoffset; |
5895 | float skew; | 6006 | float skew; |
5896 | LSL_Types.Vector3 holesize; | 6007 | LSL_Vector holesize; |
5897 | LSL_Types.Vector3 profilecut; | 6008 | LSL_Vector profilecut; |
5898 | 6009 | ||
5899 | switch (code) | 6010 | switch (code) |
5900 | { | 6011 | { |
@@ -5902,12 +6013,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5902 | if (remain < 6) | 6013 | if (remain < 6) |
5903 | return; | 6014 | return; |
5904 | 6015 | ||
5905 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6016 | face = (int)rules.GetLSLIntegerItem(idx++); |
5906 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // cut | 6017 | v = rules.GetVector3Item(idx++); // cut |
5907 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6018 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5908 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6019 | twist = rules.GetVector3Item(idx++); |
5909 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6020 | taper_b = rules.GetVector3Item(idx++); |
5910 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6021 | topshear = rules.GetVector3Item(idx++); |
5911 | part.Shape.PathCurve = (byte)Extrusion.Straight; | 6022 | part.Shape.PathCurve = (byte)Extrusion.Straight; |
5912 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 1); | 6023 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 1); |
5913 | break; | 6024 | break; |
@@ -5916,12 +6027,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5916 | if (remain < 6) | 6027 | if (remain < 6) |
5917 | return; | 6028 | return; |
5918 | 6029 | ||
5919 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6030 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
5920 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // cut | 6031 | v = rules.GetVector3Item(idx++); // cut |
5921 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6032 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5922 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6033 | twist = rules.GetVector3Item(idx++); |
5923 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6034 | taper_b = rules.GetVector3Item(idx++); |
5924 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6035 | topshear = rules.GetVector3Item(idx++); |
5925 | part.Shape.ProfileShape = ProfileShape.Circle; | 6036 | part.Shape.ProfileShape = ProfileShape.Circle; |
5926 | part.Shape.PathCurve = (byte)Extrusion.Straight; | 6037 | part.Shape.PathCurve = (byte)Extrusion.Straight; |
5927 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 0); | 6038 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 0); |
@@ -5931,12 +6042,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5931 | if (remain < 6) | 6042 | if (remain < 6) |
5932 | return; | 6043 | return; |
5933 | 6044 | ||
5934 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6045 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
5935 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); //cut | 6046 | v = rules.GetVector3Item(idx++); //cut |
5936 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6047 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5937 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6048 | twist = rules.GetVector3Item(idx++); |
5938 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6049 | taper_b = rules.GetVector3Item(idx++); |
5939 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6050 | topshear = rules.GetVector3Item(idx++); |
5940 | part.Shape.PathCurve = (byte)Extrusion.Straight; | 6051 | part.Shape.PathCurve = (byte)Extrusion.Straight; |
5941 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 3); | 6052 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 3); |
5942 | break; | 6053 | break; |
@@ -5945,11 +6056,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5945 | if (remain < 5) | 6056 | if (remain < 5) |
5946 | return; | 6057 | return; |
5947 | 6058 | ||
5948 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6059 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
5949 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // cut | 6060 | v = rules.GetVector3Item(idx++); // cut |
5950 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6061 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5951 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6062 | twist = rules.GetVector3Item(idx++); |
5952 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // dimple | 6063 | taper_b = rules.GetVector3Item(idx++); // dimple |
5953 | part.Shape.PathCurve = (byte)Extrusion.Curve1; | 6064 | part.Shape.PathCurve = (byte)Extrusion.Curve1; |
5954 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, 5); | 6065 | SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, 5); |
5955 | break; | 6066 | break; |
@@ -5958,17 +6069,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5958 | if (remain < 11) | 6069 | if (remain < 11) |
5959 | return; | 6070 | return; |
5960 | 6071 | ||
5961 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6072 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
5962 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); //cut | 6073 | v = rules.GetVector3Item(idx++); //cut |
5963 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6074 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5964 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6075 | twist = rules.GetVector3Item(idx++); |
5965 | holesize = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6076 | holesize = rules.GetVector3Item(idx++); |
5966 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6077 | topshear = rules.GetVector3Item(idx++); |
5967 | profilecut = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6078 | profilecut = rules.GetVector3Item(idx++); |
5968 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // taper_a | 6079 | taper_b = rules.GetVector3Item(idx++); // taper_a |
5969 | revolutions = (float)Convert.ToDouble(rules.Data[idx++]); | 6080 | revolutions = (float)rules.GetLSLFloatItem(idx++); |
5970 | radiusoffset = (float)Convert.ToDouble(rules.Data[idx++]); | 6081 | radiusoffset = (float)rules.GetLSLFloatItem(idx++); |
5971 | skew = (float)Convert.ToDouble(rules.Data[idx++]); | 6082 | skew = (float)rules.GetLSLFloatItem(idx++); |
5972 | part.Shape.PathCurve = (byte)Extrusion.Curve1; | 6083 | part.Shape.PathCurve = (byte)Extrusion.Curve1; |
5973 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 0); | 6084 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 0); |
5974 | break; | 6085 | break; |
@@ -5977,17 +6088,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5977 | if (remain < 11) | 6088 | if (remain < 11) |
5978 | return; | 6089 | return; |
5979 | 6090 | ||
5980 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6091 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
5981 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); //cut | 6092 | v = rules.GetVector3Item(idx++); //cut |
5982 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6093 | hollow = (float)rules.GetLSLFloatItem(idx++); |
5983 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6094 | twist = rules.GetVector3Item(idx++); |
5984 | holesize = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6095 | holesize = rules.GetVector3Item(idx++); |
5985 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6096 | topshear = rules.GetVector3Item(idx++); |
5986 | profilecut = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6097 | profilecut = rules.GetVector3Item(idx++); |
5987 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // taper_a | 6098 | taper_b = rules.GetVector3Item(idx++); // taper_a |
5988 | revolutions = (float)Convert.ToDouble(rules.Data[idx++]); | 6099 | revolutions = (float)rules.GetLSLFloatItem(idx++); |
5989 | radiusoffset = (float)Convert.ToDouble(rules.Data[idx++]); | 6100 | radiusoffset = (float)rules.GetLSLFloatItem(idx++); |
5990 | skew = (float)Convert.ToDouble(rules.Data[idx++]); | 6101 | skew = (float)rules.GetLSLFloatItem(idx++); |
5991 | part.Shape.PathCurve = (byte)Extrusion.Curve1; | 6102 | part.Shape.PathCurve = (byte)Extrusion.Curve1; |
5992 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 1); | 6103 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 1); |
5993 | break; | 6104 | break; |
@@ -5996,17 +6107,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
5996 | if (remain < 11) | 6107 | if (remain < 11) |
5997 | return; | 6108 | return; |
5998 | 6109 | ||
5999 | face = Convert.ToInt32(rules.Data[idx++]); // holeshape | 6110 | face = (int)rules.GetLSLIntegerItem(idx++); // holeshape |
6000 | v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); //cut | 6111 | v = rules.GetVector3Item(idx++); //cut |
6001 | hollow = (float)Convert.ToDouble(rules.Data[idx++]); | 6112 | hollow = (float)rules.GetLSLFloatItem(idx++); |
6002 | twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6113 | twist = rules.GetVector3Item(idx++); |
6003 | holesize = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6114 | holesize = rules.GetVector3Item(idx++); |
6004 | topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6115 | topshear = rules.GetVector3Item(idx++); |
6005 | profilecut = new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6116 | profilecut = rules.GetVector3Item(idx++); |
6006 | taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // taper_a | 6117 | taper_b = rules.GetVector3Item(idx++); // taper_a |
6007 | revolutions = (float)Convert.ToDouble(rules.Data[idx++]); | 6118 | revolutions = (float)rules.GetLSLFloatItem(idx++); |
6008 | radiusoffset = (float)Convert.ToDouble(rules.Data[idx++]); | 6119 | radiusoffset = (float)rules.GetLSLFloatItem(idx++); |
6009 | skew = (float)Convert.ToDouble(rules.Data[idx++]); | 6120 | skew = (float)rules.GetLSLFloatItem(idx++); |
6010 | part.Shape.PathCurve = (byte)Extrusion.Curve1; | 6121 | part.Shape.PathCurve = (byte)Extrusion.Curve1; |
6011 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 3); | 6122 | SetPrimitiveShapeParams(part, face, v, hollow, twist, holesize, topshear, profilecut, taper_b, revolutions, radiusoffset, skew, 3); |
6012 | break; | 6123 | break; |
@@ -6016,7 +6127,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6016 | return; | 6127 | return; |
6017 | 6128 | ||
6018 | string map = rules.Data[idx++].ToString(); | 6129 | string map = rules.Data[idx++].ToString(); |
6019 | face = Convert.ToInt32(rules.Data[idx++]); // type | 6130 | face = (int)rules.GetLSLIntegerItem(idx++); // type |
6020 | part.Shape.PathCurve = (byte)Extrusion.Curve1; | 6131 | part.Shape.PathCurve = (byte)Extrusion.Curve1; |
6021 | SetPrimitiveShapeParams(part, map, face); | 6132 | SetPrimitiveShapeParams(part, map, face); |
6022 | break; | 6133 | break; |
@@ -6028,11 +6139,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6028 | if (remain < 5) | 6139 | if (remain < 5) |
6029 | return; | 6140 | return; |
6030 | 6141 | ||
6031 | face=Convert.ToInt32(rules.Data[idx++]); | 6142 | face=(int)rules.GetLSLIntegerItem(idx++); |
6032 | string tex=rules.Data[idx++].ToString(); | 6143 | string tex=rules.Data[idx++].ToString(); |
6033 | LSL_Types.Vector3 repeats=new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6144 | LSL_Vector repeats=rules.GetVector3Item(idx++); |
6034 | LSL_Types.Vector3 offsets=new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6145 | LSL_Vector offsets=rules.GetVector3Item(idx++); |
6035 | double rotation=Convert.ToDouble(rules.Data[idx++]); | 6146 | double rotation=(double)rules.GetLSLFloatItem(idx++); |
6036 | 6147 | ||
6037 | SetTexture(part, tex, face); | 6148 | SetTexture(part, tex, face); |
6038 | ScaleTexture(part, repeats.x, repeats.y, face); | 6149 | ScaleTexture(part, repeats.x, repeats.y, face); |
@@ -6045,9 +6156,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6045 | if (remain < 3) | 6156 | if (remain < 3) |
6046 | return; | 6157 | return; |
6047 | 6158 | ||
6048 | face=Convert.ToInt32(rules.Data[idx++]); | 6159 | face=(int)rules.GetLSLIntegerItem(idx++); |
6049 | LSL_Types.Vector3 color=new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6160 | LSL_Vector color=rules.GetVector3Item(idx++); |
6050 | double alpha=Convert.ToDouble(rules.Data[idx++]); | 6161 | double alpha=(double)rules.GetLSLFloatItem(idx++); |
6051 | 6162 | ||
6052 | SetColor(part, color, face); | 6163 | SetColor(part, color, face); |
6053 | SetAlpha(part, alpha, face); | 6164 | SetAlpha(part, alpha, face); |
@@ -6057,34 +6168,34 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6057 | if (remain < 7) | 6168 | if (remain < 7) |
6058 | return; | 6169 | return; |
6059 | 6170 | ||
6060 | int flexi = Convert.ToInt32(rules.Data[idx++]); | 6171 | bool flexi = rules.GetLSLIntegerItem(idx++); |
6061 | int softness = Convert.ToInt32(rules.Data[idx++]); | 6172 | int softness = rules.GetLSLIntegerItem(idx++); |
6062 | float gravity = (float)Convert.ToDouble(rules.Data[idx++]); | 6173 | float gravity = (float)rules.GetLSLFloatItem(idx++); |
6063 | float friction = (float)Convert.ToDouble(rules.Data[idx++]); | 6174 | float friction = (float)rules.GetLSLFloatItem(idx++); |
6064 | float wind = (float)Convert.ToDouble(rules.Data[idx++]); | 6175 | float wind = (float)rules.GetLSLFloatItem(idx++); |
6065 | float tension = (float)Convert.ToDouble(rules.Data[idx++]); | 6176 | float tension = (float)rules.GetLSLFloatItem(idx++); |
6066 | LSL_Types.Vector3 force =new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6177 | LSL_Vector force = rules.GetVector3Item(idx++); |
6067 | 6178 | ||
6068 | SetFlexi(part, (flexi == 1), softness, gravity, friction, wind, tension, force); | 6179 | SetFlexi(part, flexi, softness, gravity, friction, wind, tension, force); |
6069 | 6180 | ||
6070 | break; | 6181 | break; |
6071 | case (int)BuiltIn_Commands_BaseClass.PRIM_POINT_LIGHT: | 6182 | case (int)BuiltIn_Commands_BaseClass.PRIM_POINT_LIGHT: |
6072 | if (remain < 5) | 6183 | if (remain < 5) |
6073 | return; | 6184 | return; |
6074 | int light = Convert.ToInt32(rules.Data[idx++]); | 6185 | bool light = rules.GetLSLIntegerItem(idx++); |
6075 | LSL_Types.Vector3 lightcolor =new LSL_Types.Vector3(rules.Data[idx++].ToString()); | 6186 | LSL_Vector lightcolor = rules.GetVector3Item(idx++); |
6076 | float intensity = (float)Convert.ToDouble(rules.Data[idx++]); | 6187 | float intensity = (float)rules.GetLSLFloatItem(idx++); |
6077 | float radius = (float)Convert.ToDouble(rules.Data[idx++]); | 6188 | float radius = (float)rules.GetLSLFloatItem(idx++); |
6078 | float falloff = (float)Convert.ToDouble(rules.Data[idx++]); | 6189 | float falloff = (float)rules.GetLSLFloatItem(idx++); |
6079 | 6190 | ||
6080 | SetPointLight(part, (light == 1), lightcolor, intensity, radius, falloff); | 6191 | SetPointLight(part, light, lightcolor, intensity, radius, falloff); |
6081 | 6192 | ||
6082 | break; | 6193 | break; |
6083 | case (int)BuiltIn_Commands_BaseClass.PRIM_GLOW: | 6194 | case (int)BuiltIn_Commands_BaseClass.PRIM_GLOW: |
6084 | if (remain < 2) | 6195 | if (remain < 2) |
6085 | return; | 6196 | return; |
6086 | face = Convert.ToInt32(rules.Data[idx++]); | 6197 | face = rules.GetLSLIntegerItem(idx++); |
6087 | float glow = (float)Convert.ToDouble(rules.Data[idx++]); | 6198 | float glow = (float)rules.GetLSLFloatItem(idx++); |
6088 | 6199 | ||
6089 | SetGlow(part, face, glow); | 6200 | SetGlow(part, face, glow); |
6090 | 6201 | ||
@@ -6092,9 +6203,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6092 | case (int)BuiltIn_Commands_BaseClass.PRIM_BUMP_SHINY: | 6203 | case (int)BuiltIn_Commands_BaseClass.PRIM_BUMP_SHINY: |
6093 | if (remain < 3) | 6204 | if (remain < 3) |
6094 | return; | 6205 | return; |
6095 | face = Convert.ToInt32(rules.Data[idx++]); | 6206 | face = (int)rules.GetLSLIntegerItem(idx++); |
6096 | int shiny = Convert.ToInt32(rules.Data[idx++]); | 6207 | int shiny = (int)rules.GetLSLIntegerItem(idx++); |
6097 | Bumpiness bump = (Bumpiness)Convert.ToByte(rules.Data[idx++]); | 6208 | Bumpiness bump = (Bumpiness)Convert.ToByte((int)rules.GetLSLIntegerItem(idx++)); |
6098 | 6209 | ||
6099 | SetShiny(part, face, shiny, bump); | 6210 | SetShiny(part, face, shiny, bump); |
6100 | 6211 | ||
@@ -6102,14 +6213,8 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6102 | case (int)BuiltIn_Commands_BaseClass.PRIM_FULLBRIGHT: | 6213 | case (int)BuiltIn_Commands_BaseClass.PRIM_FULLBRIGHT: |
6103 | if (remain < 2) | 6214 | if (remain < 2) |
6104 | return; | 6215 | return; |
6105 | face = Convert.ToInt32(rules.Data[idx++]); | 6216 | face = rules.GetLSLIntegerItem(idx++); |
6106 | string bv = rules.Data[idx++].ToString(); | 6217 | bool st = rules.GetLSLIntegerItem(idx++); |
6107 | bool st; | ||
6108 | if (bv.Equals("1")) | ||
6109 | st = true; | ||
6110 | else | ||
6111 | st = false; | ||
6112 | |||
6113 | SetFullBright(part, face , st); | 6218 | SetFullBright(part, face , st); |
6114 | break; | 6219 | break; |
6115 | case (int)BuiltIn_Commands_BaseClass.PRIM_MATERIAL: | 6220 | case (int)BuiltIn_Commands_BaseClass.PRIM_MATERIAL: |
@@ -6119,7 +6224,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6119 | { | 6224 | { |
6120 | /* Unhandled at this time - sends "Unhandled" message | 6225 | /* Unhandled at this time - sends "Unhandled" message |
6121 | will enable when available | 6226 | will enable when available |
6122 | byte material = (byte)Convert.ToByte( rules.Data[idx++]); | 6227 | byte material = Convert.ToByte((int)rules.GetLSLIntegerItem(idx++)); |
6123 | part.Material = material; | 6228 | part.Material = material; |
6124 | */ | 6229 | */ |
6125 | return; | 6230 | return; |
@@ -6158,7 +6263,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6158 | } | 6263 | } |
6159 | } | 6264 | } |
6160 | 6265 | ||
6161 | public string llStringToBase64(string str) | 6266 | public LSL_String llStringToBase64(string str) |
6162 | { | 6267 | { |
6163 | m_host.AddScriptLPS(1); | 6268 | m_host.AddScriptLPS(1); |
6164 | try | 6269 | try |
@@ -6174,7 +6279,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6174 | } | 6279 | } |
6175 | } | 6280 | } |
6176 | 6281 | ||
6177 | public string llBase64ToString(string str) | 6282 | public LSL_String llBase64ToString(string str) |
6178 | { | 6283 | { |
6179 | m_host.AddScriptLPS(1); | 6284 | m_host.AddScriptLPS(1); |
6180 | UTF8Encoding encoder = new UTF8Encoding(); | 6285 | UTF8Encoding encoder = new UTF8Encoding(); |
@@ -6207,23 +6312,23 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6207 | NotImplemented("llRemoteDataSetRegion"); | 6312 | NotImplemented("llRemoteDataSetRegion"); |
6208 | } | 6313 | } |
6209 | 6314 | ||
6210 | public double llLog10(double val) | 6315 | public LSL_Float llLog10(double val) |
6211 | { | 6316 | { |
6212 | m_host.AddScriptLPS(1); | 6317 | m_host.AddScriptLPS(1); |
6213 | return (double)Math.Log10(val); | 6318 | return (double)Math.Log10(val); |
6214 | } | 6319 | } |
6215 | 6320 | ||
6216 | public double llLog(double val) | 6321 | public LSL_Float llLog(double val) |
6217 | { | 6322 | { |
6218 | m_host.AddScriptLPS(1); | 6323 | m_host.AddScriptLPS(1); |
6219 | return (double)Math.Log(val); | 6324 | return (double)Math.Log(val); |
6220 | } | 6325 | } |
6221 | 6326 | ||
6222 | public LSL_Types.list llGetAnimationList( string id ) | 6327 | public LSL_List llGetAnimationList( string id ) |
6223 | { | 6328 | { |
6224 | m_host.AddScriptLPS(1); | 6329 | m_host.AddScriptLPS(1); |
6225 | 6330 | ||
6226 | LSL_Types.list l = new LSL_Types.list(); | 6331 | LSL_List l = new LSL_List(); |
6227 | ScenePresence av = World.GetScenePresence(id); | 6332 | ScenePresence av = World.GetScenePresence(id); |
6228 | if (av == null) | 6333 | if (av == null) |
6229 | return l; | 6334 | return l; |
@@ -6250,44 +6355,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6250 | // ScriptSleep(2000); | 6355 | // ScriptSleep(2000); |
6251 | } | 6356 | } |
6252 | 6357 | ||
6253 | public void osSetParcelMediaURL(string url) | 6358 | public LSL_Vector llGetRootPosition() |
6254 | { | 6359 | { |
6255 | m_host.AddScriptLPS(1); | 6360 | m_host.AddScriptLPS(1); |
6256 | UUID landowner = World.GetLandOwner(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y); | 6361 | return new LSL_Vector(m_host.ParentGroup.AbsolutePosition.X, m_host.ParentGroup.AbsolutePosition.Y, m_host.ParentGroup.AbsolutePosition.Z); |
6257 | |||
6258 | if (landowner == UUID.Zero) | ||
6259 | { | ||
6260 | return; | ||
6261 | } | ||
6262 | |||
6263 | if (landowner != m_host.ObjectOwner) | ||
6264 | { | ||
6265 | return; | ||
6266 | } | ||
6267 | |||
6268 | World.SetLandMediaURL(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y, url); | ||
6269 | } | ||
6270 | |||
6271 | public LSL_Types.Vector3 llGetRootPosition() | ||
6272 | { | ||
6273 | m_host.AddScriptLPS(1); | ||
6274 | return new LSL_Types.Vector3( | ||
6275 | m_host.ParentGroup.AbsolutePosition.X, | ||
6276 | m_host.ParentGroup.AbsolutePosition.Y, | ||
6277 | m_host.ParentGroup.AbsolutePosition.Z); | ||
6278 | } | 6362 | } |
6279 | 6363 | ||
6280 | public LSL_Types.Quaternion llGetRootRotation() | 6364 | public LSL_Rotation llGetRootRotation() |
6281 | { | 6365 | { |
6282 | m_host.AddScriptLPS(1); | 6366 | m_host.AddScriptLPS(1); |
6283 | return new LSL_Types.Quaternion( | 6367 | return new LSL_Rotation(m_host.ParentGroup.GroupRotation.X, m_host.ParentGroup.GroupRotation.Y, m_host.ParentGroup.GroupRotation.Z, m_host.ParentGroup.GroupRotation.W); |
6284 | m_host.ParentGroup.GroupRotation.X, | ||
6285 | m_host.ParentGroup.GroupRotation.Y, | ||
6286 | m_host.ParentGroup.GroupRotation.Z, | ||
6287 | m_host.ParentGroup.GroupRotation.W); | ||
6288 | } | 6368 | } |
6289 | 6369 | ||
6290 | public string llGetObjectDesc() | 6370 | public LSL_String llGetObjectDesc() |
6291 | { | 6371 | { |
6292 | return m_host.Description!=null?m_host.Description:String.Empty; | 6372 | return m_host.Description!=null?m_host.Description:String.Empty; |
6293 | } | 6373 | } |
@@ -6298,13 +6378,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6298 | m_host.Description = desc!=null?desc:String.Empty; | 6378 | m_host.Description = desc!=null?desc:String.Empty; |
6299 | } | 6379 | } |
6300 | 6380 | ||
6301 | public string llGetCreator() | 6381 | public LSL_String llGetCreator() |
6302 | { | 6382 | { |
6303 | m_host.AddScriptLPS(1); | 6383 | m_host.AddScriptLPS(1); |
6304 | return m_host.ObjectCreator.ToString(); | 6384 | return m_host.ObjectCreator.ToString(); |
6305 | } | 6385 | } |
6306 | 6386 | ||
6307 | public string llGetTimestamp() | 6387 | public LSL_String llGetTimestamp() |
6308 | { | 6388 | { |
6309 | m_host.AddScriptLPS(1); | 6389 | m_host.AddScriptLPS(1); |
6310 | return DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"); | 6390 | return DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"); |
@@ -6318,7 +6398,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6318 | { | 6398 | { |
6319 | Primitive.TextureEntry tex = part.Shape.Textures; | 6399 | Primitive.TextureEntry tex = part.Shape.Textures; |
6320 | Color4 texcolor; | 6400 | Color4 texcolor; |
6321 | if (face > -1) | 6401 | if (face >= 0 && face < GetNumberOfSides(m_host)) |
6322 | { | 6402 | { |
6323 | texcolor = tex.CreateFace((uint)face).RGBA; | 6403 | texcolor = tex.CreateFace((uint)face).RGBA; |
6324 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); | 6404 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); |
@@ -6326,12 +6406,12 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6326 | part.UpdateTexture(tex); | 6406 | part.UpdateTexture(tex); |
6327 | return; | 6407 | return; |
6328 | } | 6408 | } |
6329 | else if (face == -1) | 6409 | else if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
6330 | { | 6410 | { |
6331 | texcolor = tex.DefaultTexture.RGBA; | 6411 | texcolor = tex.DefaultTexture.RGBA; |
6332 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); | 6412 | texcolor.A = Util.Clip((float)alpha, 0.0f, 1.0f); |
6333 | tex.DefaultTexture.RGBA = texcolor; | 6413 | tex.DefaultTexture.RGBA = texcolor; |
6334 | for (uint i = 0; i < 32; i++) | 6414 | for (uint i = 0; i < GetNumberOfSides(m_host); i++) |
6335 | { | 6415 | { |
6336 | if (tex.FaceTextures[i] != null) | 6416 | if (tex.FaceTextures[i] != null) |
6337 | { | 6417 | { |
@@ -6388,77 +6468,76 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6388 | } | 6468 | } |
6389 | } | 6469 | } |
6390 | 6470 | ||
6391 | public LSL_Types.LSLInteger llGetNumberOfPrims() | 6471 | public LSL_Integer llGetNumberOfPrims() |
6392 | { | 6472 | { |
6393 | m_host.AddScriptLPS(1); | 6473 | m_host.AddScriptLPS(1); |
6394 | return m_host.ParentGroup.PrimCount; | 6474 | return m_host.ParentGroup.PrimCount; |
6395 | } | 6475 | } |
6396 | 6476 | ||
6397 | public LSL_Types.list llGetBoundingBox(string obj) | 6477 | public LSL_List llGetBoundingBox(string obj) |
6398 | { | 6478 | { |
6399 | m_host.AddScriptLPS(1); | 6479 | m_host.AddScriptLPS(1); |
6400 | NotImplemented("llGetBoundingBox"); | 6480 | NotImplemented("llGetBoundingBox"); |
6401 | return new LSL_Types.list(); | 6481 | return new LSL_List(); |
6402 | } | 6482 | } |
6403 | 6483 | ||
6404 | public LSL_Types.Vector3 llGetGeometricCenter() | 6484 | public LSL_Vector llGetGeometricCenter() |
6405 | { | 6485 | { |
6406 | return new LSL_Types.Vector3( | 6486 | return new LSL_Vector(m_host.GetGeometricCenter().X, m_host.GetGeometricCenter().Y, m_host.GetGeometricCenter().Z); |
6407 | m_host.GetGeometricCenter().X, m_host.GetGeometricCenter().Y, m_host.GetGeometricCenter().Z); | ||
6408 | } | 6487 | } |
6409 | 6488 | ||
6410 | public LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules) | 6489 | public LSL_List llGetPrimitiveParams(LSL_List rules) |
6411 | { | 6490 | { |
6412 | m_host.AddScriptLPS(1); | 6491 | m_host.AddScriptLPS(1); |
6413 | 6492 | ||
6414 | LSL_Types.list res = new LSL_Types.list(); | 6493 | LSL_List res = new LSL_List(); |
6415 | int idx=0; | 6494 | int idx=0; |
6416 | while (idx < rules.Length) | 6495 | while (idx < rules.Length) |
6417 | { | 6496 | { |
6418 | int code=Convert.ToInt32(rules.Data[idx++]); | 6497 | int code=(int)rules.GetLSLIntegerItem(idx++); |
6419 | int remain=rules.Length-idx; | 6498 | int remain=rules.Length-idx; |
6420 | 6499 | ||
6421 | switch (code) | 6500 | switch (code) |
6422 | { | 6501 | { |
6423 | case (int)BuiltIn_Commands_BaseClass.PRIM_MATERIAL: | 6502 | case (int)BuiltIn_Commands_BaseClass.PRIM_MATERIAL: |
6424 | res.Add(new LSL_Types.LSLInteger(m_host.Material)); | 6503 | res.Add(new LSL_Integer(m_host.Material)); |
6425 | break; | 6504 | break; |
6426 | 6505 | ||
6427 | case (int)BuiltIn_Commands_BaseClass.PRIM_PHYSICS: | 6506 | case (int)BuiltIn_Commands_BaseClass.PRIM_PHYSICS: |
6428 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Physics) != 0) | 6507 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Physics) != 0) |
6429 | res.Add(new LSL_Types.LSLInteger(1)); | 6508 | res.Add(new LSL_Integer(1)); |
6430 | else | 6509 | else |
6431 | res.Add(new LSL_Types.LSLInteger(0)); | 6510 | res.Add(new LSL_Integer(0)); |
6432 | break; | 6511 | break; |
6433 | 6512 | ||
6434 | case (int)BuiltIn_Commands_BaseClass.PRIM_TEMP_ON_REZ: | 6513 | case (int)BuiltIn_Commands_BaseClass.PRIM_TEMP_ON_REZ: |
6435 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.TemporaryOnRez) != 0) | 6514 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.TemporaryOnRez) != 0) |
6436 | res.Add(new LSL_Types.LSLInteger(1)); | 6515 | res.Add(new LSL_Integer(1)); |
6437 | else | 6516 | else |
6438 | res.Add(new LSL_Types.LSLInteger(0)); | 6517 | res.Add(new LSL_Integer(0)); |
6439 | break; | 6518 | break; |
6440 | 6519 | ||
6441 | case (int)BuiltIn_Commands_BaseClass.PRIM_PHANTOM: | 6520 | case (int)BuiltIn_Commands_BaseClass.PRIM_PHANTOM: |
6442 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) != 0) | 6521 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) != 0) |
6443 | res.Add(new LSL_Types.LSLInteger(1)); | 6522 | res.Add(new LSL_Integer(1)); |
6444 | else | 6523 | else |
6445 | res.Add(new LSL_Types.LSLInteger(0)); | 6524 | res.Add(new LSL_Integer(0)); |
6446 | break; | 6525 | break; |
6447 | 6526 | ||
6448 | case (int)BuiltIn_Commands_BaseClass.PRIM_POSITION: | 6527 | case (int)BuiltIn_Commands_BaseClass.PRIM_POSITION: |
6449 | res.Add(new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 6528 | res.Add(new LSL_Vector(m_host.AbsolutePosition.X, |
6450 | m_host.AbsolutePosition.Y, | 6529 | m_host.AbsolutePosition.Y, |
6451 | m_host.AbsolutePosition.Z)); | 6530 | m_host.AbsolutePosition.Z)); |
6452 | break; | 6531 | break; |
6453 | 6532 | ||
6454 | case (int)BuiltIn_Commands_BaseClass.PRIM_SIZE: | 6533 | case (int)BuiltIn_Commands_BaseClass.PRIM_SIZE: |
6455 | res.Add(new LSL_Types.Vector3(m_host.Scale.X, | 6534 | res.Add(new LSL_Vector(m_host.Scale.X, |
6456 | m_host.Scale.Y, | 6535 | m_host.Scale.Y, |
6457 | m_host.Scale.Z)); | 6536 | m_host.Scale.Z)); |
6458 | break; | 6537 | break; |
6459 | 6538 | ||
6460 | case (int)BuiltIn_Commands_BaseClass.PRIM_ROTATION: | 6539 | case (int)BuiltIn_Commands_BaseClass.PRIM_ROTATION: |
6461 | res.Add(new LSL_Types.Quaternion(m_host.RotationOffset.X, | 6540 | res.Add(new LSL_Rotation(m_host.RotationOffset.X, |
6462 | m_host.RotationOffset.Y, | 6541 | m_host.RotationOffset.Y, |
6463 | m_host.RotationOffset.Z, | 6542 | m_host.RotationOffset.Z, |
6464 | m_host.RotationOffset.W)); | 6543 | m_host.RotationOffset.W)); |
@@ -6468,69 +6547,69 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6468 | // implementing box | 6547 | // implementing box |
6469 | PrimitiveBaseShape Shape = m_host.Shape; | 6548 | PrimitiveBaseShape Shape = m_host.Shape; |
6470 | int primType = getScriptPrimType(m_host.Shape); | 6549 | int primType = getScriptPrimType(m_host.Shape); |
6471 | res.Add(new LSL_Types.LSLInteger(primType)); | 6550 | res.Add(new LSL_Integer(primType)); |
6472 | switch (primType) | 6551 | switch (primType) |
6473 | { | 6552 | { |
6474 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_BOX: | 6553 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_BOX: |
6475 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_CYLINDER: | 6554 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_CYLINDER: |
6476 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_PRISM: | 6555 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_PRISM: |
6477 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6556 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6478 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6557 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6479 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6558 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6480 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6559 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6481 | res.Add(new LSL_Types.Vector3(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); | 6560 | res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); |
6482 | res.Add(new LSL_Types.Vector3(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); | 6561 | res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); |
6483 | break; | 6562 | break; |
6484 | 6563 | ||
6485 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_SPHERE: | 6564 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_SPHERE: |
6486 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6565 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6487 | res.Add(new LSL_Types.Vector3(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); | 6566 | res.Add(new LSL_Vector(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); |
6488 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6567 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6489 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6568 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6490 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6569 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6491 | break; | 6570 | break; |
6492 | 6571 | ||
6493 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_SCULPT: | 6572 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_SCULPT: |
6494 | res.Add(Shape.SculptTexture.ToString()); | 6573 | res.Add(Shape.SculptTexture.ToString()); |
6495 | res.Add(new LSL_Types.LSLInteger(Shape.SculptType)); | 6574 | res.Add(new LSL_Integer(Shape.SculptType)); |
6496 | break; | 6575 | break; |
6497 | 6576 | ||
6498 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_RING: | 6577 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_RING: |
6499 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_TUBE: | 6578 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_TUBE: |
6500 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_TORUS: | 6579 | case BuiltIn_Commands_BaseClass.PRIM_TYPE_TORUS: |
6501 | // holeshape | 6580 | // holeshape |
6502 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6581 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6503 | 6582 | ||
6504 | // cut | 6583 | // cut |
6505 | res.Add(new LSL_Types.Vector3(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); | 6584 | res.Add(new LSL_Vector(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); |
6506 | 6585 | ||
6507 | // hollow | 6586 | // hollow |
6508 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6587 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6509 | 6588 | ||
6510 | // twist | 6589 | // twist |
6511 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6590 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6512 | 6591 | ||
6513 | // vector holesize | 6592 | // vector holesize |
6514 | res.Add(new LSL_Types.Vector3(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); | 6593 | res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); |
6515 | 6594 | ||
6516 | // vector topshear | 6595 | // vector topshear |
6517 | res.Add(new LSL_Types.Vector3(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); | 6596 | res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); |
6518 | 6597 | ||
6519 | // vector profilecut | 6598 | // vector profilecut |
6520 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6599 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6521 | 6600 | ||
6522 | 6601 | ||
6523 | // vector tapera | 6602 | // vector tapera |
6524 | res.Add(new LSL_Types.Vector3(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0)); | 6603 | res.Add(new LSL_Vector(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0)); |
6525 | 6604 | ||
6526 | // float revolutions, | 6605 | // float revolutions, |
6527 | res.Add(new LSL_Types.LSLFloat(Shape.PathRevolutions / 50.0)); // needs fixing :( | 6606 | res.Add(new LSL_Float(Shape.PathRevolutions / 50.0)); // needs fixing :( |
6528 | 6607 | ||
6529 | // float radiusoffset, | 6608 | // float radiusoffset, |
6530 | res.Add(new LSL_Types.LSLFloat(Shape.PathRadiusOffset / 100.0)); | 6609 | res.Add(new LSL_Float(Shape.PathRadiusOffset / 100.0)); |
6531 | 6610 | ||
6532 | // float skew | 6611 | // float skew |
6533 | res.Add(new LSL_Types.LSLFloat(Shape.PathSkew / 100.0)); | 6612 | res.Add(new LSL_Float(Shape.PathSkew / 100.0)); |
6534 | break; | 6613 | break; |
6535 | 6614 | ||
6536 | } | 6615 | } |
@@ -6540,39 +6619,69 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6540 | if (remain < 1) | 6619 | if (remain < 1) |
6541 | return res; | 6620 | return res; |
6542 | 6621 | ||
6543 | int face = Convert.ToInt32("" + rules.Data[idx++]); | 6622 | int face = (int)rules.GetLSLIntegerItem(idx++); |
6544 | if (face == -1) | ||
6545 | face = 0; | ||
6546 | |||
6547 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 6623 | Primitive.TextureEntry tex = m_host.Shape.Textures; |
6548 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); | 6624 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
6549 | 6625 | { | |
6550 | res.Add(new LSL_Types.LSLString(texface.TextureID.ToString())); | 6626 | for (face = 0 ; face < GetNumberOfSides(m_host) ; face++) |
6551 | res.Add(new LSL_Types.Vector3(texface.RepeatU, | 6627 | { |
6552 | texface.RepeatV, | 6628 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); |
6553 | 0)); | 6629 | |
6554 | res.Add(new LSL_Types.Vector3(texface.OffsetU, | 6630 | res.Add(new LSL_String(texface.TextureID.ToString())); |
6555 | texface.OffsetV, | 6631 | res.Add(new LSL_Vector(texface.RepeatU, |
6556 | 0)); | 6632 | texface.RepeatV, |
6557 | res.Add(new LSL_Types.LSLFloat(texface.Rotation)); | 6633 | 0)); |
6634 | res.Add(new LSL_Vector(texface.OffsetU, | ||
6635 | texface.OffsetV, | ||
6636 | 0)); | ||
6637 | res.Add(new LSL_Float(texface.Rotation)); | ||
6638 | } | ||
6639 | } | ||
6640 | else | ||
6641 | { | ||
6642 | if (face >= 0 && face < GetNumberOfSides(m_host)) | ||
6643 | { | ||
6644 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); | ||
6645 | |||
6646 | res.Add(new LSL_String(texface.TextureID.ToString())); | ||
6647 | res.Add(new LSL_Vector(texface.RepeatU, | ||
6648 | texface.RepeatV, | ||
6649 | 0)); | ||
6650 | res.Add(new LSL_Vector(texface.OffsetU, | ||
6651 | texface.OffsetV, | ||
6652 | 0)); | ||
6653 | res.Add(new LSL_Float(texface.Rotation)); | ||
6654 | } | ||
6655 | } | ||
6558 | break; | 6656 | break; |
6559 | 6657 | ||
6560 | case (int)BuiltIn_Commands_BaseClass.PRIM_COLOR: | 6658 | case (int)BuiltIn_Commands_BaseClass.PRIM_COLOR: |
6561 | if (remain < 1) | 6659 | if (remain < 1) |
6562 | return res; | 6660 | return res; |
6563 | 6661 | ||
6564 | face=Convert.ToInt32("" + rules.Data[idx++]); | 6662 | face=(int)rules.GetLSLIntegerItem(idx++); |
6565 | 6663 | ||
6566 | tex = m_host.Shape.Textures; | 6664 | tex = m_host.Shape.Textures; |
6567 | Color4 texcolor; | 6665 | Color4 texcolor; |
6568 | if (face == -1) // TMP: Until we can determine number of sides, ALL_SIDES (-1) will return default color | 6666 | if (face == BuiltIn_Commands_BaseClass.ALL_SIDES) |
6569 | texcolor = tex.DefaultTexture.RGBA; | 6667 | { |
6668 | for (face = 0 ; face < GetNumberOfSides(m_host) ; face++) | ||
6669 | { | ||
6670 | texcolor = tex.GetFace((uint)face).RGBA; | ||
6671 | res.Add(new LSL_Vector(texcolor.R, | ||
6672 | texcolor.G, | ||
6673 | texcolor.B)); | ||
6674 | res.Add(new LSL_Float(texcolor.A)); | ||
6675 | } | ||
6676 | } | ||
6570 | else | 6677 | else |
6678 | { | ||
6571 | texcolor = tex.GetFace((uint)face).RGBA; | 6679 | texcolor = tex.GetFace((uint)face).RGBA; |
6572 | res.Add(new LSL_Types.Vector3((255 - (texcolor.R * 255)) / 255, | 6680 | res.Add(new LSL_Vector(texcolor.R, |
6573 | (255 - (texcolor.G * 255)) / 255, | 6681 | texcolor.G, |
6574 | (255 - (texcolor.B * 255)) / 255)); | 6682 | texcolor.B)); |
6575 | res.Add(new LSL_Types.LSLFloat((texcolor.A * 255) / 255)); | 6683 | res.Add(new LSL_Float(texcolor.A)); |
6684 | } | ||
6576 | break; | 6685 | break; |
6577 | 6686 | ||
6578 | case (int)BuiltIn_Commands_BaseClass.PRIM_BUMP_SHINY: | 6687 | case (int)BuiltIn_Commands_BaseClass.PRIM_BUMP_SHINY: |
@@ -6580,10 +6689,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6580 | if (remain < 1) | 6689 | if (remain < 1) |
6581 | return res; | 6690 | return res; |
6582 | 6691 | ||
6583 | face=Convert.ToInt32(rules.Data[idx++]); | 6692 | face=(int)rules.GetLSLIntegerItem(idx++); |
6584 | 6693 | ||
6585 | res.Add(new LSL_Types.LSLInteger(0)); | 6694 | res.Add(new LSL_Integer(0)); |
6586 | res.Add(new LSL_Types.LSLInteger(0)); | 6695 | res.Add(new LSL_Integer(0)); |
6587 | break; | 6696 | break; |
6588 | 6697 | ||
6589 | case (int)BuiltIn_Commands_BaseClass.PRIM_FULLBRIGHT: | 6698 | case (int)BuiltIn_Commands_BaseClass.PRIM_FULLBRIGHT: |
@@ -6591,24 +6700,24 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6591 | if (remain < 1) | 6700 | if (remain < 1) |
6592 | return res; | 6701 | return res; |
6593 | 6702 | ||
6594 | face=Convert.ToInt32(rules.Data[idx++]); | 6703 | face=(int)rules.GetLSLIntegerItem(idx++); |
6595 | 6704 | ||
6596 | res.Add(new LSL_Types.LSLInteger(0)); | 6705 | res.Add(new LSL_Integer(0)); |
6597 | break; | 6706 | break; |
6598 | 6707 | ||
6599 | case (int)BuiltIn_Commands_BaseClass.PRIM_FLEXIBLE: | 6708 | case (int)BuiltIn_Commands_BaseClass.PRIM_FLEXIBLE: |
6600 | PrimitiveBaseShape shape = m_host.Shape; | 6709 | PrimitiveBaseShape shape = m_host.Shape; |
6601 | 6710 | ||
6602 | if (shape.FlexiEntry) | 6711 | if (shape.FlexiEntry) |
6603 | res.Add(new LSL_Types.LSLInteger(1)); // active | 6712 | res.Add(new LSL_Integer(1)); // active |
6604 | else | 6713 | else |
6605 | res.Add(new LSL_Types.LSLInteger(0)); | 6714 | res.Add(new LSL_Integer(0)); |
6606 | res.Add(new LSL_Types.LSLInteger(shape.FlexiSoftness));// softness | 6715 | res.Add(new LSL_Integer(shape.FlexiSoftness));// softness |
6607 | res.Add(new LSL_Types.LSLFloat(shape.FlexiGravity)); // gravity | 6716 | res.Add(new LSL_Float(shape.FlexiGravity)); // gravity |
6608 | res.Add(new LSL_Types.LSLFloat(shape.FlexiDrag)); // friction | 6717 | res.Add(new LSL_Float(shape.FlexiDrag)); // friction |
6609 | res.Add(new LSL_Types.LSLFloat(shape.FlexiWind)); // wind | 6718 | res.Add(new LSL_Float(shape.FlexiWind)); // wind |
6610 | res.Add(new LSL_Types.LSLFloat(shape.FlexiTension)); // tension | 6719 | res.Add(new LSL_Float(shape.FlexiTension)); // tension |
6611 | res.Add(new LSL_Types.Vector3(shape.FlexiForceX, // force | 6720 | res.Add(new LSL_Vector(shape.FlexiForceX, // force |
6612 | shape.FlexiForceY, | 6721 | shape.FlexiForceY, |
6613 | shape.FlexiForceZ)); | 6722 | shape.FlexiForceZ)); |
6614 | break; | 6723 | break; |
@@ -6619,24 +6728,24 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6619 | if (remain < 1) | 6728 | if (remain < 1) |
6620 | return res; | 6729 | return res; |
6621 | 6730 | ||
6622 | face=Convert.ToInt32(rules.Data[idx++]); | 6731 | face=(int)rules.GetLSLIntegerItem(idx++); |
6623 | 6732 | ||
6624 | res.Add(new LSL_Types.LSLInteger(0)); | 6733 | res.Add(new LSL_Integer(0)); |
6625 | break; | 6734 | break; |
6626 | 6735 | ||
6627 | case (int)BuiltIn_Commands_BaseClass.PRIM_POINT_LIGHT: | 6736 | case (int)BuiltIn_Commands_BaseClass.PRIM_POINT_LIGHT: |
6628 | shape = m_host.Shape; | 6737 | shape = m_host.Shape; |
6629 | 6738 | ||
6630 | if (shape.LightEntry) | 6739 | if (shape.LightEntry) |
6631 | res.Add(new LSL_Types.LSLInteger(1)); // active | 6740 | res.Add(new LSL_Integer(1)); // active |
6632 | else | 6741 | else |
6633 | res.Add(new LSL_Types.LSLInteger(0)); | 6742 | res.Add(new LSL_Integer(0)); |
6634 | res.Add(new LSL_Types.Vector3(shape.LightColorR, // color | 6743 | res.Add(new LSL_Vector(shape.LightColorR, // color |
6635 | shape.LightColorG, | 6744 | shape.LightColorG, |
6636 | shape.LightColorB)); | 6745 | shape.LightColorB)); |
6637 | res.Add(new LSL_Types.LSLFloat(shape.LightIntensity)); // intensity | 6746 | res.Add(new LSL_Float(shape.LightIntensity)); // intensity |
6638 | res.Add(new LSL_Types.LSLFloat(shape.LightRadius)); // radius | 6747 | res.Add(new LSL_Float(shape.LightRadius)); // radius |
6639 | res.Add(new LSL_Types.LSLFloat(shape.LightFalloff)); // falloff | 6748 | res.Add(new LSL_Float(shape.LightFalloff)); // falloff |
6640 | break; | 6749 | break; |
6641 | 6750 | ||
6642 | case (int)BuiltIn_Commands_BaseClass.PRIM_GLOW: | 6751 | case (int)BuiltIn_Commands_BaseClass.PRIM_GLOW: |
@@ -6644,9 +6753,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6644 | if (remain < 1) | 6753 | if (remain < 1) |
6645 | return res; | 6754 | return res; |
6646 | 6755 | ||
6647 | face=Convert.ToInt32(rules.Data[idx++]); | 6756 | face=(int)rules.GetLSLIntegerItem(idx++); |
6648 | 6757 | ||
6649 | res.Add(new LSL_Types.LSLFloat(0)); | 6758 | res.Add(new LSL_Float(0)); |
6650 | break; | 6759 | break; |
6651 | } | 6760 | } |
6652 | } | 6761 | } |
@@ -6780,7 +6889,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6780 | // characters are padded with "=". | 6889 | // characters are padded with "=". |
6781 | // </returns> | 6890 | // </returns> |
6782 | 6891 | ||
6783 | public string llIntegerToBase64(int number) | 6892 | public LSL_String llIntegerToBase64(int number) |
6784 | { | 6893 | { |
6785 | // uninitialized string | 6894 | // uninitialized string |
6786 | 6895 | ||
@@ -6843,7 +6952,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6843 | // </para> | 6952 | // </para> |
6844 | // </remarks> | 6953 | // </remarks> |
6845 | 6954 | ||
6846 | public LSL_Types.LSLInteger llBase64ToInteger(string str) | 6955 | public LSL_Integer llBase64ToInteger(string str) |
6847 | { | 6956 | { |
6848 | int number = 0; | 6957 | int number = 0; |
6849 | int digit; | 6958 | int digit; |
@@ -6903,19 +7012,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6903 | return number; | 7012 | return number; |
6904 | } | 7013 | } |
6905 | 7014 | ||
6906 | public double llGetGMTclock() | 7015 | public LSL_Float llGetGMTclock() |
6907 | { | 7016 | { |
6908 | m_host.AddScriptLPS(1); | 7017 | m_host.AddScriptLPS(1); |
6909 | return DateTime.UtcNow.TimeOfDay.TotalSeconds; | 7018 | return DateTime.UtcNow.TimeOfDay.TotalSeconds; |
6910 | } | 7019 | } |
6911 | 7020 | ||
6912 | public string llGetSimulatorHostname() | 7021 | public LSL_String llGetSimulatorHostname() |
6913 | { | 7022 | { |
6914 | m_host.AddScriptLPS(1); | 7023 | m_host.AddScriptLPS(1); |
6915 | return System.Environment.MachineName; | 7024 | return System.Environment.MachineName; |
6916 | } | 7025 | } |
6917 | 7026 | ||
6918 | public void llSetLocalRot(LSL_Types.Quaternion rot) | 7027 | public void llSetLocalRot(LSL_Rotation rot) |
6919 | { | 7028 | { |
6920 | m_host.AddScriptLPS(1); | 7029 | m_host.AddScriptLPS(1); |
6921 | m_host.RotationOffset = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); | 7030 | m_host.RotationOffset = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); |
@@ -6970,7 +7079,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6970 | // of arrays or other objects. | 7079 | // of arrays or other objects. |
6971 | // </remarks> | 7080 | // </remarks> |
6972 | 7081 | ||
6973 | public LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list separators, LSL_Types.list spacers) | 7082 | public LSL_List llParseStringKeepNulls(string src, LSL_List separators, LSL_List spacers) |
6974 | { | 7083 | { |
6975 | int beginning = 0; | 7084 | int beginning = 0; |
6976 | int srclen = src.Length; | 7085 | int srclen = src.Length; |
@@ -6988,7 +7097,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
6988 | 7097 | ||
6989 | // Initial capacity reduces resize cost | 7098 | // Initial capacity reduces resize cost |
6990 | 7099 | ||
6991 | LSL_Types.list tokens = new LSL_Types.list(); | 7100 | LSL_List tokens = new LSL_List(); |
6992 | 7101 | ||
6993 | m_host.AddScriptLPS(1); | 7102 | m_host.AddScriptLPS(1); |
6994 | 7103 | ||
@@ -7098,7 +7207,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7098 | return tokens; | 7207 | return tokens; |
7099 | } | 7208 | } |
7100 | 7209 | ||
7101 | public LSL_Types.LSLInteger llGetObjectPermMask(int mask) | 7210 | public LSL_Integer llGetObjectPermMask(int mask) |
7102 | { | 7211 | { |
7103 | m_host.AddScriptLPS(1); | 7212 | m_host.AddScriptLPS(1); |
7104 | 7213 | ||
@@ -7171,7 +7280,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7171 | } | 7280 | } |
7172 | } | 7281 | } |
7173 | 7282 | ||
7174 | public LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask) | 7283 | public LSL_Integer llGetInventoryPermMask(string item, int mask) |
7175 | { | 7284 | { |
7176 | m_host.AddScriptLPS(1); | 7285 | m_host.AddScriptLPS(1); |
7177 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7286 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -7202,7 +7311,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7202 | NotImplemented("llSetInventoryPermMask"); | 7311 | NotImplemented("llSetInventoryPermMask"); |
7203 | } | 7312 | } |
7204 | 7313 | ||
7205 | public string llGetInventoryCreator(string item) | 7314 | public LSL_String llGetInventoryCreator(string item) |
7206 | { | 7315 | { |
7207 | m_host.AddScriptLPS(1); | 7316 | m_host.AddScriptLPS(1); |
7208 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7317 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -7225,7 +7334,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7225 | // wComm.DeliverMessage(ChatTypeEnum.Owner, 0, m_host.Name, m_host.UUID, msg); | 7334 | // wComm.DeliverMessage(ChatTypeEnum.Owner, 0, m_host.Name, m_host.UUID, msg); |
7226 | } | 7335 | } |
7227 | 7336 | ||
7228 | public string llRequestSimulatorData(string simulator, int data) | 7337 | public LSL_String llRequestSimulatorData(string simulator, int data) |
7229 | { | 7338 | { |
7230 | try | 7339 | try |
7231 | { | 7340 | { |
@@ -7243,7 +7352,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7243 | // ScriptSleep(1000); | 7352 | // ScriptSleep(1000); |
7244 | return UUID.Zero.ToString(); | 7353 | return UUID.Zero.ToString(); |
7245 | } | 7354 | } |
7246 | reply = new LSL_Types.Vector3( | 7355 | reply = new LSL_Vector( |
7247 | info.RegionLocX * Constants.RegionSize, | 7356 | info.RegionLocX * Constants.RegionSize, |
7248 | info.RegionLocY * Constants.RegionSize, | 7357 | info.RegionLocY * Constants.RegionSize, |
7249 | 0).ToString(); | 7358 | 0).ToString(); |
@@ -7299,7 +7408,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7299 | m_host.SetForceMouselook(mouselook != 0); | 7408 | m_host.SetForceMouselook(mouselook != 0); |
7300 | } | 7409 | } |
7301 | 7410 | ||
7302 | public double llGetObjectMass(string id) | 7411 | public LSL_Float llGetObjectMass(string id) |
7303 | { | 7412 | { |
7304 | m_host.AddScriptLPS(1); | 7413 | m_host.AddScriptLPS(1); |
7305 | UUID key = new UUID(); | 7414 | UUID key = new UUID(); |
@@ -7322,9 +7431,9 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7322 | /// and the source list is added as a suffix. | 7431 | /// and the source list is added as a suffix. |
7323 | /// </summary> | 7432 | /// </summary> |
7324 | 7433 | ||
7325 | public LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end) | 7434 | public LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end) |
7326 | { | 7435 | { |
7327 | LSL_Types.list pref = null; | 7436 | LSL_List pref = null; |
7328 | 7437 | ||
7329 | m_host.AddScriptLPS(1); | 7438 | m_host.AddScriptLPS(1); |
7330 | 7439 | ||
@@ -7401,7 +7510,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7401 | // ScriptSleep(10000); | 7510 | // ScriptSleep(10000); |
7402 | } | 7511 | } |
7403 | 7512 | ||
7404 | public void llParcelMediaCommandList(LSL_Types.list commandList) | 7513 | public void llParcelMediaCommandList(LSL_List commandList) |
7405 | { | 7514 | { |
7406 | //TO DO: Implement the missing commands | 7515 | //TO DO: Implement the missing commands |
7407 | //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. | 7516 | //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. |
@@ -7459,8 +7568,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7459 | { | 7568 | { |
7460 | if (commandList.Data[i + 1] is string) | 7569 | if (commandList.Data[i + 1] is string) |
7461 | { | 7570 | { |
7462 | //Set the new media URL only if the user is the owner of the land | 7571 | UUID landowner = World.GetLandOwner(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y); |
7463 | osSetParcelMediaURL(commandList.Data[i + 1].ToString()); | 7572 | |
7573 | if (landowner == UUID.Zero) | ||
7574 | { | ||
7575 | return; | ||
7576 | } | ||
7577 | |||
7578 | if (landowner != m_host.ObjectOwner) | ||
7579 | { | ||
7580 | return; | ||
7581 | } | ||
7582 | |||
7583 | World.SetLandMediaURL(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y, (string)commandList.GetLSLStringItem(i + 1)); | ||
7464 | 7584 | ||
7465 | List<ScenePresence> scenePresenceList = World.GetScenePresences(); | 7585 | List<ScenePresence> scenePresenceList = World.GetScenePresences(); |
7466 | LandData landData = World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y); | 7586 | LandData landData = World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y); |
@@ -7485,12 +7605,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7485 | }//end switch | 7605 | }//end switch |
7486 | 7606 | ||
7487 | } | 7607 | } |
7608 | // ScriptSleep(2000); | ||
7488 | } | 7609 | } |
7489 | 7610 | ||
7490 | public LSL_Types.list llParcelMediaQuery(LSL_Types.list aList) | 7611 | public LSL_List llParcelMediaQuery(LSL_List aList) |
7491 | { | 7612 | { |
7492 | m_host.AddScriptLPS(1); | 7613 | m_host.AddScriptLPS(1); |
7493 | LSL_Types.list list = new LSL_Types.list(); | 7614 | LSL_List list = new LSL_List(); |
7494 | //TO DO: make the implementation for the missing commands | 7615 | //TO DO: make the implementation for the missing commands |
7495 | //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. | 7616 | //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. |
7496 | //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. | 7617 | //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. |
@@ -7506,13 +7627,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7506 | switch ((ParcelMediaCommandEnum) aList.Data[i]) | 7627 | switch ((ParcelMediaCommandEnum) aList.Data[i]) |
7507 | { | 7628 | { |
7508 | case ParcelMediaCommandEnum.Url: | 7629 | case ParcelMediaCommandEnum.Url: |
7509 | list.Add(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaURL); | 7630 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaURL)); |
7510 | break; | 7631 | break; |
7511 | case ParcelMediaCommandEnum.Desc: | 7632 | case ParcelMediaCommandEnum.Desc: |
7512 | list.Add(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).Description); | 7633 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).Description)); |
7513 | break; | 7634 | break; |
7514 | case ParcelMediaCommandEnum.Texture: | 7635 | case ParcelMediaCommandEnum.Texture: |
7515 | list.Add(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaID); | 7636 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaID.ToString())); |
7516 | break; | 7637 | break; |
7517 | default: | 7638 | default: |
7518 | ParcelMediaCommandEnum mediaCommandEnum = ParcelMediaCommandEnum.Url; | 7639 | ParcelMediaCommandEnum mediaCommandEnum = ParcelMediaCommandEnum.Url; |
@@ -7526,7 +7647,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7526 | return list; | 7647 | return list; |
7527 | } | 7648 | } |
7528 | 7649 | ||
7529 | public LSL_Types.LSLInteger llModPow(int a, int b, int c) | 7650 | public LSL_Integer llModPow(int a, int b, int c) |
7530 | { | 7651 | { |
7531 | m_host.AddScriptLPS(1); | 7652 | m_host.AddScriptLPS(1); |
7532 | Int64 tmp = 0; | 7653 | Int64 tmp = 0; |
@@ -7535,7 +7656,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7535 | return Convert.ToInt32(tmp); | 7656 | return Convert.ToInt32(tmp); |
7536 | } | 7657 | } |
7537 | 7658 | ||
7538 | public LSL_Types.LSLInteger llGetInventoryType(string name) | 7659 | public LSL_Integer llGetInventoryType(string name) |
7539 | { | 7660 | { |
7540 | m_host.AddScriptLPS(1); | 7661 | m_host.AddScriptLPS(1); |
7541 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7662 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -7548,7 +7669,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7548 | return -1; | 7669 | return -1; |
7549 | } | 7670 | } |
7550 | 7671 | ||
7551 | public void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons) | 7672 | public void llSetPayPrice(int price, LSL_List quick_pay_buttons) |
7552 | { | 7673 | { |
7553 | m_host.AddScriptLPS(1); | 7674 | m_host.AddScriptLPS(1); |
7554 | 7675 | ||
@@ -7558,42 +7679,41 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7558 | return; | 7679 | return; |
7559 | } | 7680 | } |
7560 | m_host.ParentGroup.RootPart.PayPrice[0]=price; | 7681 | m_host.ParentGroup.RootPart.PayPrice[0]=price; |
7561 | m_host.ParentGroup.RootPart.PayPrice[1]=(int)quick_pay_buttons.Data[0]; | 7682 | |
7562 | m_host.ParentGroup.RootPart.PayPrice[2]=(int)quick_pay_buttons.Data[1]; | 7683 | m_host.ParentGroup.RootPart.PayPrice[1]=(LSL_Integer)quick_pay_buttons.Data[0]; |
7563 | m_host.ParentGroup.RootPart.PayPrice[3]=(int)quick_pay_buttons.Data[2]; | 7684 | m_host.ParentGroup.RootPart.PayPrice[2]=(LSL_Integer)quick_pay_buttons.Data[1]; |
7564 | m_host.ParentGroup.RootPart.PayPrice[4]=(int)quick_pay_buttons.Data[3]; | 7685 | m_host.ParentGroup.RootPart.PayPrice[3]=(LSL_Integer)quick_pay_buttons.Data[2]; |
7686 | m_host.ParentGroup.RootPart.PayPrice[4]=(LSL_Integer)quick_pay_buttons.Data[3]; | ||
7687 | m_host.ParentGroup.HasGroupChanged = true; | ||
7565 | } | 7688 | } |
7566 | 7689 | ||
7567 | public LSL_Types.Vector3 llGetCameraPos() | 7690 | public LSL_Vector llGetCameraPos() |
7568 | { | 7691 | { |
7569 | m_host.AddScriptLPS(1); | 7692 | m_host.AddScriptLPS(1); |
7570 | UUID invItemID=InventorySelf(); | 7693 | UUID invItemID=InventorySelf(); |
7571 | if (invItemID == UUID.Zero) | 7694 | if (invItemID == UUID.Zero) |
7572 | return new LSL_Types.Vector3(); | 7695 | return new LSL_Vector(); |
7573 | if (m_host.TaskInventory[invItemID].PermsGranter == UUID.Zero) | 7696 | if (m_host.TaskInventory[invItemID].PermsGranter == UUID.Zero) |
7574 | return new LSL_Types.Vector3(); | 7697 | return new LSL_Vector(); |
7575 | if ((m_host.TaskInventory[invItemID].PermsMask & BuiltIn_Commands_BaseClass.PERMISSION_TRACK_CAMERA) == 0) | 7698 | if ((m_host.TaskInventory[invItemID].PermsMask & BuiltIn_Commands_BaseClass.PERMISSION_TRACK_CAMERA) == 0) |
7576 | { | 7699 | { |
7577 | ShoutError("No permissions to track the camera"); | 7700 | ShoutError("No permissions to track the camera"); |
7578 | return new LSL_Types.Vector3(); | 7701 | return new LSL_Vector(); |
7579 | } | 7702 | } |
7580 | ScenePresence presence = World.GetScenePresence(m_host.OwnerID); | 7703 | ScenePresence presence = World.GetScenePresence(m_host.OwnerID); |
7581 | if (presence != null) | 7704 | if (presence != null) |
7582 | { | 7705 | { |
7583 | LSL_Types.Vector3 pos = new LSL_Types.Vector3( | 7706 | LSL_Vector pos = new LSL_Vector(presence.CameraPosition.X, presence.CameraPosition.Y, presence.CameraPosition.Z); |
7584 | presence.CameraPosition.X, | ||
7585 | presence.CameraPosition.Y, | ||
7586 | presence.CameraPosition.Z); | ||
7587 | return pos; | 7707 | return pos; |
7588 | } | 7708 | } |
7589 | return new LSL_Types.Vector3(); | 7709 | return new LSL_Vector(); |
7590 | } | 7710 | } |
7591 | 7711 | ||
7592 | public LSL_Types.Quaternion llGetCameraRot() | 7712 | public LSL_Rotation llGetCameraRot() |
7593 | { | 7713 | { |
7594 | m_host.AddScriptLPS(1); | 7714 | m_host.AddScriptLPS(1); |
7595 | NotImplemented("llGetCameraRot"); | 7715 | NotImplemented("llGetCameraRot"); |
7596 | return new LSL_Types.Quaternion(); | 7716 | return new LSL_Rotation(); |
7597 | } | 7717 | } |
7598 | 7718 | ||
7599 | public void llSetPrimURL() | 7719 | public void llSetPrimURL() |
@@ -7610,7 +7730,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7610 | // ScriptSleep(20000); | 7730 | // ScriptSleep(20000); |
7611 | } | 7731 | } |
7612 | 7732 | ||
7613 | public string llEscapeURL(string url) | 7733 | public LSL_String llEscapeURL(string url) |
7614 | { | 7734 | { |
7615 | m_host.AddScriptLPS(1); | 7735 | m_host.AddScriptLPS(1); |
7616 | try | 7736 | try |
@@ -7623,7 +7743,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7623 | } | 7743 | } |
7624 | } | 7744 | } |
7625 | 7745 | ||
7626 | public string llUnescapeURL(string url) | 7746 | public LSL_String llUnescapeURL(string url) |
7627 | { | 7747 | { |
7628 | m_host.AddScriptLPS(1); | 7748 | m_host.AddScriptLPS(1); |
7629 | try | 7749 | try |
@@ -7636,7 +7756,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7636 | } | 7756 | } |
7637 | } | 7757 | } |
7638 | 7758 | ||
7639 | public void llMapDestination(string simname, LSL_Types.Vector3 pos, LSL_Types.Vector3 look_at) | 7759 | public void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at) |
7640 | { | 7760 | { |
7641 | m_host.AddScriptLPS(1); | 7761 | m_host.AddScriptLPS(1); |
7642 | NotImplemented("llMapDestination"); | 7762 | NotImplemented("llMapDestination"); |
@@ -7706,7 +7826,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7706 | // ScriptSleep(100); | 7826 | // ScriptSleep(100); |
7707 | } | 7827 | } |
7708 | 7828 | ||
7709 | public void llSetCameraParams(LSL_Types.list rules) | 7829 | public void llSetCameraParams(LSL_List rules) |
7710 | { | 7830 | { |
7711 | m_host.AddScriptLPS(1); | 7831 | m_host.AddScriptLPS(1); |
7712 | 7832 | ||
@@ -7731,7 +7851,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7731 | SortedDictionary<int, float> parameters = new SortedDictionary<int, float>(); | 7851 | SortedDictionary<int, float> parameters = new SortedDictionary<int, float>(); |
7732 | object[] data = rules.Data; | 7852 | object[] data = rules.Data; |
7733 | for (int i = 0; i < data.Length; ++i) { | 7853 | for (int i = 0; i < data.Length; ++i) { |
7734 | int type = Convert.ToInt32(data[i++]); | 7854 | int type = Convert.ToInt32(data[i++].ToString()); |
7735 | if (i >= data.Length) break; // odd number of entries => ignore the last | 7855 | if (i >= data.Length) break; // odd number of entries => ignore the last |
7736 | 7856 | ||
7737 | // some special cases: Vector parameters are split into 3 float parameters (with type+1, type+2, type+3) | 7857 | // some special cases: Vector parameters are split into 3 float parameters (with type+1, type+2, type+3) |
@@ -7739,17 +7859,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7739 | case BuiltIn_Commands_BaseClass.CAMERA_FOCUS: | 7859 | case BuiltIn_Commands_BaseClass.CAMERA_FOCUS: |
7740 | case BuiltIn_Commands_BaseClass.CAMERA_FOCUS_OFFSET: | 7860 | case BuiltIn_Commands_BaseClass.CAMERA_FOCUS_OFFSET: |
7741 | case BuiltIn_Commands_BaseClass.CAMERA_POSITION: | 7861 | case BuiltIn_Commands_BaseClass.CAMERA_POSITION: |
7742 | LSL_Types.Vector3 v = (LSL_Types.Vector3)data[i]; | 7862 | LSL_Vector v = (LSL_Vector)data[i]; |
7743 | parameters.Add(type + 1, (float)v.x); | 7863 | parameters.Add(type + 1, (float)v.x); |
7744 | parameters.Add(type + 2, (float)v.y); | 7864 | parameters.Add(type + 2, (float)v.y); |
7745 | parameters.Add(type + 3, (float)v.z); | 7865 | parameters.Add(type + 3, (float)v.z); |
7746 | break; | 7866 | break; |
7747 | default: | 7867 | default: |
7748 | // TODO: clean that up as soon as the implicit casts are in | 7868 | // TODO: clean that up as soon as the implicit casts are in |
7749 | if (data[i] is LSL_Types.LSLFloat) | 7869 | if (data[i] is LSL_Float) |
7750 | parameters.Add(type, (float)((LSL_Types.LSLFloat)data[i]).value); | 7870 | parameters.Add(type, (float)((LSL_Float)data[i]).value); |
7751 | else if (data[i] is LSL_Types.LSLInteger) | 7871 | else if (data[i] is LSL_Integer) |
7752 | parameters.Add(type, (float)((LSL_Types.LSLInteger)data[i]).value); | 7872 | parameters.Add(type, (float)((LSL_Integer)data[i]).value); |
7753 | else parameters.Add(type, Convert.ToSingle(data[i])); | 7873 | else parameters.Add(type, Convert.ToSingle(data[i])); |
7754 | break; | 7874 | break; |
7755 | } | 7875 | } |
@@ -7782,10 +7902,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7782 | presence.ControllingClient.SendClearFollowCamProperties(objectID); | 7902 | presence.ControllingClient.SendClearFollowCamProperties(objectID); |
7783 | } | 7903 | } |
7784 | 7904 | ||
7785 | public double llListStatistics(int operation, LSL_Types.list src) | 7905 | public LSL_Float llListStatistics(int operation, LSL_List src) |
7786 | { | 7906 | { |
7787 | m_host.AddScriptLPS(1); | 7907 | m_host.AddScriptLPS(1); |
7788 | LSL_Types.list nums = LSL_Types.list.ToDoubleList(src); | 7908 | LSL_List nums = LSL_List.ToDoubleList(src); |
7789 | switch (operation) | 7909 | switch (operation) |
7790 | { | 7910 | { |
7791 | case BuiltIn_Commands_BaseClass.LIST_STAT_RANGE: | 7911 | case BuiltIn_Commands_BaseClass.LIST_STAT_RANGE: |
@@ -7815,19 +7935,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7815 | } | 7935 | } |
7816 | } | 7936 | } |
7817 | 7937 | ||
7818 | public LSL_Types.LSLInteger llGetUnixTime() | 7938 | public LSL_Integer llGetUnixTime() |
7819 | { | 7939 | { |
7820 | m_host.AddScriptLPS(1); | 7940 | m_host.AddScriptLPS(1); |
7821 | return Util.UnixTimeSinceEpoch(); | 7941 | return Util.UnixTimeSinceEpoch(); |
7822 | } | 7942 | } |
7823 | 7943 | ||
7824 | public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos) | 7944 | public LSL_Integer llGetParcelFlags(LSL_Vector pos) |
7825 | { | 7945 | { |
7826 | m_host.AddScriptLPS(1); | 7946 | m_host.AddScriptLPS(1); |
7827 | return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags; | 7947 | return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags; |
7828 | } | 7948 | } |
7829 | 7949 | ||
7830 | public LSL_Types.LSLInteger llGetRegionFlags() | 7950 | public LSL_Integer llGetRegionFlags() |
7831 | { | 7951 | { |
7832 | m_host.AddScriptLPS(1); | 7952 | m_host.AddScriptLPS(1); |
7833 | IEstateModule estate = World.RequestModuleInterface<IEstateModule>(); | 7953 | IEstateModule estate = World.RequestModuleInterface<IEstateModule>(); |
@@ -7836,7 +7956,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7836 | return (int)estate.GetRegionFlags(); | 7956 | return (int)estate.GetRegionFlags(); |
7837 | } | 7957 | } |
7838 | 7958 | ||
7839 | public string llXorBase64StringsCorrect(string str1, string str2) | 7959 | public LSL_String llXorBase64StringsCorrect(string str1, string str2) |
7840 | { | 7960 | { |
7841 | m_host.AddScriptLPS(1); | 7961 | m_host.AddScriptLPS(1); |
7842 | string ret = String.Empty; | 7962 | string ret = String.Empty; |
@@ -7854,7 +7974,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7854 | return llStringToBase64(ret); | 7974 | return llStringToBase64(ret); |
7855 | } | 7975 | } |
7856 | 7976 | ||
7857 | public string llHTTPRequest(string url, LSL_Types.list parameters, string body) | 7977 | public LSL_String llHTTPRequest(string url, LSL_List parameters, string body) |
7858 | { | 7978 | { |
7859 | // Partial implementation: support for parameter flags needed | 7979 | // Partial implementation: support for parameter flags needed |
7860 | // see http://wiki.secondlife.com/wiki/LlHTTPRequest | 7980 | // see http://wiki.secondlife.com/wiki/LlHTTPRequest |
@@ -7931,7 +8051,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7931 | // ScriptSleep(100); | 8051 | // ScriptSleep(100); |
7932 | } | 8052 | } |
7933 | 8053 | ||
7934 | public LSL_Types.LSLInteger llGetParcelPrimCount(LSL_Types.Vector3 pos, int category, int sim_wide) | 8054 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) |
7935 | { | 8055 | { |
7936 | m_host.AddScriptLPS(1); | 8056 | m_host.AddScriptLPS(1); |
7937 | 8057 | ||
@@ -7994,11 +8114,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
7994 | return 0; | 8114 | return 0; |
7995 | } | 8115 | } |
7996 | 8116 | ||
7997 | public LSL_Types.list llGetParcelPrimOwners(LSL_Types.Vector3 pos) | 8117 | public LSL_List llGetParcelPrimOwners(LSL_Vector pos) |
7998 | { | 8118 | { |
7999 | m_host.AddScriptLPS(1); | 8119 | m_host.AddScriptLPS(1); |
8000 | LandObject land = (LandObject)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y); | 8120 | LandObject land = (LandObject)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y); |
8001 | LSL_Types.list ret = new LSL_Types.list(); | 8121 | LSL_List ret = new LSL_List(); |
8002 | if (land != null) | 8122 | if (land != null) |
8003 | { | 8123 | { |
8004 | foreach (KeyValuePair<UUID, int> d in land.getLandObjectOwners()) | 8124 | foreach (KeyValuePair<UUID, int> d in land.getLandObjectOwners()) |
@@ -8011,7 +8131,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8011 | return ret; | 8131 | return ret; |
8012 | } | 8132 | } |
8013 | 8133 | ||
8014 | public LSL_Types.LSLInteger llGetObjectPrimCount(string object_id) | 8134 | public LSL_Integer llGetObjectPrimCount(string object_id) |
8015 | { | 8135 | { |
8016 | m_host.AddScriptLPS(1); | 8136 | m_host.AddScriptLPS(1); |
8017 | SceneObjectPart part = World.GetSceneObjectPart(new UUID(object_id)); | 8137 | SceneObjectPart part = World.GetSceneObjectPart(new UUID(object_id)); |
@@ -8025,7 +8145,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8025 | } | 8145 | } |
8026 | } | 8146 | } |
8027 | 8147 | ||
8028 | public LSL_Types.LSLInteger llGetParcelMaxPrims(LSL_Types.Vector3 pos, int sim_wide) | 8148 | public LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide) |
8029 | { | 8149 | { |
8030 | m_host.AddScriptLPS(1); | 8150 | m_host.AddScriptLPS(1); |
8031 | // Alondria: This currently just is utilizing the normal grid's 0.22 prims/m2 calculation | 8151 | // Alondria: This currently just is utilizing the normal grid's 0.22 prims/m2 calculation |
@@ -8055,36 +8175,36 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8055 | 8175 | ||
8056 | } | 8176 | } |
8057 | 8177 | ||
8058 | public LSL_Types.list llGetParcelDetails(LSL_Types.Vector3 pos, LSL_Types.list param) | 8178 | public LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param) |
8059 | { | 8179 | { |
8060 | m_host.AddScriptLPS(1); | 8180 | m_host.AddScriptLPS(1); |
8061 | LandData land = World.GetLandData((float)pos.x, (float)pos.y); | 8181 | LandData land = World.GetLandData((float)pos.x, (float)pos.y); |
8062 | if (land == null) | 8182 | if (land == null) |
8063 | { | 8183 | { |
8064 | return new LSL_Types.list(0); | 8184 | return new LSL_List(0); |
8065 | } | 8185 | } |
8066 | LSL_Types.list ret = new LSL_Types.list(); | 8186 | LSL_List ret = new LSL_List(); |
8067 | foreach (object o in param.Data) | 8187 | foreach (object o in param.Data) |
8068 | { | 8188 | { |
8069 | switch (o.ToString()) | 8189 | switch (o.ToString()) |
8070 | { | 8190 | { |
8071 | case "0": | 8191 | case "0": |
8072 | ret = ret + new LSL_Types.list(land.Name); | 8192 | ret = ret + new LSL_List(land.Name); |
8073 | break; | 8193 | break; |
8074 | case "1": | 8194 | case "1": |
8075 | ret = ret + new LSL_Types.list(land.Description); | 8195 | ret = ret + new LSL_List(land.Description); |
8076 | break; | 8196 | break; |
8077 | case "2": | 8197 | case "2": |
8078 | ret = ret + new LSL_Types.list(land.OwnerID.ToString()); | 8198 | ret = ret + new LSL_List(land.OwnerID.ToString()); |
8079 | break; | 8199 | break; |
8080 | case "3": | 8200 | case "3": |
8081 | ret = ret + new LSL_Types.list(land.GroupID.ToString()); | 8201 | ret = ret + new LSL_List(land.GroupID.ToString()); |
8082 | break; | 8202 | break; |
8083 | case "4": | 8203 | case "4": |
8084 | ret = ret + new LSL_Types.list(land.Area); | 8204 | ret = ret + new LSL_List(land.Area); |
8085 | break; | 8205 | break; |
8086 | default: | 8206 | default: |
8087 | ret = ret + new LSL_Types.list(0); | 8207 | ret = ret + new LSL_List(0); |
8088 | break; | 8208 | break; |
8089 | } | 8209 | } |
8090 | } | 8210 | } |
@@ -8107,7 +8227,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8107 | // ScriptSleep(200); | 8227 | // ScriptSleep(200); |
8108 | } | 8228 | } |
8109 | 8229 | ||
8110 | public string llStringTrim(string src, int type) | 8230 | public LSL_String llStringTrim(string src, int type) |
8111 | { | 8231 | { |
8112 | m_host.AddScriptLPS(1); | 8232 | m_host.AddScriptLPS(1); |
8113 | if (type == (int)BuiltIn_Commands_BaseClass.STRING_TRIM_HEAD) { return src.TrimStart(); } | 8233 | if (type == (int)BuiltIn_Commands_BaseClass.STRING_TRIM_HEAD) { return src.TrimStart(); } |
@@ -8116,10 +8236,10 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8116 | return src; | 8236 | return src; |
8117 | } | 8237 | } |
8118 | 8238 | ||
8119 | public LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | 8239 | public LSL_List llGetObjectDetails(string id, LSL_List args) |
8120 | { | 8240 | { |
8121 | m_host.AddScriptLPS(1); | 8241 | m_host.AddScriptLPS(1); |
8122 | LSL_Types.list ret = new LSL_Types.list(); | 8242 | LSL_List ret = new LSL_List(); |
8123 | UUID key = new UUID(); | 8243 | UUID key = new UUID(); |
8124 | if (UUID.TryParse(id, out key)) | 8244 | if (UUID.TryParse(id, out key)) |
8125 | { | 8245 | { |
@@ -8138,13 +8258,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8138 | ret.Add(""); | 8258 | ret.Add(""); |
8139 | break; | 8259 | break; |
8140 | case "3": | 8260 | case "3": |
8141 | ret.Add(new LSL_Types.Vector3((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z)); | 8261 | ret.Add(new LSL_Vector((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z)); |
8142 | break; | 8262 | break; |
8143 | case "4": | 8263 | case "4": |
8144 | ret.Add(new LSL_Types.Quaternion((double)av.Rotation.X, (double)av.Rotation.Y, (double)av.Rotation.Z, (double)av.Rotation.W)); | 8264 | ret.Add(new LSL_Rotation((double)av.Rotation.X, (double)av.Rotation.Y, (double)av.Rotation.Z, (double)av.Rotation.W)); |
8145 | break; | 8265 | break; |
8146 | case "5": | 8266 | case "5": |
8147 | ret.Add(new LSL_Types.Vector3(av.Velocity.X, av.Velocity.Y, av.Velocity.Z)); | 8267 | ret.Add(new LSL_Vector(av.Velocity.X, av.Velocity.Y, av.Velocity.Z)); |
8148 | break; | 8268 | break; |
8149 | case "6": | 8269 | case "6": |
8150 | ret.Add(id); | 8270 | ret.Add(id); |
@@ -8173,13 +8293,13 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8173 | ret.Add(obj.Description); | 8293 | ret.Add(obj.Description); |
8174 | break; | 8294 | break; |
8175 | case "3": | 8295 | case "3": |
8176 | ret.Add(new LSL_Types.Vector3(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); | 8296 | ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); |
8177 | break; | 8297 | break; |
8178 | case "4": | 8298 | case "4": |
8179 | ret.Add(new LSL_Types.Quaternion(obj.RotationOffset.X, obj.RotationOffset.Y, obj.RotationOffset.Z, obj.RotationOffset.W)); | 8299 | ret.Add(new LSL_Rotation(obj.RotationOffset.X, obj.RotationOffset.Y, obj.RotationOffset.Z, obj.RotationOffset.W)); |
8180 | break; | 8300 | break; |
8181 | case "5": | 8301 | case "5": |
8182 | ret.Add(new LSL_Types.Vector3(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z)); | 8302 | ret.Add(new LSL_Vector(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z)); |
8183 | break; | 8303 | break; |
8184 | case "6": | 8304 | case "6": |
8185 | ret.Add(obj.OwnerID.ToString()); | 8305 | ret.Add(obj.OwnerID.ToString()); |
@@ -8195,7 +8315,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8195 | return ret; | 8315 | return ret; |
8196 | } | 8316 | } |
8197 | } | 8317 | } |
8198 | return new LSL_Types.list(); | 8318 | return new LSL_List(); |
8199 | } | 8319 | } |
8200 | 8320 | ||
8201 | 8321 | ||
@@ -8232,7 +8352,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8232 | throw new Exception("LSL Runtime Error: " + msg); | 8352 | throw new Exception("LSL Runtime Error: " + msg); |
8233 | } | 8353 | } |
8234 | 8354 | ||
8235 | public string llGetNumberOfNotecardLines(string name) | 8355 | public LSL_String llGetNumberOfNotecardLines(string name) |
8236 | { | 8356 | { |
8237 | m_host.AddScriptLPS(1); | 8357 | m_host.AddScriptLPS(1); |
8238 | 8358 | ||
@@ -8255,7 +8375,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
8255 | // ScriptSleep(100); | 8375 | // ScriptSleep(100); |
8256 | } | 8376 | } |
8257 | 8377 | ||
8258 | public string llGetNotecardLine(string name, int line) | 8378 | public LSL_String llGetNotecardLine(string name, int line) |
8259 | { | 8379 | { |
8260 | m_host.AddScriptLPS(1); | 8380 | m_host.AddScriptLPS(1); |
8261 | 8381 | ||
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs index d4cf3f5..fa468bd 100644 --- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs | |||
@@ -27,6 +27,14 @@ | |||
27 | 27 | ||
28 | using OpenSim.Region.Environment.Interfaces; | 28 | using OpenSim.Region.Environment.Interfaces; |
29 | 29 | ||
30 | using LSL_Float = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLFloat; | ||
31 | using LSL_Integer = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLInteger; | ||
32 | using LSL_Key = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; | ||
33 | using LSL_List = OpenSim.Region.ScriptEngine.Common.LSL_Types.list; | ||
34 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion; | ||
35 | using LSL_String = OpenSim.Region.ScriptEngine.Common.LSL_Types.LSLString; | ||
36 | using LSL_Vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3; | ||
37 | |||
30 | namespace OpenSim.Region.ScriptEngine.Common | 38 | namespace OpenSim.Region.ScriptEngine.Common |
31 | { | 39 | { |
32 | public interface LSL_BuiltIn_Commands_Interface | 40 | public interface LSL_BuiltIn_Commands_Interface |
@@ -37,618 +45,347 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
37 | 45 | ||
38 | ICommander GetCommander(string name); | 46 | ICommander GetCommander(string name); |
39 | 47 | ||
40 | double llSin(double f); | 48 | LSL_Integer llAbs(int i); |
41 | double llCos(double f); | 49 | LSL_Float llAcos(double val); |
42 | double llTan(double f); | 50 | void llAddToLandBanList(string avatar, double hours); |
43 | double llAtan2(double x, double y); | 51 | void llAddToLandPassList(string avatar, double hours); |
44 | double llSqrt(double f); | 52 | void llAdjustSoundVolume(double volume); |
45 | double llPow(double fbase, double fexponent); | 53 | void llAllowInventoryDrop(int add); |
46 | LSL_Types.LSLInteger llAbs(int i); | 54 | LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b); |
47 | double llFabs(double f); | 55 | void llApplyImpulse(LSL_Vector force, int local); |
48 | double llFrand(double mag); | 56 | void llApplyRotationalImpulse(LSL_Vector force, int local); |
49 | LSL_Types.LSLInteger llFloor(double f); | 57 | LSL_Float llAsin(double val); |
50 | LSL_Types.LSLInteger llCeil(double f); | 58 | LSL_Float llAtan2(double x, double y); |
51 | LSL_Types.LSLInteger llRound(double f); | 59 | void llAttachToAvatar(int attachment); |
52 | double llVecMag(LSL_Types.Vector3 v); | 60 | LSL_Key llAvatarOnSitTarget(); |
53 | LSL_Types.Vector3 llVecNorm(LSL_Types.Vector3 v); | 61 | LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up); |
54 | double llVecDist(LSL_Types.Vector3 a, LSL_Types.Vector3 b); | 62 | LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle); |
55 | LSL_Types.Vector3 llRot2Euler(LSL_Types.Quaternion r); | 63 | LSL_Integer llBase64ToInteger(string str); |
56 | LSL_Types.Quaternion llEuler2Rot(LSL_Types.Vector3 v); | 64 | LSL_String llBase64ToString(string str); |
57 | LSL_Types.Quaternion llAxes2Rot(LSL_Types.Vector3 fwd, LSL_Types.Vector3 left, LSL_Types.Vector3 up); | 65 | void llBreakAllLinks(); |
58 | LSL_Types.Vector3 llRot2Fwd(LSL_Types.Quaternion r); | 66 | void llBreakLink(int linknum); |
59 | LSL_Types.Vector3 llRot2Left(LSL_Types.Quaternion r); | 67 | LSL_Integer llCeil(double f); |
60 | LSL_Types.Vector3 llRot2Up(LSL_Types.Quaternion r); | 68 | void llClearCameraParams(); |
61 | LSL_Types.Quaternion llRotBetween(LSL_Types.Vector3 start, LSL_Types.Vector3 end); | 69 | void llCloseRemoteDataChannel(string channel); |
62 | void llWhisper(int channelID, string text); | 70 | LSL_Float llCloud(LSL_Vector offset); |
63 | //void llSay(int channelID, string text); | 71 | void llCollisionFilter(string name, string id, int accept); |
64 | void llSay(int channelID, string text); | 72 | void llCollisionSound(string impact_sound, double impact_volume); |
65 | void llShout(int channelID, string text); | 73 | void llCollisionSprite(string impact_sprite); |
66 | void llRegionSay(int channelID, string text); | 74 | LSL_Float llCos(double f); |
67 | LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg); | 75 | void llCreateLink(string target, int parent); |
68 | void llListenControl(int number, int active); | 76 | LSL_List llCSV2List(string src); |
69 | void llListenRemove(int number); | 77 | LSL_List llDeleteSubList(LSL_List src, int start, int end); |
70 | void llSensor(string name, string id, int type, double range, double arc); | 78 | LSL_String llDeleteSubString(string src, int start, int end); |
71 | void llSensorRepeat(string name, string id, int type, double range, double arc, double rate); | 79 | void llDetachFromAvatar(); |
72 | void llSensorRemove(); | 80 | LSL_Vector llDetectedGrab(int number); |
73 | string llDetectedName(int number); | 81 | LSL_Integer llDetectedGroup(int number); |
74 | string llDetectedKey(int number); | 82 | LSL_Key llDetectedKey(int number); |
75 | string llDetectedOwner(int number); | 83 | LSL_Integer llDetectedLinkNumber(int number); |
76 | LSL_Types.LSLInteger llDetectedType(int number); | 84 | LSL_String llDetectedName(int number); |
77 | LSL_Types.Vector3 llDetectedPos(int number); | 85 | LSL_Key llDetectedOwner(int number); |
78 | LSL_Types.Vector3 llDetectedVel(int number); | 86 | LSL_Vector llDetectedPos(int number); |
79 | LSL_Types.Vector3 llDetectedGrab(int number); | 87 | LSL_Rotation llDetectedRot(int number); |
80 | LSL_Types.Quaternion llDetectedRot(int number); | 88 | LSL_Integer llDetectedType(int number); |
81 | LSL_Types.LSLInteger llDetectedGroup(int number); | 89 | LSL_Vector llDetectedTouchBinormal(int index); |
82 | LSL_Types.LSLInteger llDetectedLinkNumber(int number); | 90 | LSL_Integer llDetectedTouchFace(int index); |
83 | void llDie(); | 91 | LSL_Vector llDetectedTouchNormal(int index); |
84 | double llGround(LSL_Types.Vector3 offset); | 92 | LSL_Vector llDetectedTouchPos(int index); |
85 | double llCloud(LSL_Types.Vector3 offset); | 93 | LSL_Vector llDetectedTouchST(int index); |
86 | LSL_Types.Vector3 llWind(LSL_Types.Vector3 offset); | 94 | LSL_Vector llDetectedTouchUV(int index); |
87 | void llSetStatus(int status, int value); | 95 | LSL_Vector llDetectedVel(int number); |
88 | LSL_Types.LSLInteger llGetStatus(int status); | 96 | void llDialog(string avatar, string message, LSL_List buttons, int chat_channel); |
89 | void llSetScale(LSL_Types.Vector3 scale); | 97 | void llDie(); |
90 | LSL_Types.Vector3 llGetScale(); | 98 | LSL_String llDumpList2String(LSL_List src, string seperator); |
91 | void llSetColor(LSL_Types.Vector3 color, int face); | 99 | LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir); |
92 | double llGetAlpha(int face); | 100 | void llEjectFromLand(string pest); |
93 | void llSetAlpha(double alpha, int face); | 101 | void llEmail(string address, string subject, string message); |
94 | LSL_Types.Vector3 llGetColor(int face); | 102 | LSL_String llEscapeURL(string url); |
95 | void llSetTexture(string texture, int face); | 103 | LSL_Rotation llEuler2Rot(LSL_Vector v); |
96 | void llScaleTexture(double u, double v, int face); | 104 | LSL_Float llFabs(double f); |
97 | void llOffsetTexture(double u, double v, int face); | 105 | LSL_Integer llFloor(double f); |
98 | void llRotateTexture(double rotation, int face); | 106 | void llForceMouselook(int mouselook); |
99 | string llGetTexture(int face); | 107 | LSL_Float llFrand(double mag); |
100 | void llSetPos(LSL_Types.Vector3 pos); | 108 | LSL_Vector llGetAccel(); |
101 | 109 | LSL_Integer llGetAgentInfo(string id); | |
102 | //wiki: vector llGetPos() | 110 | LSL_Vector llGetAgentSize(string id); |
103 | LSL_Types.Vector3 llGetPos(); | 111 | LSL_Float llGetAlpha(int face); |
104 | //wiki: vector llGetLocalPos() | 112 | LSL_Float llGetAndResetTime(); |
105 | LSL_Types.Vector3 llGetLocalPos(); | 113 | LSL_String llGetAnimation(string id); |
106 | //wiki: llSetRot(rotation rot) | 114 | LSL_List llGetAnimationList(string id); |
107 | void llSetRot(LSL_Types.Quaternion rot); | 115 | LSL_Integer llGetAttached(); |
108 | //wiki: rotation llGetRot() | 116 | LSL_List llGetBoundingBox(string obj); |
109 | LSL_Types.Quaternion llGetRot(); | 117 | LSL_Vector llGetCameraPos(); |
110 | //wiki: rotation llGetLocalRot() | 118 | LSL_Rotation llGetCameraRot(); |
111 | LSL_Types.Quaternion llGetLocalRot(); | 119 | LSL_Vector llGetCenterOfMass(); |
112 | //wiki: llSetForce(vector force, integer local) | 120 | LSL_Vector llGetColor(int face); |
113 | void llSetForce(LSL_Types.Vector3 force, int local); | 121 | LSL_String llGetCreator(); |
114 | //wiki: vector llGetForce() | 122 | LSL_String llGetDate(); |
115 | LSL_Types.Vector3 llGetForce(); | 123 | LSL_Float llGetEnergy(); |
116 | //wiki: integer llTarget(vector position, double range) | 124 | LSL_Vector llGetForce(); |
117 | LSL_Types.LSLInteger llTarget(LSL_Types.Vector3 position, double range); | 125 | LSL_Integer llGetFreeMemory(); |
118 | //wiki: llTargetRemove(integer number) | 126 | LSL_Vector llGetGeometricCenter(); |
119 | void llTargetRemove(int number); | 127 | LSL_Float llGetGMTclock(); |
120 | //wiki: integer llRotTarget(rotation rot, double error) | 128 | LSL_Key llGetInventoryCreator(string item); |
121 | LSL_Types.LSLInteger llRotTarget(LSL_Types.Quaternion rot, double error); | 129 | LSL_Key llGetInventoryKey(string name); |
122 | //wiki: integer llRotTargetRemove(integer number) | 130 | LSL_String llGetInventoryName(int type, int number); |
123 | void llRotTargetRemove(int number); | 131 | LSL_Integer llGetInventoryNumber(int type); |
124 | //wiki: llMoveToTarget(vector target, double tau) | 132 | LSL_Integer llGetInventoryPermMask(string item, int mask); |
125 | void llMoveToTarget(LSL_Types.Vector3 target, double tau); | 133 | LSL_Integer llGetInventoryType(string name); |
126 | //wiki: llStopMoveToTarget() | 134 | LSL_Key llGetKey(); |
127 | void llStopMoveToTarget(); | 135 | LSL_Key llGetLandOwnerAt(LSL_Vector pos); |
128 | //wiki: llApplyImpulse(vector force, integer local) | 136 | LSL_Key llGetLinkKey(int linknum); |
129 | void llApplyImpulse(LSL_Types.Vector3 force, int local); | 137 | LSL_String llGetLinkName(int linknum); |
130 | //wiki: llapplyRotationalImpulse(vector force, integer local) | 138 | LSL_Integer llGetLinkNumber(); |
131 | void llApplyRotationalImpulse(LSL_Types.Vector3 force, int local); | 139 | LSL_Integer llGetListEntryType(LSL_List src, int index); |
132 | //wiki: llSetTorque(vector torque, integer local) | 140 | LSL_Integer llGetListLength(LSL_List src); |
133 | void llSetTorque(LSL_Types.Vector3 torque, int local); | 141 | LSL_Vector llGetLocalPos(); |
134 | //wiki: vector llGetTorque() | 142 | LSL_Rotation llGetLocalRot(); |
135 | LSL_Types.Vector3 llGetTorque(); | 143 | LSL_Float llGetMass(); |
136 | //wiki: llSeForceAndTorque(vector force, vector torque, integer local) | 144 | void llGetNextEmail(string address, string subject); |
137 | void llSetForceAndTorque(LSL_Types.Vector3 force, LSL_Types.Vector3 torque, int local); | 145 | LSL_String llGetNotecardLine(string name, int line); |
138 | //wiki: vector llGetVel() | 146 | LSL_Key llGetNumberOfNotecardLines(string name); |
139 | LSL_Types.Vector3 llGetVel(); | 147 | LSL_Integer llGetNumberOfPrims(); |
140 | //wiki: vector llGetAccel() | 148 | LSL_Integer llGetNumberOfSides(); |
141 | LSL_Types.Vector3 llGetAccel(); | 149 | LSL_String llGetObjectDesc(); |
142 | //wiki: vector llGetOmega() | 150 | LSL_List llGetObjectDetails(string id, LSL_List args); |
143 | LSL_Types.Vector3 llGetOmega(); | 151 | LSL_Float llGetObjectMass(string id); |
144 | //wiki: double llGetTimeOfDay() | 152 | LSL_String llGetObjectName(); |
145 | double llGetTimeOfDay(); | 153 | LSL_Integer llGetObjectPermMask(int mask); |
146 | //wiki: double llGetWallclock() | 154 | LSL_Integer llGetObjectPrimCount(string object_id); |
147 | double llGetWallclock(); | 155 | LSL_Vector llGetOmega(); |
148 | //wiki: double llGetTime() | 156 | LSL_Key llGetOwner(); |
149 | double llGetTime(); | 157 | LSL_Key llGetOwnerKey(string id); |
150 | //wiki: llResetTime() | 158 | LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param); |
151 | void llResetTime(); | 159 | LSL_Integer llGetParcelFlags(LSL_Vector pos); |
152 | //wiki: double llGetAndResetTime() | 160 | LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide); |
153 | double llGetAndResetTime(); | 161 | LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide); |
154 | //wiki (deprecated) llSound(string sound, double volume, integer queue, integer loop) | 162 | LSL_List llGetParcelPrimOwners(LSL_Vector pos); |
155 | void llSound(); | 163 | LSL_Integer llGetPermissions(); |
156 | //wiki: llPlaySound(string sound, double volume) | 164 | LSL_Key llGetPermissionsKey(); |
157 | void llPlaySound(string sound, double volume); | 165 | LSL_Vector llGetPos(); |
158 | //wiki: llLoopSound(string sound, double volume) | 166 | LSL_List llGetPrimitiveParams(LSL_List rules); |
159 | void llLoopSound(string sound, double volume); | 167 | LSL_Integer llGetRegionAgentCount(); |
160 | //wiki: llLoopSoundMaster(string sound, double volume) | 168 | LSL_Vector llGetRegionCorner(); |
161 | void llLoopSoundMaster(string sound, double volume); | 169 | LSL_Integer llGetRegionFlags(); |
162 | //wiki: llLoopSoundSlave(string sound, double volume) | 170 | LSL_Float llGetRegionFPS(); |
163 | void llLoopSoundSlave(string sound, double volume); | 171 | LSL_String llGetRegionName(); |
164 | //wiki llPlaySoundSlave(string sound, double volume) | 172 | LSL_Float llGetRegionTimeDilation(); |
165 | void llPlaySoundSlave(string sound, double volume); | 173 | LSL_Vector llGetRootPosition(); |
166 | //wiki: llTriggerSound(string sound, double volume) | 174 | LSL_Rotation llGetRootRotation(); |
167 | void llTriggerSound(string sound, double volume); | 175 | LSL_Rotation llGetRot(); |
168 | //wiki: llStopSound() | 176 | LSL_Vector llGetScale(); |
169 | void llStopSound(); | 177 | LSL_String llGetScriptName(); |
170 | //wiki: llPreloadSound(string sound) | 178 | LSL_Integer llGetScriptState(string name); |
171 | void llPreloadSound(string sound); | 179 | LSL_String llGetSimulatorHostname(); |
172 | //wiki: string llGetSubString(string src, integer start, integer end) | 180 | LSL_Integer llGetStartParameter(); |
173 | string llGetSubString(string src, int start, int end); | 181 | LSL_Integer llGetStatus(int status); |
174 | //wiki: string llDeleteSubString(string src, integer start, integer end) | 182 | LSL_String llGetSubString(string src, int start, int end); |
175 | string llDeleteSubString(string src, int start, int end); | 183 | LSL_Vector llGetSunDirection(); |
176 | //wiki string llInsertString(string dst, integer position, string src) | 184 | LSL_String llGetTexture(int face); |
177 | string llInsertString(string dst, int position, string src); | 185 | LSL_Vector llGetTextureOffset(int face); |
178 | //wiki: string llToUpper(string source) | 186 | LSL_Float llGetTextureRot(int side); |
179 | string llToUpper(string source); | 187 | LSL_Vector llGetTextureScale(int side); |
180 | //wiki: string llToLower(string source) | 188 | LSL_Float llGetTime(); |
181 | string llToLower(string source); | 189 | LSL_Float llGetTimeOfDay(); |
182 | //wiki: integer llGiveMoney(key destination, integer amount) | 190 | LSL_String llGetTimestamp(); |
183 | LSL_Types.LSLInteger llGiveMoney(string destination, int amount); | 191 | LSL_Vector llGetTorque(); |
184 | //wiki: (deprecated) | 192 | LSL_Integer llGetUnixTime(); |
185 | void llMakeExplosion(); | 193 | LSL_Vector llGetVel(); |
186 | //wiki: (deprecated) | 194 | LSL_Float llGetWallclock(); |
187 | void llMakeFountain(); | 195 | void llGiveInventory(string destination, string inventory); |
188 | //wiki: (deprecated) | 196 | void llGiveInventoryList(string destination, string category, LSL_List inventory); |
189 | void llMakeSmoke(); | 197 | LSL_Integer llGiveMoney(string destination, int amount); |
190 | //wiki: (deprecated) | 198 | void llGodLikeRezObject(string inventory, LSL_Vector pos); |
191 | void llMakeFire(); | 199 | LSL_Float llGround(LSL_Vector offset); |
192 | //wiki: llRezObject(string inventory, vector pos, vector rel, rotation rot, integer param) | 200 | LSL_Vector llGroundContour(LSL_Vector offset); |
193 | void llRezObject(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param); | 201 | LSL_Vector llGroundNormal(LSL_Vector offset); |
194 | //wiki: llLookAt(vector target, double strength, double damping) | 202 | void llGroundRepel(double height, int water, double tau); |
195 | void llLookAt(LSL_Types.Vector3 target, double strength, double damping); | 203 | LSL_Vector llGroundSlope(LSL_Vector offset); |
196 | //wiki: llStopLookAt() | 204 | LSL_String llHTTPRequest(string url, LSL_List parameters, string body); |
197 | void llStopLookAt(); | 205 | LSL_String llInsertString(string dst, int position, string src); |
198 | //wiki: llSetTimerEvent(double sec) | 206 | void llInstantMessage(string user, string message); |
199 | void llSetTimerEvent(double sec); | 207 | LSL_String llIntegerToBase64(int number); |
200 | //wiki: llSleep(double sec) | 208 | LSL_String llKey2Name(string id); |
201 | void llSleep(double sec); | 209 | LSL_String llList2CSV(LSL_List src); |
202 | //wiki: double llGetMass() | 210 | LSL_Float llList2Float(LSL_List src, int index); |
203 | double llGetMass(); | 211 | LSL_Integer llList2Integer(LSL_List src, int index); |
204 | //wiki: llCollisionFilter(string name, key id, integer accept) | 212 | LSL_Key llList2Key(LSL_List src, int index); |
205 | void llCollisionFilter(string name, string id, int accept); | 213 | LSL_List llList2List(LSL_List src, int start, int end); |
206 | //wiki: llTakeControls(integer controls, integer accept, integer pass_on) | 214 | LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride); |
207 | void llTakeControls(int controls, int accept, int pass_on); | 215 | LSL_Rotation llList2Rot(LSL_List src, int index); |
208 | //wiki: llReleaseControls() | 216 | LSL_String llList2String(LSL_List src, int index); |
209 | void llReleaseControls(); | 217 | LSL_Vector llList2Vector(LSL_List src, int index); |
210 | //wiki: llAttachToAvatar(integer attachment) | 218 | LSL_Integer llListen(int channelID, string name, string ID, string msg); |
211 | void llAttachToAvatar(int attachment); | 219 | void llListenControl(int number, int active); |
212 | //wiki: llDetachFromAvatar() | 220 | void llListenRemove(int number); |
213 | void llDetachFromAvatar(); | 221 | LSL_Integer llListFindList(LSL_List src, LSL_List test); |
214 | //wiki: (deprecated) llTakeCamera(key avatar) | 222 | LSL_List llListInsertList(LSL_List dest, LSL_List src, int start); |
215 | void llTakeCamera(string avatar); | 223 | LSL_List llListRandomize(LSL_List src, int stride); |
216 | //wiki: (deprecated) llReleaseCamera(key avatar) | 224 | LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end); |
217 | void llReleaseCamera(string avatar); | 225 | LSL_List llListSort(LSL_List src, int stride, int ascending); |
218 | //wiki: key llGetOwner() | 226 | LSL_Float llListStatistics(int operation, LSL_List src); |
219 | string llGetOwner(); | 227 | void llLoadURL(string avatar_id, string message, string url); |
220 | //wiki: llInstantMessage(key user, string message) | 228 | LSL_Float llLog(double val); |
221 | void llInstantMessage(string user, string message); | 229 | LSL_Float llLog10(double val); |
222 | //wiki: llEmail(string address, string subject, string message) | 230 | void llLookAt(LSL_Vector target, double strength, double damping); |
223 | void llEmail(string address, string subject, string message); | 231 | void llLoopSound(string sound, double volume); |
224 | //wiki: llGetNextEmail(string address, string subject) | 232 | void llLoopSoundMaster(string sound, double volume); |
225 | void llGetNextEmail(string address, string subject); | 233 | void llLoopSoundSlave(string sound, double volume); |
226 | //wiki: key llGetKey() | 234 | void llMakeExplosion(); |
227 | string llGetKey(); | 235 | void llMakeFire(); |
228 | //wiki: llSetBuoyancy(double buoyancy) | 236 | void llMakeFountain(); |
229 | void llSetBuoyancy(double buoyancy); | 237 | void llMakeSmoke(); |
230 | //wiki: llSetHoverHeight(double height, integer water, double tau) | 238 | void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at); |
231 | void llSetHoverHeight(double height, int water, double tau); | 239 | LSL_String llMD5String(string src, int nonce); |
232 | //wiki: llStopHover | 240 | void llMessageLinked(int linknum, int num, string str, string id); |
233 | void llStopHover(); | 241 | void llMinEventDelay(double delay); |
234 | //wiki: llMinEventDelay(double delay) | 242 | void llModifyLand(int action, int brush); |
235 | void llMinEventDelay(double delay); | 243 | LSL_Integer llModPow(int a, int b, int c); |
236 | //wiki: (deprecated) llSoundPreload() | 244 | void llMoveToTarget(LSL_Vector target, double tau); |
237 | void llSoundPreload(); | 245 | void llOffsetTexture(double u, double v, int face); |
238 | //wiki: llRotLookAt(rotation target, double strength, double damping) | 246 | void llOpenRemoteDataChannel(); |
239 | void llRotLookAt(LSL_Types.Quaternion target, double strength, double damping); | 247 | LSL_Integer llOverMyLand(string id); |
240 | //wiki: integer llStringLength(string str) | 248 | void llOwnerSay(string msg); |
241 | LSL_Types.LSLInteger llStringLength(string str); | 249 | void llParcelMediaCommandList(LSL_List commandList); |
242 | //wiki: llStartAnimation(string anim) | 250 | LSL_List llParcelMediaQuery(LSL_List aList); |
243 | void llStartAnimation(string anim); | 251 | LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers); |
244 | //wiki: llStopAnimation(string anim) | 252 | LSL_List llParseStringKeepNulls(string src, LSL_List seperators, LSL_List spacers); |
245 | void llStopAnimation(string anim); | 253 | void llParticleSystem(LSL_List rules); |
246 | //wiki: (deprecated) llPointAt | 254 | void llPassCollisions(int pass); |
247 | void llPointAt(); | 255 | void llPassTouches(int pass); |
248 | //wiki: (deprecated) llStopPointAt | 256 | void llPlaySound(string sound, double volume); |
249 | void llStopPointAt(); | 257 | void llPlaySoundSlave(string sound, double volume); |
250 | //wiki: llTargetOmega(vector axis, double spinrate, double gain) | 258 | void llPointAt(); |
251 | void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain); | 259 | LSL_Float llPow(double fbase, double fexponent); |
252 | //wiki: integer llGetStartParameter() | 260 | void llPreloadSound(string sound); |
253 | LSL_Types.LSLInteger llGetStartParameter(); | 261 | void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local); |
254 | //wiki: llGodLikeRezObject(key inventory, vector pos) | 262 | void llRefreshPrimURL(); |
255 | void llGodLikeRezObject(string inventory, LSL_Types.Vector3 pos); | 263 | void llRegionSay(int channelID, string text); |
256 | //wiki: llRequestPermissions(key agent, integer perm) | 264 | void llReleaseCamera(string avatar); |
257 | void llRequestPermissions(string agent, int perm); | 265 | void llReleaseControls(); |
258 | //wiki: key llGetPermissionsKey() | 266 | void llRemoteDataReply(string channel, string message_id, string sdata, int idata); |
259 | string llGetPermissionsKey(); | 267 | void llRemoteDataSetRegion(); |
260 | //wiki: integer llGetPermissions() | 268 | void llRemoteLoadScript(); |
261 | LSL_Types.LSLInteger llGetPermissions(); | 269 | void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param); |
262 | //wiki integer llGetLinkNumber() | 270 | void llRemoveFromLandBanList(string avatar); |
263 | LSL_Types.LSLInteger llGetLinkNumber(); | 271 | void llRemoveFromLandPassList(string avatar); |
264 | //wiki: llSetLinkColor(integer linknumber, vector color, integer face) | 272 | void llRemoveInventory(string item); |
265 | void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face); | 273 | void llRemoveVehicleFlags(int flags); |
266 | //wiki: llCreateLink(key target, integer parent) | 274 | LSL_Key llRequestAgentData(string id, int data); |
267 | void llCreateLink(string target, int parent); | 275 | LSL_Key llRequestInventoryData(string name); |
268 | //wiki: llBreakLink(integer linknum) | 276 | void llRequestPermissions(string agent, int perm); |
269 | void llBreakLink(int linknum); | 277 | LSL_Key llRequestSimulatorData(string simulator, int data); |
270 | //wiki: llBreakAllLinks() | 278 | void llResetLandBanList(); |
271 | void llBreakAllLinks(); | 279 | void llResetLandPassList(); |
272 | //wiki: key llGetLinkKey(integer linknum) | 280 | void llResetOtherScript(string name); |
273 | string llGetLinkKey(int linknum); | 281 | void llResetScript(); |
274 | //wiki: llGetLinkName(integer linknum) | 282 | void llResetTime(); |
275 | string llGetLinkName(int linknum); | 283 | void llRezAtRoot(string inventory, LSL_Vector position, LSL_Vector velocity, LSL_Rotation rot, int param); |
276 | //wiki: integer llGetInventoryNumber(integer type) | 284 | void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param); |
277 | LSL_Types.LSLInteger llGetInventoryNumber(int type); | 285 | LSL_Float llRot2Angle(LSL_Rotation rot); |
278 | //wiki: string llGetInventoryName(integer type, integer number) | 286 | LSL_Vector llRot2Axis(LSL_Rotation rot); |
279 | string llGetInventoryName(int type, int number); | 287 | LSL_Vector llRot2Euler(LSL_Rotation r); |
280 | //wiki: llSetScriptState(string name, integer run) | 288 | LSL_Vector llRot2Fwd(LSL_Rotation r); |
281 | void llSetScriptState(string name, int run); | 289 | LSL_Vector llRot2Left(LSL_Rotation r); |
282 | //wiki: double llGetEnergy() | 290 | LSL_Vector llRot2Up(LSL_Rotation r); |
283 | double llGetEnergy(); | 291 | void llRotateTexture(double rotation, int face); |
284 | //wiki: llGiveInventory(key destination, string inventory) | 292 | LSL_Rotation llRotBetween(LSL_Vector start, LSL_Vector end); |
285 | void llGiveInventory(string destination, string inventory); | 293 | void llRotLookAt(LSL_Rotation target, double strength, double damping); |
286 | //wiki: llRemoveInventory(string item) | 294 | LSL_Integer llRotTarget(LSL_Rotation rot, double error); |
287 | void llRemoveInventory(string item); | 295 | void llRotTargetRemove(int number); |
288 | //wiki: llSetText(string text, vector color, double alpha) | 296 | LSL_Integer llRound(double f); |
289 | void llSetText(string text, LSL_Types.Vector3 color, double alpha); | 297 | LSL_Integer llSameGroup(string agent); |
290 | //wiki: double llWater(vector offset) | 298 | void llSay(int channelID, string text); |
291 | double llWater(LSL_Types.Vector3 offset); | 299 | void llScaleTexture(double u, double v, int face); |
292 | //wiki: llPassTouches(integer pass) | 300 | LSL_Integer llScriptDanger(LSL_Vector pos); |
293 | void llPassTouches(int pass); | 301 | LSL_Key llSendRemoteData(string channel, string dest, int idata, string sdata); |
294 | //wiki: key llRequestAgentData(key id, integer data) | 302 | void llSensor(string name, string id, int type, double range, double arc); |
295 | string llRequestAgentData(string id, int data); | 303 | void llSensorRemove(); |
296 | //wiki: key llRequestInventoryData(string name) | 304 | void llSensorRepeat(string name, string id, int type, double range, double arc, double rate); |
297 | string llRequestInventoryData(string name); | 305 | void llSetAlpha(double alpha, int face); |
298 | //wiki: llSetDamage(double damage) | 306 | void llSetBuoyancy(double buoyancy); |
299 | void llSetDamage(double damage); | 307 | void llSetCameraAtOffset(LSL_Vector offset); |
300 | //wiki: llTeleportAgentHome(key agent) | 308 | void llSetCameraEyeOffset(LSL_Vector offset); |
301 | void llTeleportAgentHome(string agent); | 309 | void llSetCameraParams(LSL_List rules); |
302 | //wiki: llModifyLand(integer action, integer brush) | 310 | void llSetClickAction(int action); |
303 | void llModifyLand(int action, int brush); | 311 | void llSetColor(LSL_Vector color, int face); |
304 | //wiki: llCollisionSound(string impact_sound, double impact_volume) | 312 | void llSetDamage(double damage); |
305 | void llCollisionSound(string impact_sound, double impact_volume); | 313 | void llSetForce(LSL_Vector force, int local); |
306 | //wiki: llCollisionSprite(string impact_sprite) | 314 | void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local); |
307 | void llCollisionSprite(string impact_sprite); | 315 | void llSetHoverHeight(double height, int water, double tau); |
308 | //wiki: string llGetAnimation(key id) | 316 | void llSetInventoryPermMask(string item, int mask, int value); |
309 | string llGetAnimation(string id); | 317 | void llSetLinkAlpha(int linknumber, double alpha, int face); |
310 | //wiki: llResetScript() | 318 | void llSetLinkColor(int linknumber, LSL_Vector color, int face); |
311 | void llResetScript(); | 319 | void llSetLinkPrimitiveParams(int linknumber, LSL_List rules); |
312 | //wiki: llMessageLinked(integer linknum, integer num, string str, key id) | 320 | void llSetLinkTexture(int linknumber, string texture, int face); |
313 | void llMessageLinked(int linknum, int num, string str, string id); | 321 | void llSetLocalRot(LSL_Rotation rot); |
314 | //wiki: llPushObject(key target, vector impulse, vector ang_impulse, integer local) | 322 | void llSetObjectDesc(string desc); |
315 | void llPushObject(string target, LSL_Types.Vector3 impulse, LSL_Types.Vector3 ang_impulse, int local); | 323 | void llSetObjectName(string name); |
316 | //wiki: llPassCollisions(integer pass) | 324 | void llSetObjectPermMask(int mask, int value); |
317 | void llPassCollisions(int pass); | 325 | void llSetParcelMusicURL(string url); |
318 | //wiki: string llGetScriptName() | 326 | void llSetPayPrice(int price, LSL_List quick_pay_buttons); |
319 | string llGetScriptName(); | 327 | void llSetPos(LSL_Vector pos); |
320 | //wiki: integer llGetNumberOfSides() | 328 | void llSetPrimitiveParams(LSL_List rules); |
321 | LSL_Types.LSLInteger llGetNumberOfSides(); | 329 | void llSetPrimURL(); |
322 | //wiki: rotation llAxisAngle2Rot(vector axis, double angle) | 330 | void llSetRemoteScriptAccessPin(int pin); |
323 | LSL_Types.Quaternion llAxisAngle2Rot(LSL_Types.Vector3 axis, double angle); | 331 | void llSetRot(LSL_Rotation rot); |
324 | //wiki: vector llRot2Axis(rotation rot) | 332 | void llSetScale(LSL_Vector scale); |
325 | LSL_Types.Vector3 llRot2Axis(LSL_Types.Quaternion rot); | 333 | void llSetScriptState(string name, int run); |
326 | //wiki: double llRot2Angle(rotation rot); | 334 | void llSetSitText(string text); |
327 | double llRot2Angle(LSL_Types.Quaternion rot); | 335 | void llSetSoundQueueing(int queue); |
328 | //wiki: double llAcos(double val) | 336 | void llSetSoundRadius(double radius); |
329 | double llAcos(double val); | 337 | void llSetStatus(int status, int value); |
330 | //wiki: double llAsin(double val) | 338 | void llSetText(string text, LSL_Vector color, double alpha); |
331 | double llAsin(double val); | 339 | void llSetTexture(string texture, int face); |
332 | //wiki: double llAngleBetween(rotation a, rotation b) | 340 | void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate); |
333 | double llAngleBetween(LSL_Types.Quaternion a, LSL_Types.Quaternion b); | 341 | void llSetTimerEvent(double sec); |
334 | //wiki: string llGetInventoryKey(string name) | 342 | void llSetTorque(LSL_Vector torque, int local); |
335 | string llGetInventoryKey(string name); | 343 | void llSetTouchText(string text); |
336 | //wiki: llAllowInventoryDrop(integer add) | 344 | void llSetVehicleFlags(int flags); |
337 | void llAllowInventoryDrop(int add); | 345 | void llSetVehicleFloatParam(int param, float value); |
338 | //wiki: vector llGetSunDirection() | 346 | void llSetVehicleRotationParam(int param, LSL_Rotation rot); |
339 | LSL_Types.Vector3 llGetSunDirection(); | 347 | void llSetVehicleType(int type); |
340 | //wiki: vector llGetTextureOffset(integer face) | 348 | void llSetVehicleVectorParam(int param, LSL_Vector vec); |
341 | LSL_Types.Vector3 llGetTextureOffset(int face); | 349 | void llShout(int channelID, string text); |
342 | //wiki: vector llGetTextureScale(integer side) | 350 | LSL_Float llSin(double f); |
343 | LSL_Types.Vector3 llGetTextureScale(int side); | 351 | void llSitTarget(LSL_Vector offset, LSL_Rotation rot); |
344 | //wiki: double llGetTextureRot(integer side) | 352 | void llSleep(double sec); |
345 | double llGetTextureRot(int side); | 353 | void llSound(); |
346 | //wiki: integer llSubStringIndex(string source, string pattern) | 354 | void llSoundPreload(); |
347 | LSL_Types.LSLInteger llSubStringIndex(string source, string pattern); | 355 | LSL_Float llSqrt(double f); |
348 | //wiki: key llGetOwnerKey(key id) | 356 | void llStartAnimation(string anim); |
349 | string llGetOwnerKey(string id); | 357 | void llStopAnimation(string anim); |
350 | //wiki: vector llGetCenterOfMass() | 358 | void llStopHover(); |
351 | LSL_Types.Vector3 llGetCenterOfMass(); | 359 | void llStopLookAt(); |
352 | //wiki: list llListSort(list src, integer stride, integer ascending) | 360 | void llStopMoveToTarget(); |
353 | LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending); | 361 | void llStopPointAt(); |
354 | //integer llGetListLength(list src) | 362 | void llStopSound(); |
355 | LSL_Types.LSLInteger llGetListLength(LSL_Types.list src); | 363 | LSL_Integer llStringLength(string str); |
356 | //wiki: integer llList2Integer(list src, integer index) | 364 | LSL_String llStringToBase64(string str); |
357 | LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index); | 365 | LSL_String llStringTrim(string src, int type); |
358 | //wiki: double llList2double(list src, integer index) | 366 | LSL_Integer llSubStringIndex(string source, string pattern); |
359 | double llList2Float(LSL_Types.list src, int index); | 367 | void llTakeCamera(string avatar); |
360 | double osList2Double(LSL_Types.list src, int index); | 368 | void llTakeControls(int controls, int accept, int pass_on); |
361 | //wiki: string llList2String(list src, integer index) | 369 | LSL_Float llTan(double f); |
362 | string llList2String(LSL_Types.list src, int index); | 370 | LSL_Integer llTarget(LSL_Vector position, double range); |
363 | //wiki: key llList2Key(list src, integer index) | 371 | void llTargetOmega(LSL_Vector axis, double spinrate, double gain); |
364 | string llList2Key(LSL_Types.list src, int index); | 372 | void llTargetRemove(int number); |
365 | //wiki: vector llList2Vector(list src, integer index) | 373 | void llTeleportAgentHome(string agent); |
366 | LSL_Types.Vector3 llList2Vector(LSL_Types.list src, int index); | 374 | void llTextBox(string avatar, string message, int chat_channel); |
367 | //wiki rotation llList2Rot(list src, integer index) | 375 | LSL_String llToLower(string source); |
368 | LSL_Types.Quaternion llList2Rot(LSL_Types.list src, int index); | 376 | LSL_String llToUpper(string source); |
369 | //wiki: list llList2List(list src, integer start, integer end) | 377 | void llTriggerSound(string sound, double volume); |
370 | LSL_Types.list llList2List(LSL_Types.list src, int start, int end); | 378 | void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, LSL_Vector bottom_south_west); |
371 | //wiki: llDeleteSubList(list src, integer start, integer end) | 379 | LSL_String llUnescapeURL(string url); |
372 | LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end); | 380 | void llUnSit(string id); |
373 | //wiki: integer llGetListEntryType(list src, integer index) | 381 | LSL_Float llVecDist(LSL_Vector a, LSL_Vector b); |
374 | LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index); | 382 | LSL_Float llVecMag(LSL_Vector v); |
375 | //wiki: string llList2CSV(list src) | 383 | LSL_Vector llVecNorm(LSL_Vector v); |
376 | string llList2CSV(LSL_Types.list src); | 384 | void llVolumeDetect(int detect); |
377 | //wiki: list llCSV2List(string src) | 385 | LSL_Float llWater(LSL_Vector offset); |
378 | LSL_Types.list llCSV2List(string src); | 386 | void llWhisper(int channelID, string text); |
379 | //wiki: list llListRandomize(list src, integer stride) | 387 | LSL_Vector llWind(LSL_Vector offset); |
380 | LSL_Types.list llListRandomize(LSL_Types.list src, int stride); | 388 | void llXorBase64Strings(); |
381 | //wiki: list llList2ListStrided(list src, integer start, integer end, integer stride) | 389 | LSL_String llXorBase64StringsCorrect(string str1, string str2); |
382 | LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride); | ||
383 | //wiki: vector llGetRegionCorner() | ||
384 | LSL_Types.Vector3 llGetRegionCorner(); | ||
385 | //wiki: list llListInsertList(list dest, list src, integer start) | ||
386 | LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int start); | ||
387 | //wiki: integer llListFindList(list src, list test) | ||
388 | LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test); | ||
389 | //wiki: string llGetObjectName() | ||
390 | string llGetObjectName(); | ||
391 | //wiki: llSetObjectName(string name) | ||
392 | void llSetObjectName(string name); | ||
393 | //wiki: string llGetDate() | ||
394 | string llGetDate(); | ||
395 | //wiki: integer llEdgeOfWorld(vector pos, vector dir) | ||
396 | LSL_Types.LSLInteger llEdgeOfWorld(LSL_Types.Vector3 pos, LSL_Types.Vector3 dir); | ||
397 | //wiki: integer llGetAgentInfo(key id) | ||
398 | LSL_Types.LSLInteger llGetAgentInfo(string id); | ||
399 | //wiki: llAdjustSoundVolume(double volume) | ||
400 | void llAdjustSoundVolume(double volume); | ||
401 | //wiki: llSetSoundQueueing(integer queue) | ||
402 | void llSetSoundQueueing(int queue); | ||
403 | //wiki: llSetSoundRadius(double radius) | ||
404 | void llSetSoundRadius(double radius); | ||
405 | //wiki: string llKey2Name(key id) | ||
406 | string llKey2Name(string id); | ||
407 | //wiki: llSetTextureAnim(integer mode, integer face, integer sizex, integer sizey, double start, double length, double rate) | ||
408 | void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate); | ||
409 | //wiki: llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west) | ||
410 | void llTriggerSoundLimited(string sound, double volume, LSL_Types.Vector3 top_north_east, | ||
411 | LSL_Types.Vector3 bottom_south_west); | ||
412 | |||
413 | //wiki: llEjectFromLand(key pest) | ||
414 | void llEjectFromLand(string pest); | ||
415 | LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers); | ||
416 | //wiki: integer llOverMyLand(key id) | ||
417 | LSL_Types.LSLInteger llOverMyLand(string id); | ||
418 | //wiki: key llGetLandOwnerAt(vector pos) | ||
419 | string llGetLandOwnerAt(LSL_Types.Vector3 pos); | ||
420 | //wiki: key llGetNotecardLine(string name, integer line) | ||
421 | string llGetNotecardLine(string name, int line); | ||
422 | //wiki: vector llGetAgentSize(key id) | ||
423 | LSL_Types.Vector3 llGetAgentSize(string id); | ||
424 | //wiki: integer llSameGroup(key agent) | ||
425 | LSL_Types.LSLInteger llSameGroup(string agent); | ||
426 | //wiki: llUnSit(key id) | ||
427 | void llUnSit(string id); | ||
428 | //wiki: vector llGroundSlope(vector offset) | ||
429 | LSL_Types.Vector3 llGroundSlope(LSL_Types.Vector3 offset); | ||
430 | //wiki: vector llGroundNormal(vector offset) | ||
431 | LSL_Types.Vector3 llGroundNormal(LSL_Types.Vector3 offset); | ||
432 | //wiki: vector llGroundContour(vector offset) | ||
433 | LSL_Types.Vector3 llGroundContour(LSL_Types.Vector3 offset); | ||
434 | //wiki: integer llGetAttached() | ||
435 | LSL_Types.LSLInteger llGetAttached(); | ||
436 | //wiki: integer llGetFreeMemory() | ||
437 | LSL_Types.LSLInteger llGetFreeMemory(); | ||
438 | //wiki: string llGetRegionName() | ||
439 | string llGetRegionName(); | ||
440 | //wiki: double llGetRegionTimeDilation() | ||
441 | double llGetRegionTimeDilation(); | ||
442 | //wiki: double llGetRegionFPS() | ||
443 | double llGetRegionFPS(); | ||
444 | //wiki: llParticleSystem(List<Object> rules | ||
445 | void llParticleSystem(LSL_Types.list rules); | ||
446 | //wiki: llGroundRepel(double height, integer water, double tau) | ||
447 | void llGroundRepel(double height, int water, double tau); | ||
448 | //wiki: llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | ||
449 | void llGiveInventoryList(string destination, string category, LSL_Types.list inventory); | ||
450 | //wiki: llSetVehicleType(integer type) | ||
451 | void llSetVehicleType(int type); | ||
452 | //wiki: llSetVehicledoubleParam(integer param, double value) | ||
453 | void llSetVehicledoubleParam(int param, double value); | ||
454 | // wiki: llSetVehicleFloatParam(integer param, float value) | ||
455 | void llSetVehicleFloatParam(int param, float value); | ||
456 | //wiki: llSetVehicleVectorParam(integer param, vector vec) | ||
457 | void llSetVehicleVectorParam(int param, LSL_Types.Vector3 vec); | ||
458 | //wiki: llSetVehicleRotationParam(integer param, rotation rot) | ||
459 | void llSetVehicleRotationParam(int param, LSL_Types.Quaternion rot); | ||
460 | //wiki: llSetVehicleFlags(integer flags) | ||
461 | void llSetVehicleFlags(int flags); | ||
462 | //wiki: llRemoveVehicleFlags(integer flags) | ||
463 | void llRemoveVehicleFlags(int flags); | ||
464 | //wiki: llSitTarget(vector offset, rotation rot) | ||
465 | void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot); | ||
466 | //wiki key llAvatarOnSitTarget() | ||
467 | string llAvatarOnSitTarget(); | ||
468 | //wiki: llAddToLandPassList(key avatar, double hours) | ||
469 | void llAddToLandPassList(string avatar, double hours); | ||
470 | //wiki: llSetTouchText(string text) | ||
471 | void llSetTouchText(string text); | ||
472 | //wiki: llSetSitText(string text) | ||
473 | void llSetSitText(string text); | ||
474 | //wiki: llSetCameraEyeOffset(vector offset) | ||
475 | void llSetCameraEyeOffset(LSL_Types.Vector3 offset); | ||
476 | //wiki: llSeteCameraAtOffset(vector offset) | ||
477 | void llSetCameraAtOffset(LSL_Types.Vector3 offset); | ||
478 | // | ||
479 | string llDumpList2String(LSL_Types.list src, string seperator); | ||
480 | //wiki: integer llScriptDanger(vector pos) | ||
481 | LSL_Types.LSLInteger llScriptDanger(LSL_Types.Vector3 pos); | ||
482 | //wiki: llDialog(key avatar, string message, list buttons, integer chat_channel) | ||
483 | void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel); | ||
484 | //wiki: llVolumeDetect(integer detect) | ||
485 | void llVolumeDetect(int detect); | ||
486 | //wiki: llResetOtherScript(string name) | ||
487 | void llResetOtherScript(string name); | ||
488 | //wiki: integer llGetScriptState(string name) | ||
489 | LSL_Types.LSLInteger llGetScriptState(string name); | ||
490 | //wiki: (deprecated) | ||
491 | void llRemoteLoadScript(); | ||
492 | //wiki: llSetRemoteScriptAccessPin(integer pin) | ||
493 | void llSetRemoteScriptAccessPin(int pin); | ||
494 | //wiki: llRemoteLoadScriptPin(key target, string name, integer pin, integer running, integer start_param) | ||
495 | void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param); | ||
496 | //wiki: llOpenRemoteDataChannel() | ||
497 | void llOpenRemoteDataChannel(); | ||
498 | //wiki: key llSendRemoteData(key channel, string dest, integer idata, string sdata) | ||
499 | string llSendRemoteData(string channel, string dest, int idata, string sdata); | ||
500 | //wiki: llRemoteDataReply(key channel, key message_id, string sdata, integer idata) | ||
501 | void llRemoteDataReply(string channel, string message_id, string sdata, int idata); | ||
502 | //wiki: llCloseRemoteDataChannel(key channel) | ||
503 | void llCloseRemoteDataChannel(string channel); | ||
504 | //wiki: string llMD5String(string src, integer nonce) | ||
505 | string llMD5String(string src, int nonce); | ||
506 | //wiki: llSetPrimitiveParams(list rules) | ||
507 | void llSetPrimitiveParams(LSL_Types.list rules); | ||
508 | //wiki: llSetLinkPrimitiveParams(integer linknumber, list rules) | ||
509 | void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules); | ||
510 | //wiki: string llStringToBase64(string str) | ||
511 | string llStringToBase64(string str); | ||
512 | //wiki: string llBase64ToString(string str) | ||
513 | string llBase64ToString(string str); | ||
514 | //wiki: (deprecated) | ||
515 | void llXorBase64Strings(); | ||
516 | //wiki: llRemoteDataSetRegion() | ||
517 | void llRemoteDataSetRegion(); | ||
518 | //wiki: double llLog10(double val) | ||
519 | double llLog10(double val); | ||
520 | //wiki: double llLog(double val) | ||
521 | double llLog(double val); | ||
522 | //wiki: list llGetAnimationList(key id) | ||
523 | LSL_Types.list llGetAnimationList(string id); | ||
524 | //wiki: llSetParcelMusicURL(string url) | ||
525 | void llSetParcelMusicURL(string url); | ||
526 | //wiki: vector llGetRootPosition() | ||
527 | LSL_Types.Vector3 llGetRootPosition(); | ||
528 | //wiki: rotation llGetRootRotation() | ||
529 | LSL_Types.Quaternion llGetRootRotation(); | ||
530 | //wiki: string llGetObjectDesc() | ||
531 | string llGetObjectDesc(); | ||
532 | //wiki: llSetObjectDesc(string desc) | ||
533 | void llSetObjectDesc(string desc); | ||
534 | //wiki: key llGetCreator() | ||
535 | string llGetCreator(); | ||
536 | //wiki: string llGetTimestamp() | ||
537 | string llGetTimestamp(); | ||
538 | //wiki: llSetLinkAlpha(integer linknumber, double alpha, integer face) | ||
539 | void llSetLinkAlpha(int linknumber, double alpha, int face); | ||
540 | //wiki: integer llGetNumberOfPrims() | ||
541 | LSL_Types.LSLInteger llGetNumberOfPrims(); | ||
542 | //wiki: key llGetNumberOfNotecardLines(string name) | ||
543 | string llGetNumberOfNotecardLines(string name); | ||
544 | //wiki: list llGetBoundingBox(key object) | ||
545 | LSL_Types.list llGetBoundingBox(string obj); | ||
546 | //wiki: vector llGetGeometricCenter() | ||
547 | LSL_Types.Vector3 llGetGeometricCenter(); | ||
548 | //wiki: list llGetPrimitiveParams(list rules) | ||
549 | LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules); | ||
550 | //wiki: string llIntegerToBase64(integer number) | ||
551 | string llIntegerToBase64(int number); | ||
552 | //wiki integer llBase64ToInteger(string str) | ||
553 | LSL_Types.LSLInteger llBase64ToInteger(string str); | ||
554 | //wiki: double llGetGMTclock() | ||
555 | double llGetGMTclock(); | ||
556 | //wiki: string llGetSimulatorHostname() | ||
557 | string llGetSimulatorHostname(); | ||
558 | //llSetLocalRot(rotation rot) | ||
559 | void llSetLocalRot(LSL_Types.Quaternion rot); | ||
560 | //wiki: list llParseStringKeepNulls(string src, list separators, list spacers) | ||
561 | LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list seperators, LSL_Types.list spacers); | ||
562 | //wiki: llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, integer param) | ||
563 | void llRezAtRoot(string inventory, LSL_Types.Vector3 position, LSL_Types.Vector3 velocity, | ||
564 | LSL_Types.Quaternion rot, int param); | ||
565 | |||
566 | //wiki: integer llGetObjectPermMask(integer mask) | ||
567 | LSL_Types.LSLInteger llGetObjectPermMask(int mask); | ||
568 | //wiki: llSetObjectPermMask(integer mask, integer value) | ||
569 | void llSetObjectPermMask(int mask, int value); | ||
570 | //wiki integer llGetInventoryPermMask(string item, integer mask) | ||
571 | LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask); | ||
572 | //wiki: llSetInventoryPermMask(string item, integer mask, integer value) | ||
573 | void llSetInventoryPermMask(string item, int mask, int value); | ||
574 | //wiki: key llGetInventoryCreator(string item) | ||
575 | string llGetInventoryCreator(string item); | ||
576 | //wiki: llOwnerSay(string msg) | ||
577 | void llOwnerSay(string msg); | ||
578 | //wiki: key llRequestSimulatorData(string simulator, integer data) | ||
579 | string llRequestSimulatorData(string simulator, int data); | ||
580 | //wiki: llForceMouselook(integer mouselook) | ||
581 | void llForceMouselook(int mouselook); | ||
582 | //wiki: double llGetObjectMass(key id) | ||
583 | double llGetObjectMass(string id); | ||
584 | LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end); | ||
585 | //wiki: llLoadURL(key avatar_id, string message, string url) | ||
586 | void llLoadURL(string avatar_id, string message, string url); | ||
587 | //wiki: llParcelMediaCommandList(list commandList) | ||
588 | void llParcelMediaCommandList(LSL_Types.list commandList); | ||
589 | LSL_Types.list llParcelMediaQuery(LSL_Types.list aList); | ||
590 | //wiki integer llModPow(integer a, integer b, integer c) | ||
591 | LSL_Types.LSLInteger llModPow(int a, int b, int c); | ||
592 | //wiki: integer llGetInventoryType(string name) | ||
593 | LSL_Types.LSLInteger llGetInventoryType(string name); | ||
594 | //wiki: llSetPayPrice(integer price, list quick_pay_buttons) | ||
595 | void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons); | ||
596 | //wiki: vector llGetCameraPos() | ||
597 | LSL_Types.Vector3 llGetCameraPos(); | ||
598 | //wiki rotation llGetCameraRot() | ||
599 | LSL_Types.Quaternion llGetCameraRot(); | ||
600 | //wiki: (deprecated) | ||
601 | void llSetPrimURL(); | ||
602 | //wiki: (deprecated) | ||
603 | void llRefreshPrimURL(); | ||
604 | //wiki: string llEscapeURL(string url) | ||
605 | string llEscapeURL(string url); | ||
606 | //wiki: string llUnescapeURL(string url) | ||
607 | string llUnescapeURL(string url); | ||
608 | //wiki: llMapDestination(string simname, vector pos, vector look_at) | ||
609 | void llMapDestination(string simname, LSL_Types.Vector3 pos, LSL_Types.Vector3 look_at); | ||
610 | //wiki: llAddToLandBanList(key avatar, double hours) | ||
611 | void llAddToLandBanList(string avatar, double hours); | ||
612 | //wiki: llRemoveFromLandPassList(key avatar) | ||
613 | void llRemoveFromLandPassList(string avatar); | ||
614 | //wiki: llRemoveFromLandBanList(key avatar) | ||
615 | void llRemoveFromLandBanList(string avatar); | ||
616 | //wiki: llSetCameraParams(list rules) | ||
617 | void llSetCameraParams(LSL_Types.list rules); | ||
618 | //wiki: llClearCameraParams() | ||
619 | void llClearCameraParams(); | ||
620 | //wiki: double llListStatistics(integer operation, list src) | ||
621 | double llListStatistics(int operation, LSL_Types.list src); | ||
622 | //wiki: integer llGetUnixTime() | ||
623 | LSL_Types.LSLInteger llGetUnixTime(); | ||
624 | //wiki: integer llGetParcelFlags(vector pos) | ||
625 | LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos); | ||
626 | //wiki: integer llGetRegionFlags() | ||
627 | LSL_Types.LSLInteger llGetRegionFlags(); | ||
628 | //wiki: string llXorBase64StringsCorrect(string str1, string str2) | ||
629 | string llXorBase64StringsCorrect(string str1, string str2); | ||
630 | string llHTTPRequest(string url, LSL_Types.list parameters, string body); | ||
631 | //wiki: llResetLandBanList() | ||
632 | void llResetLandBanList(); | ||
633 | //wiki: llResetLandPassList() | ||
634 | void llResetLandPassList(); | ||
635 | //wiki: integer llGetParcelPrimCount(vector pos, integer category, integer sim_wide) | ||
636 | LSL_Types.LSLInteger llGetParcelPrimCount(LSL_Types.Vector3 pos, int category, int sim_wide); | ||
637 | //wiki: list llGetParcelPrimOwners(vector pos) | ||
638 | LSL_Types.list llGetParcelPrimOwners(LSL_Types.Vector3 pos); | ||
639 | //wiki: integer llGetObjectPrimCount(key object_id) | ||
640 | LSL_Types.LSLInteger llGetObjectPrimCount(string object_id); | ||
641 | //wiki: integer llGetParcelMaxPrims(vector pos, integer sim_wide) | ||
642 | LSL_Types.LSLInteger llGetParcelMaxPrims(LSL_Types.Vector3 pos, int sim_wide); | ||
643 | //wiki: llGetParcelDetails(vector pos, list params) | ||
644 | LSL_Types.list llGetParcelDetails(LSL_Types.Vector3 pos, LSL_Types.list param); | ||
645 | //wiki: llSetLinkTexture(integer linknumber, string texture, integer face) | ||
646 | void llSetLinkTexture(int linknumber, string texture, int face); | ||
647 | //wiki: string llStringTrim(string src, int type) | ||
648 | string llStringTrim(string src, int type); | ||
649 | //wiki: LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | ||
650 | LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args); | ||
651 | |||
652 | void osSetRegionWaterHeight(double height); | ||
653 | } | 390 | } |
654 | } | 391 | } |
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs index bff2101..21646ea 100644 --- a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs | |||
@@ -123,7 +123,7 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
123 | 123 | ||
124 | Vector3 vector = (Vector3)o; | 124 | Vector3 vector = (Vector3)o; |
125 | 125 | ||
126 | return (x == vector.x && y == vector.y && z == vector.y); | 126 | return (x == vector.x && y == vector.y && z == vector.z); |
127 | } | 127 | } |
128 | 128 | ||
129 | public static Vector3 operator -(Vector3 vector) | 129 | public static Vector3 operator -(Vector3 vector) |
@@ -419,6 +419,80 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
419 | m_data=new Object[0]; | 419 | m_data=new Object[0]; |
420 | return m_data; | 420 | return m_data; |
421 | } | 421 | } |
422 | |||
423 | set {m_data = value; } | ||
424 | } | ||
425 | |||
426 | // Member functions to obtain item as specific types. | ||
427 | // For cases where implicit conversions would apply if items | ||
428 | // were not in a list (e.g. integer to float, but not float | ||
429 | // to integer) functions check for alternate types so as to | ||
430 | // down-cast from Object to the correct type. | ||
431 | // Note: no checks for item index being valid are performed | ||
432 | |||
433 | public LSL_Types.LSLFloat GetLSLFloatItem( int itemIndex ) | ||
434 | { | ||
435 | if (m_data[itemIndex] is LSL_Types.LSLInteger) | ||
436 | { | ||
437 | return (LSL_Types.LSLInteger)m_data[itemIndex]; | ||
438 | } | ||
439 | else if (m_data[itemIndex] is Int32) | ||
440 | { | ||
441 | return new LSL_Types.LSLFloat((int)m_data[itemIndex]); | ||
442 | } | ||
443 | else if (m_data[itemIndex] is float) | ||
444 | { | ||
445 | return new LSL_Types.LSLFloat((float)m_data[itemIndex]); | ||
446 | } | ||
447 | else if (m_data[itemIndex] is Double) | ||
448 | { | ||
449 | return new LSL_Types.LSLFloat((Double)m_data[itemIndex]); | ||
450 | } | ||
451 | else | ||
452 | { | ||
453 | return (LSL_Types.LSLFloat)m_data[itemIndex]; | ||
454 | } | ||
455 | } | ||
456 | |||
457 | public LSL_Types.LSLString GetLSLStringItem(int itemIndex) | ||
458 | { | ||
459 | if (m_data[itemIndex] is LSL_Types.key) | ||
460 | { | ||
461 | return (LSL_Types.key)m_data[itemIndex]; | ||
462 | } | ||
463 | else if (m_data[itemIndex] is String) | ||
464 | { | ||
465 | return new LSL_Types.LSLString((string)m_data[itemIndex]); | ||
466 | } | ||
467 | else | ||
468 | { | ||
469 | return (LSL_Types.LSLString)m_data[itemIndex]; | ||
470 | } | ||
471 | } | ||
472 | |||
473 | public LSL_Types.LSLInteger GetLSLIntegerItem(int itemIndex) | ||
474 | { | ||
475 | if (m_data[itemIndex] is LSL_Types.LSLInteger) | ||
476 | return (LSL_Types.LSLInteger)m_data[itemIndex]; | ||
477 | else if (m_data[itemIndex] is Int32) | ||
478 | return new LSLInteger((int)m_data[itemIndex]); | ||
479 | else | ||
480 | throw new InvalidCastException(); | ||
481 | } | ||
482 | |||
483 | public LSL_Types.Vector3 GetVector3Item(int itemIndex) | ||
484 | { | ||
485 | return (LSL_Types.Vector3)m_data[itemIndex]; | ||
486 | } | ||
487 | |||
488 | public LSL_Types.Quaternion GetQuaternionItem(int itemIndex) | ||
489 | { | ||
490 | return (LSL_Types.Quaternion)m_data[itemIndex]; | ||
491 | } | ||
492 | |||
493 | public LSL_Types.key GetKeyItem(int itemIndex) | ||
494 | { | ||
495 | return (LSL_Types.key)m_data[itemIndex]; | ||
422 | } | 496 | } |
423 | 497 | ||
424 | public static list operator +(list a, list b) | 498 | public static list operator +(list a, list b) |
@@ -436,19 +510,19 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
436 | m_data.SetValue(o, Length - 1); | 510 | m_data.SetValue(o, Length - 1); |
437 | } | 511 | } |
438 | 512 | ||
439 | public static list operator +(list a, string s) | 513 | public static list operator +(list a, LSLString s) |
440 | { | 514 | { |
441 | a.ExtendAndAdd(s); | 515 | a.ExtendAndAdd(s); |
442 | return a; | 516 | return a; |
443 | } | 517 | } |
444 | 518 | ||
445 | public static list operator +(list a, int i) | 519 | public static list operator +(list a, LSLInteger i) |
446 | { | 520 | { |
447 | a.ExtendAndAdd(i); | 521 | a.ExtendAndAdd(i); |
448 | return a; | 522 | return a; |
449 | } | 523 | } |
450 | 524 | ||
451 | public static list operator +(list a, double d) | 525 | public static list operator +(list a, LSLFloat d) |
452 | { | 526 | { |
453 | a.ExtendAndAdd(d); | 527 | a.ExtendAndAdd(d); |
454 | return a; | 528 | return a; |
@@ -1167,6 +1241,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1167 | return k.value; | 1241 | return k.value; |
1168 | } | 1242 | } |
1169 | 1243 | ||
1244 | static public implicit operator LSLString(key k) | ||
1245 | { | ||
1246 | return k.value; | ||
1247 | } | ||
1248 | |||
1170 | public static bool operator ==(key k1, key k2) | 1249 | public static bool operator ==(key k1, key k2) |
1171 | { | 1250 | { |
1172 | return k1.value == k2.value; | 1251 | return k1.value == k2.value; |
@@ -1190,6 +1269,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1190 | return value.GetHashCode(); | 1269 | return value.GetHashCode(); |
1191 | } | 1270 | } |
1192 | 1271 | ||
1272 | public override string ToString() | ||
1273 | { | ||
1274 | return value; | ||
1275 | } | ||
1276 | |||
1193 | #endregion | 1277 | #endregion |
1194 | } | 1278 | } |
1195 | 1279 | ||
@@ -1476,25 +1560,25 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1476 | return new LSLInteger(i1.value / i2); | 1560 | return new LSLInteger(i1.value / i2); |
1477 | } | 1561 | } |
1478 | 1562 | ||
1479 | static public LSLFloat operator +(LSLInteger i1, double f) | 1563 | // static public LSLFloat operator +(LSLInteger i1, double f) |
1480 | { | 1564 | // { |
1481 | return new LSLFloat((double)i1.value + f); | 1565 | // return new LSLFloat((double)i1.value + f); |
1482 | } | 1566 | // } |
1483 | 1567 | // | |
1484 | static public LSLFloat operator -(LSLInteger i1, double f) | 1568 | // static public LSLFloat operator -(LSLInteger i1, double f) |
1485 | { | 1569 | // { |
1486 | return new LSLFloat((double)i1.value - f); | 1570 | // return new LSLFloat((double)i1.value - f); |
1487 | } | 1571 | // } |
1488 | 1572 | // | |
1489 | static public LSLFloat operator *(LSLInteger i1, double f) | 1573 | // static public LSLFloat operator *(LSLInteger i1, double f) |
1490 | { | 1574 | // { |
1491 | return new LSLFloat((double)i1.value * f); | 1575 | // return new LSLFloat((double)i1.value * f); |
1492 | } | 1576 | // } |
1493 | 1577 | // | |
1494 | static public LSLFloat operator /(LSLInteger i1, double f) | 1578 | // static public LSLFloat operator /(LSLInteger i1, double f) |
1495 | { | 1579 | // { |
1496 | return new LSLFloat((double)i1.value / f); | 1580 | // return new LSLFloat((double)i1.value / f); |
1497 | } | 1581 | // } |
1498 | 1582 | ||
1499 | static public LSLInteger operator -(LSLInteger i) | 1583 | static public LSLInteger operator -(LSLInteger i) |
1500 | { | 1584 | { |
@@ -1585,6 +1669,11 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1585 | 1669 | ||
1586 | #region Operators | 1670 | #region Operators |
1587 | 1671 | ||
1672 | static public explicit operator float(LSLFloat f) | ||
1673 | { | ||
1674 | return (float)f.value; | ||
1675 | } | ||
1676 | |||
1588 | static public explicit operator int(LSLFloat f) | 1677 | static public explicit operator int(LSLFloat f) |
1589 | { | 1678 | { |
1590 | return (int)f.value; | 1679 | return (int)f.value; |
@@ -1619,7 +1708,17 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
1619 | 1708 | ||
1620 | static public explicit operator LSLFloat(string s) | 1709 | static public explicit operator LSLFloat(string s) |
1621 | { | 1710 | { |
1622 | return new LSLFloat(double.Parse(s)); | 1711 | Regex r = new Regex("^[ ]*-?[0-9]*\\.?[0-9]*[eE]?-?[0-9]*"); |
1712 | Match m = r.Match(s); | ||
1713 | string v = m.Groups[0].Value; | ||
1714 | |||
1715 | while (v.Length > 0 && v.Substring(0, 1) == " ") | ||
1716 | v = v.Substring(1); | ||
1717 | |||
1718 | if (v == String.Empty) | ||
1719 | v = "0"; | ||
1720 | |||
1721 | return new LSLFloat(double.Parse(v)); | ||
1623 | } | 1722 | } |
1624 | 1723 | ||
1625 | static public implicit operator LSLFloat(double d) | 1724 | static public implicit operator LSLFloat(double d) |
diff --git a/OpenSim/Region/ScriptEngine/Common/OSSL_BuilIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/OSSL_BuilIn_Commands.cs index 264a586..c9551ae 100644 --- a/OpenSim/Region/ScriptEngine/Common/OSSL_BuilIn_Commands.cs +++ b/OpenSim/Region/ScriptEngine/Common/OSSL_BuilIn_Commands.cs | |||
@@ -580,6 +580,24 @@ namespace OpenSim.Region.ScriptEngine.Common | |||
580 | } | 580 | } |
581 | } | 581 | } |
582 | 582 | ||
583 | public void osSetParcelMediaURL(string url) | ||
584 | { | ||
585 | m_host.AddScriptLPS(1); | ||
586 | UUID landowner = World.GetLandOwner(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y); | ||
587 | |||
588 | if (landowner == UUID.Zero) | ||
589 | { | ||
590 | return; | ||
591 | } | ||
592 | |||
593 | if (landowner != m_host.ObjectOwner) | ||
594 | { | ||
595 | return; | ||
596 | } | ||
597 | |||
598 | World.SetLandMediaURL(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y, url); | ||
599 | } | ||
600 | |||
583 | public string osGetScriptEngineName() | 601 | public string osGetScriptEngineName() |
584 | { | 602 | { |
585 | m_host.AddScriptLPS(1); | 603 | m_host.AddScriptLPS(1); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 110ece4..512fcd9 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -50,6 +50,14 @@ using OpenSim.Region.ScriptEngine.Shared.ScriptBase; | |||
50 | using OpenSim.Region.ScriptEngine.Interfaces; | 50 | using OpenSim.Region.ScriptEngine.Interfaces; |
51 | using OpenSim.Region.ScriptEngine.Shared.Api.Interfaces; | 51 | using OpenSim.Region.ScriptEngine.Shared.Api.Interfaces; |
52 | 52 | ||
53 | using LSL_Float = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat; | ||
54 | using LSL_Integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; | ||
55 | using LSL_Key = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; | ||
56 | using LSL_List = OpenSim.Region.ScriptEngine.Shared.LSL_Types.list; | ||
57 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Quaternion; | ||
58 | using LSL_String = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; | ||
59 | using LSL_Vector = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Vector3; | ||
60 | |||
53 | namespace OpenSim.Region.ScriptEngine.Shared.Api | 61 | namespace OpenSim.Region.ScriptEngine.Shared.Api |
54 | { | 62 | { |
55 | /// <summary> | 63 | /// <summary> |
@@ -87,6 +95,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
87 | AsyncCommands = (AsyncCommandManager)ScriptEngine.AsyncCommands; | 95 | AsyncCommands = (AsyncCommandManager)ScriptEngine.AsyncCommands; |
88 | } | 96 | } |
89 | 97 | ||
98 | private DateTime m_timer = DateTime.Now; | ||
99 | private bool m_waitingForScriptAnswer=false; | ||
90 | protected void ScriptSleep(int delay) | 100 | protected void ScriptSleep(int delay) |
91 | { | 101 | { |
92 | delay = (int)((float)delay * m_ScriptDelayFactor); | 102 | delay = (int)((float)delay * m_ScriptDelayFactor); |
@@ -95,8 +105,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
95 | System.Threading.Thread.Sleep(delay); | 105 | System.Threading.Thread.Sleep(delay); |
96 | } | 106 | } |
97 | 107 | ||
98 | private DateTime m_timer = DateTime.Now; | ||
99 | private bool m_waitingForScriptAnswer=false; | ||
100 | 108 | ||
101 | 109 | ||
102 | // Object never expires | 110 | // Object never expires |
@@ -252,55 +260,55 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
252 | } | 260 | } |
253 | 261 | ||
254 | //These are the implementations of the various ll-functions used by the LSL scripts. | 262 | //These are the implementations of the various ll-functions used by the LSL scripts. |
255 | public LSL_Types.LSLFloat llSin(double f) | 263 | public LSL_Float llSin(double f) |
256 | { | 264 | { |
257 | m_host.AddScriptLPS(1); | 265 | m_host.AddScriptLPS(1); |
258 | return (double)Math.Sin(f); | 266 | return (double)Math.Sin(f); |
259 | } | 267 | } |
260 | 268 | ||
261 | public LSL_Types.LSLFloat llCos(double f) | 269 | public LSL_Float llCos(double f) |
262 | { | 270 | { |
263 | m_host.AddScriptLPS(1); | 271 | m_host.AddScriptLPS(1); |
264 | return (double)Math.Cos(f); | 272 | return (double)Math.Cos(f); |
265 | } | 273 | } |
266 | 274 | ||
267 | public LSL_Types.LSLFloat llTan(double f) | 275 | public LSL_Float llTan(double f) |
268 | { | 276 | { |
269 | m_host.AddScriptLPS(1); | 277 | m_host.AddScriptLPS(1); |
270 | return (double)Math.Tan(f); | 278 | return (double)Math.Tan(f); |
271 | } | 279 | } |
272 | 280 | ||
273 | public LSL_Types.LSLFloat llAtan2(double x, double y) | 281 | public LSL_Float llAtan2(double x, double y) |
274 | { | 282 | { |
275 | m_host.AddScriptLPS(1); | 283 | m_host.AddScriptLPS(1); |
276 | return (double)Math.Atan2(y, x); | 284 | return (double)Math.Atan2(y, x); |
277 | } | 285 | } |
278 | 286 | ||
279 | public LSL_Types.LSLFloat llSqrt(double f) | 287 | public LSL_Float llSqrt(double f) |
280 | { | 288 | { |
281 | m_host.AddScriptLPS(1); | 289 | m_host.AddScriptLPS(1); |
282 | return (double)Math.Sqrt(f); | 290 | return (double)Math.Sqrt(f); |
283 | } | 291 | } |
284 | 292 | ||
285 | public LSL_Types.LSLFloat llPow(double fbase, double fexponent) | 293 | public LSL_Float llPow(double fbase, double fexponent) |
286 | { | 294 | { |
287 | m_host.AddScriptLPS(1); | 295 | m_host.AddScriptLPS(1); |
288 | return (double)Math.Pow(fbase, fexponent); | 296 | return (double)Math.Pow(fbase, fexponent); |
289 | } | 297 | } |
290 | 298 | ||
291 | public LSL_Types.LSLInteger llAbs(int i) | 299 | public LSL_Integer llAbs(int i) |
292 | { | 300 | { |
293 | m_host.AddScriptLPS(1); | 301 | m_host.AddScriptLPS(1); |
294 | return (int)Math.Abs(i); | 302 | return (int)Math.Abs(i); |
295 | } | 303 | } |
296 | 304 | ||
297 | public LSL_Types.LSLFloat llFabs(double f) | 305 | public LSL_Float llFabs(double f) |
298 | { | 306 | { |
299 | m_host.AddScriptLPS(1); | 307 | m_host.AddScriptLPS(1); |
300 | return (double)Math.Abs(f); | 308 | return (double)Math.Abs(f); |
301 | } | 309 | } |
302 | 310 | ||
303 | public LSL_Types.LSLFloat llFrand(double mag) | 311 | public LSL_Float llFrand(double mag) |
304 | { | 312 | { |
305 | m_host.AddScriptLPS(1); | 313 | m_host.AddScriptLPS(1); |
306 | lock (Util.RandomClass) | 314 | lock (Util.RandomClass) |
@@ -309,44 +317,44 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
309 | } | 317 | } |
310 | } | 318 | } |
311 | 319 | ||
312 | public LSL_Types.LSLInteger llFloor(double f) | 320 | public LSL_Integer llFloor(double f) |
313 | { | 321 | { |
314 | m_host.AddScriptLPS(1); | 322 | m_host.AddScriptLPS(1); |
315 | return (int)Math.Floor(f); | 323 | return (int)Math.Floor(f); |
316 | } | 324 | } |
317 | 325 | ||
318 | public LSL_Types.LSLInteger llCeil(double f) | 326 | public LSL_Integer llCeil(double f) |
319 | { | 327 | { |
320 | m_host.AddScriptLPS(1); | 328 | m_host.AddScriptLPS(1); |
321 | return (int)Math.Ceiling(f); | 329 | return (int)Math.Ceiling(f); |
322 | } | 330 | } |
323 | 331 | ||
324 | // Xantor 01/May/2008 fixed midpointrounding (2.5 becomes 3.0 instead of 2.0, default = ToEven) | 332 | // Xantor 01/May/2008 fixed midpointrounding (2.5 becomes 3.0 instead of 2.0, default = ToEven) |
325 | public LSL_Types.LSLInteger llRound(double f) | 333 | public LSL_Integer llRound(double f) |
326 | { | 334 | { |
327 | m_host.AddScriptLPS(1); | 335 | m_host.AddScriptLPS(1); |
328 | return (int)Math.Round(f, MidpointRounding.AwayFromZero); | 336 | return (int)Math.Round(f, MidpointRounding.AwayFromZero); |
329 | } | 337 | } |
330 | 338 | ||
331 | //This next group are vector operations involving squaring and square root. ckrinke | 339 | //This next group are vector operations involving squaring and square root. ckrinke |
332 | public LSL_Types.LSLFloat llVecMag(LSL_Types.Vector3 v) | 340 | public LSL_Float llVecMag(LSL_Vector v) |
333 | { | 341 | { |
334 | m_host.AddScriptLPS(1); | 342 | m_host.AddScriptLPS(1); |
335 | return LSL_Types.Vector3.Mag(v); | 343 | return LSL_Vector.Mag(v); |
336 | } | 344 | } |
337 | 345 | ||
338 | public LSL_Types.Vector3 llVecNorm(LSL_Types.Vector3 v) | 346 | public LSL_Vector llVecNorm(LSL_Vector v) |
339 | { | 347 | { |
340 | m_host.AddScriptLPS(1); | 348 | m_host.AddScriptLPS(1); |
341 | double mag = LSL_Types.Vector3.Mag(v); | 349 | double mag = LSL_Vector.Mag(v); |
342 | LSL_Types.Vector3 nor = new LSL_Types.Vector3(); | 350 | LSL_Vector nor = new LSL_Vector(); |
343 | nor.x = v.x / mag; | 351 | nor.x = v.x / mag; |
344 | nor.y = v.y / mag; | 352 | nor.y = v.y / mag; |
345 | nor.z = v.z / mag; | 353 | nor.z = v.z / mag; |
346 | return nor; | 354 | return nor; |
347 | } | 355 | } |
348 | 356 | ||
349 | public LSL_Types.LSLFloat llVecDist(LSL_Types.Vector3 a, LSL_Types.Vector3 b) | 357 | public LSL_Float llVecDist(LSL_Vector a, LSL_Vector b) |
350 | { | 358 | { |
351 | m_host.AddScriptLPS(1); | 359 | m_host.AddScriptLPS(1); |
352 | double dx = a.x - b.x; | 360 | double dx = a.x - b.x; |
@@ -369,23 +377,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
369 | 377 | ||
370 | // Old implementation of llRot2Euler, now normalized | 378 | // Old implementation of llRot2Euler, now normalized |
371 | 379 | ||
372 | public LSL_Types.Vector3 llRot2Euler(LSL_Types.Quaternion r) | 380 | public LSL_Vector llRot2Euler(LSL_Rotation r) |
373 | { | 381 | { |
374 | m_host.AddScriptLPS(1); | 382 | m_host.AddScriptLPS(1); |
375 | //This implementation is from http://lslwiki.net/lslwiki/wakka.php?wakka=LibraryRotationFunctions. ckrinke | 383 | //This implementation is from http://lslwiki.net/lslwiki/wakka.php?wakka=LibraryRotationFunctions. ckrinke |
376 | LSL_Types.Quaternion t = new LSL_Types.Quaternion(r.x * r.x, r.y * r.y, r.z * r.z, r.s * r.s); | 384 | LSL_Rotation t = new LSL_Rotation(r.x * r.x, r.y * r.y, r.z * r.z, r.s * r.s); |
377 | double m = (t.x + t.y + t.z + t.s); | 385 | double m = (t.x + t.y + t.z + t.s); |
378 | if (m == 0) return new LSL_Types.Vector3(); | 386 | if (m == 0) return new LSL_Vector(); |
379 | double n = 2 * (r.y * r.s + r.x * r.z); | 387 | double n = 2 * (r.y * r.s + r.x * r.z); |
380 | double p = m * m - n * n; | 388 | double p = m * m - n * n; |
381 | if (p > 0) | 389 | if (p > 0) |
382 | return new LSL_Types.Vector3(NormalizeAngle(Math.Atan2(2.0 * (r.x * r.s - r.y * r.z), (-t.x - t.y + t.z + t.s))), | 390 | return new LSL_Vector(NormalizeAngle(Math.Atan2(2.0 * (r.x * r.s - r.y * r.z), (-t.x - t.y + t.z + t.s))), |
383 | NormalizeAngle(Math.Atan2(n, Math.Sqrt(p))), | 391 | NormalizeAngle(Math.Atan2(n, Math.Sqrt(p))), |
384 | NormalizeAngle(Math.Atan2(2.0 * (r.z * r.s - r.x * r.y), (t.x - t.y - t.z + t.s)))); | 392 | NormalizeAngle(Math.Atan2(2.0 * (r.z * r.s - r.x * r.y), (t.x - t.y - t.z + t.s)))); |
385 | else if (n > 0) | 393 | else if (n > 0) |
386 | return new LSL_Types.Vector3(0.0, Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); | 394 | return new LSL_Vector(0.0, Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); |
387 | else | 395 | else |
388 | return new LSL_Types.Vector3(0.0, -Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); | 396 | return new LSL_Vector(0.0, -Math.PI / 2, NormalizeAngle(Math.Atan2((r.z * r.s + r.x * r.y), 0.5 - t.x - t.z))); |
389 | } | 397 | } |
390 | 398 | ||
391 | /* From wiki: | 399 | /* From wiki: |
@@ -433,7 +441,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
433 | * Apparently in some cases this is better from a numerical precision perspective? | 441 | * Apparently in some cases this is better from a numerical precision perspective? |
434 | */ | 442 | */ |
435 | 443 | ||
436 | public LSL_Types.Quaternion llEuler2Rot(LSL_Types.Vector3 v) | 444 | public LSL_Rotation llEuler2Rot(LSL_Vector v) |
437 | { | 445 | { |
438 | m_host.AddScriptLPS(1); | 446 | m_host.AddScriptLPS(1); |
439 | 447 | ||
@@ -451,10 +459,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
451 | z = s1*s2*c3+c1*c2*s3; | 459 | z = s1*s2*c3+c1*c2*s3; |
452 | s = c1*c2*c3-s1*s2*s3; | 460 | s = c1*c2*c3-s1*s2*s3; |
453 | 461 | ||
454 | return new LSL_Types.Quaternion(x, y, z, s); | 462 | return new LSL_Rotation(x, y, z, s); |
455 | } | 463 | } |
456 | 464 | ||
457 | public LSL_Types.Quaternion llAxes2Rot(LSL_Types.Vector3 fwd, LSL_Types.Vector3 left, LSL_Types.Vector3 up) | 465 | public LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up) |
458 | { | 466 | { |
459 | m_host.AddScriptLPS(1); | 467 | m_host.AddScriptLPS(1); |
460 | double x, y, z, s; | 468 | double x, y, z, s; |
@@ -487,7 +495,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
487 | if (f == 5) { z = -z; } | 495 | if (f == 5) { z = -z; } |
488 | if (f == 6) { y = -y; } | 496 | if (f == 6) { y = -y; } |
489 | 497 | ||
490 | LSL_Types.Quaternion result = new LSL_Types.Quaternion(x, y, z, s); | 498 | LSL_Rotation result = new LSL_Rotation(x, y, z, s); |
491 | 499 | ||
492 | // a hack to correct a few questionable angles :( | 500 | // a hack to correct a few questionable angles :( |
493 | if (llVecDist(llRot2Fwd(result), fwd) > 0.001 || llVecDist(llRot2Left(result), left) > 0.001) | 501 | if (llVecDist(llRot2Fwd(result), fwd) > 0.001 || llVecDist(llRot2Left(result), left) > 0.001) |
@@ -496,7 +504,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
496 | return result; | 504 | return result; |
497 | } | 505 | } |
498 | 506 | ||
499 | public LSL_Types.Vector3 llRot2Fwd(LSL_Types.Quaternion r) | 507 | public LSL_Vector llRot2Fwd(LSL_Rotation r) |
500 | { | 508 | { |
501 | m_host.AddScriptLPS(1); | 509 | m_host.AddScriptLPS(1); |
502 | 510 | ||
@@ -518,10 +526,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
518 | x = r.x * r.x - r.y * r.y - r.z * r.z + r.s * r.s; | 526 | x = r.x * r.x - r.y * r.y - r.z * r.z + r.s * r.s; |
519 | y = 2 * (r.x * r.y + r.z * r.s); | 527 | y = 2 * (r.x * r.y + r.z * r.s); |
520 | z = 2 * (r.x * r.z - r.y * r.s); | 528 | z = 2 * (r.x * r.z - r.y * r.s); |
521 | return (new LSL_Types.Vector3(x, y, z)); | 529 | return (new LSL_Vector(x, y, z)); |
522 | } | 530 | } |
523 | 531 | ||
524 | public LSL_Types.Vector3 llRot2Left(LSL_Types.Quaternion r) | 532 | public LSL_Vector llRot2Left(LSL_Rotation r) |
525 | { | 533 | { |
526 | m_host.AddScriptLPS(1); | 534 | m_host.AddScriptLPS(1); |
527 | 535 | ||
@@ -543,10 +551,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
543 | x = 2 * (r.x * r.y - r.z * r.s); | 551 | x = 2 * (r.x * r.y - r.z * r.s); |
544 | y = -r.x * r.x + r.y * r.y - r.z * r.z + r.s * r.s; | 552 | y = -r.x * r.x + r.y * r.y - r.z * r.z + r.s * r.s; |
545 | z = 2 * (r.x * r.s + r.y * r.z); | 553 | z = 2 * (r.x * r.s + r.y * r.z); |
546 | return (new LSL_Types.Vector3(x, y, z)); | 554 | return (new LSL_Vector(x, y, z)); |
547 | } | 555 | } |
548 | 556 | ||
549 | public LSL_Types.Vector3 llRot2Up(LSL_Types.Quaternion r) | 557 | public LSL_Vector llRot2Up(LSL_Rotation r) |
550 | { | 558 | { |
551 | m_host.AddScriptLPS(1); | 559 | m_host.AddScriptLPS(1); |
552 | double x, y, z, m; | 560 | double x, y, z, m; |
@@ -567,18 +575,18 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
567 | x = 2 * (r.x * r.z + r.y * r.s); | 575 | x = 2 * (r.x * r.z + r.y * r.s); |
568 | y = 2 * (-r.x * r.s + r.y * r.z); | 576 | y = 2 * (-r.x * r.s + r.y * r.z); |
569 | z = -r.x * r.x - r.y * r.y + r.z * r.z + r.s * r.s; | 577 | z = -r.x * r.x - r.y * r.y + r.z * r.z + r.s * r.s; |
570 | return (new LSL_Types.Vector3(x, y, z)); | 578 | return (new LSL_Vector(x, y, z)); |
571 | } | 579 | } |
572 | 580 | ||
573 | public LSL_Types.Quaternion llRotBetween(LSL_Types.Vector3 a, LSL_Types.Vector3 b) | 581 | public LSL_Rotation llRotBetween(LSL_Vector a, LSL_Vector b) |
574 | { | 582 | { |
575 | //A and B should both be normalized | 583 | //A and B should both be normalized |
576 | m_host.AddScriptLPS(1); | 584 | m_host.AddScriptLPS(1); |
577 | double dotProduct = LSL_Types.Vector3.Dot(a, b); | 585 | double dotProduct = LSL_Vector.Dot(a, b); |
578 | LSL_Types.Vector3 crossProduct = LSL_Types.Vector3.Cross(a, b); | 586 | LSL_Vector crossProduct = LSL_Vector.Cross(a, b); |
579 | double magProduct = LSL_Types.Vector3.Mag(a) * LSL_Types.Vector3.Mag(b); | 587 | double magProduct = LSL_Vector.Mag(a) * LSL_Vector.Mag(b); |
580 | double angle = Math.Acos(dotProduct / magProduct); | 588 | double angle = Math.Acos(dotProduct / magProduct); |
581 | LSL_Types.Vector3 axis = LSL_Types.Vector3.Norm(crossProduct); | 589 | LSL_Vector axis = LSL_Vector.Norm(crossProduct); |
582 | double s = Math.Sin(angle / 2); | 590 | double s = Math.Sin(angle / 2); |
583 | 591 | ||
584 | double x = axis.x * s; | 592 | double x = axis.x * s; |
@@ -587,9 +595,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
587 | double w = Math.Cos(angle / 2); | 595 | double w = Math.Cos(angle / 2); |
588 | 596 | ||
589 | if (Double.IsNaN(x) || Double.IsNaN(y) || Double.IsNaN(z) || Double.IsNaN(w)) | 597 | if (Double.IsNaN(x) || Double.IsNaN(y) || Double.IsNaN(z) || Double.IsNaN(w)) |
590 | return new LSL_Types.Quaternion(0.0f, 0.0f, 0.0f, 1.0f); | 598 | return new LSL_Rotation(0.0f, 0.0f, 0.0f, 1.0f); |
591 | 599 | ||
592 | return new LSL_Types.Quaternion((float)x, (float)y, (float)z, (float)w); | 600 | return new LSL_Rotation((float)x, (float)y, (float)z, (float)w); |
593 | } | 601 | } |
594 | 602 | ||
595 | public void llWhisper(int channelID, string text) | 603 | public void llWhisper(int channelID, string text) |
@@ -651,7 +659,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
651 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); | 659 | wComm.DeliverMessage(ChatTypeEnum.Region, channelID, m_host.Name, m_host.UUID, text); |
652 | } | 660 | } |
653 | 661 | ||
654 | public LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg) | 662 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) |
655 | { | 663 | { |
656 | m_host.AddScriptLPS(1); | 664 | m_host.AddScriptLPS(1); |
657 | UUID keyID; | 665 | UUID keyID; |
@@ -726,7 +734,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
726 | return SensedObject.Name; | 734 | return SensedObject.Name; |
727 | } | 735 | } |
728 | 736 | ||
729 | public LSL_Types.LSLString llDetectedName(int number) | 737 | public LSL_String llDetectedName(int number) |
730 | { | 738 | { |
731 | m_host.AddScriptLPS(1); | 739 | m_host.AddScriptLPS(1); |
732 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 740 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
@@ -735,7 +743,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
735 | return d.Name; | 743 | return d.Name; |
736 | } | 744 | } |
737 | 745 | ||
738 | public LSL_Types.LSLString llDetectedKey(int number) | 746 | public LSL_String llDetectedKey(int number) |
739 | { | 747 | { |
740 | m_host.AddScriptLPS(1); | 748 | m_host.AddScriptLPS(1); |
741 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 749 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
@@ -744,7 +752,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
744 | return d.Key.ToString(); | 752 | return d.Key.ToString(); |
745 | } | 753 | } |
746 | 754 | ||
747 | public LSL_Types.LSLString llDetectedOwner(int number) | 755 | public LSL_String llDetectedOwner(int number) |
748 | { | 756 | { |
749 | m_host.AddScriptLPS(1); | 757 | m_host.AddScriptLPS(1); |
750 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 758 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
@@ -753,71 +761,113 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
753 | return d.Owner.ToString(); | 761 | return d.Owner.ToString(); |
754 | } | 762 | } |
755 | 763 | ||
756 | public LSL_Types.LSLInteger llDetectedType(int number) | 764 | public LSL_Integer llDetectedType(int number) |
757 | { | 765 | { |
758 | m_host.AddScriptLPS(1); | 766 | m_host.AddScriptLPS(1); |
759 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 767 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
760 | if (d == null) | 768 | if (d == null) |
761 | return 0; | 769 | return 0; |
762 | return new LSL_Types.LSLInteger(d.Type); | 770 | return new LSL_Integer(d.Type); |
763 | } | 771 | } |
764 | 772 | ||
765 | public LSL_Types.Vector3 llDetectedPos(int number) | 773 | public LSL_Vector llDetectedPos(int number) |
766 | { | 774 | { |
767 | m_host.AddScriptLPS(1); | 775 | m_host.AddScriptLPS(1); |
768 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 776 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
769 | if (d == null) | 777 | if (d == null) |
770 | return new LSL_Types.Vector3(); | 778 | return new LSL_Vector(); |
771 | return d.Position; | 779 | return d.Position; |
772 | } | 780 | } |
773 | 781 | ||
774 | public LSL_Types.Vector3 llDetectedVel(int number) | 782 | public LSL_Vector llDetectedVel(int number) |
775 | { | 783 | { |
776 | m_host.AddScriptLPS(1); | 784 | m_host.AddScriptLPS(1); |
777 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 785 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
778 | if (d == null) | 786 | if (d == null) |
779 | return new LSL_Types.Vector3(); | 787 | return new LSL_Vector(); |
780 | return d.Velocity; | 788 | return d.Velocity; |
781 | } | 789 | } |
782 | 790 | ||
783 | public LSL_Types.Vector3 llDetectedGrab(int number) | 791 | public LSL_Vector llDetectedGrab(int number) |
784 | { | 792 | { |
785 | m_host.AddScriptLPS(1); | 793 | m_host.AddScriptLPS(1); |
786 | DetectParams parms = m_ScriptEngine.GetDetectParams(m_itemID, number); | 794 | DetectParams parms = m_ScriptEngine.GetDetectParams(m_itemID, number); |
787 | if (parms == null) | 795 | if (parms == null) |
788 | return new LSL_Types.Vector3(0, 0, 0); | 796 | return new LSL_Vector(0, 0, 0); |
789 | 797 | ||
790 | return parms.OffsetPos; | 798 | return parms.OffsetPos; |
791 | } | 799 | } |
792 | 800 | ||
793 | public LSL_Types.Quaternion llDetectedRot(int number) | 801 | public LSL_Rotation llDetectedRot(int number) |
794 | { | 802 | { |
795 | m_host.AddScriptLPS(1); | 803 | m_host.AddScriptLPS(1); |
796 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 804 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
797 | if (d == null) | 805 | if (d == null) |
798 | return new LSL_Types.Quaternion(); | 806 | return new LSL_Rotation(); |
799 | return d.Rotation; | 807 | return d.Rotation; |
800 | } | 808 | } |
801 | 809 | ||
802 | public LSL_Types.LSLInteger llDetectedGroup(int number) | 810 | public LSL_Integer llDetectedGroup(int number) |
803 | { | 811 | { |
804 | m_host.AddScriptLPS(1); | 812 | m_host.AddScriptLPS(1); |
805 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); | 813 | DetectParams d = m_ScriptEngine.GetDetectParams(m_itemID, number); |
806 | if (d == null) | 814 | if (d == null) |
807 | return new LSL_Types.LSLInteger(0); | 815 | return new LSL_Integer(0); |
808 | if (m_host.GroupID == d.Group) | 816 | if (m_host.GroupID == d.Group) |
809 | return new LSL_Types.LSLInteger(1); | 817 | return new LSL_Integer(1); |
810 | return new LSL_Types.LSLInteger(0); | 818 | return new LSL_Integer(0); |
811 | } | 819 | } |
812 | 820 | ||
813 | public LSL_Types.LSLInteger llDetectedLinkNumber(int number) | 821 | public LSL_Integer llDetectedLinkNumber(int number) |
814 | { | 822 | { |
815 | m_host.AddScriptLPS(1); | 823 | m_host.AddScriptLPS(1); |
816 | DetectParams parms = m_ScriptEngine.GetDetectParams(m_itemID, number); | 824 | DetectParams parms = m_ScriptEngine.GetDetectParams(m_itemID, number); |
817 | if (parms == null) | 825 | if (parms == null) |
818 | return new LSL_Types.LSLInteger(0); | 826 | return new LSL_Integer(0); |
827 | |||
828 | return new LSL_Integer(parms.LinkNum); | ||
829 | } | ||
830 | |||
831 | public LSL_Vector llDetectedTouchBinormal(int index) | ||
832 | { | ||
833 | m_host.AddScriptLPS(1); | ||
834 | NotImplemented("llDetectedTouchBinormal"); | ||
835 | return new LSL_Vector(); | ||
836 | } | ||
837 | |||
838 | public LSL_Integer llDetectedTouchFace(int index) | ||
839 | { | ||
840 | m_host.AddScriptLPS(1); | ||
841 | NotImplemented("llDetectedTouchFace"); | ||
842 | return new LSL_Integer(0); | ||
843 | } | ||
844 | |||
845 | public LSL_Vector llDetectedTouchNormal(int index) | ||
846 | { | ||
847 | m_host.AddScriptLPS(1); | ||
848 | NotImplemented("llDetectedTouchNormal"); | ||
849 | return new LSL_Vector(); | ||
850 | } | ||
851 | |||
852 | public LSL_Vector llDetectedTouchPos(int index) | ||
853 | { | ||
854 | m_host.AddScriptLPS(1); | ||
855 | NotImplemented("llDetectedTouchPos"); | ||
856 | return new LSL_Vector(); | ||
857 | } | ||
819 | 858 | ||
820 | return new LSL_Types.LSLInteger(parms.LinkNum); | 859 | public LSL_Vector llDetectedTouchST(int index) |
860 | { | ||
861 | m_host.AddScriptLPS(1); | ||
862 | NotImplemented("llDetectedTouchST"); | ||
863 | return new LSL_Vector(); | ||
864 | } | ||
865 | |||
866 | public LSL_Vector llDetectedTouchUV(int index) | ||
867 | { | ||
868 | m_host.AddScriptLPS(1); | ||
869 | NotImplemented("llDetectedTouchUV"); | ||
870 | return new LSL_Vector(); | ||
821 | } | 871 | } |
822 | 872 | ||
823 | public void llDie() | 873 | public void llDie() |
@@ -826,7 +876,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
826 | throw new SelfDeleteException(); | 876 | throw new SelfDeleteException(); |
827 | } | 877 | } |
828 | 878 | ||
829 | public LSL_Types.LSLFloat llGround(LSL_Types.Vector3 offset) | 879 | public LSL_Float llGround(LSL_Vector offset) |
830 | { | 880 | { |
831 | m_host.AddScriptLPS(1); | 881 | m_host.AddScriptLPS(1); |
832 | int x = (int)(m_host.OffsetPosition.X + offset.x); | 882 | int x = (int)(m_host.OffsetPosition.X + offset.x); |
@@ -834,16 +884,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
834 | return World.GetLandHeight(x, y); | 884 | return World.GetLandHeight(x, y); |
835 | } | 885 | } |
836 | 886 | ||
837 | public LSL_Types.LSLFloat llCloud(LSL_Types.Vector3 offset) | 887 | public LSL_Float llCloud(LSL_Vector offset) |
838 | { | 888 | { |
839 | m_host.AddScriptLPS(1); | 889 | m_host.AddScriptLPS(1); |
840 | return 0; | 890 | return 0; |
841 | } | 891 | } |
842 | 892 | ||
843 | public LSL_Types.Vector3 llWind(LSL_Types.Vector3 offset) | 893 | public LSL_Vector llWind(LSL_Vector offset) |
844 | { | 894 | { |
845 | m_host.AddScriptLPS(1); | 895 | m_host.AddScriptLPS(1); |
846 | return new LSL_Types.Vector3(); | 896 | return new LSL_Vector(); |
847 | } | 897 | } |
848 | 898 | ||
849 | public void llSetStatus(int status, int value) | 899 | public void llSetStatus(int status, int value) |
@@ -934,7 +984,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
934 | } | 984 | } |
935 | } | 985 | } |
936 | 986 | ||
937 | public LSL_Types.LSLInteger llGetStatus(int status) | 987 | public LSL_Integer llGetStatus(int status) |
938 | { | 988 | { |
939 | m_host.AddScriptLPS(1); | 989 | m_host.AddScriptLPS(1); |
940 | // Console.WriteLine(m_host.ToString() + " status is " + m_host.GetEffectiveObjectFlags().ToString()); | 990 | // Console.WriteLine(m_host.ToString() + " status is " + m_host.GetEffectiveObjectFlags().ToString()); |
@@ -994,13 +1044,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
994 | return 0; | 1044 | return 0; |
995 | } | 1045 | } |
996 | 1046 | ||
997 | public void llSetScale(LSL_Types.Vector3 scale) | 1047 | public void llSetScale(LSL_Vector scale) |
998 | { | 1048 | { |
999 | m_host.AddScriptLPS(1); | 1049 | m_host.AddScriptLPS(1); |
1000 | SetScale(m_host, scale); | 1050 | SetScale(m_host, scale); |
1001 | } | 1051 | } |
1002 | 1052 | ||
1003 | private void SetScale(SceneObjectPart part, LSL_Types.Vector3 scale) | 1053 | private void SetScale(SceneObjectPart part, LSL_Vector scale) |
1004 | { | 1054 | { |
1005 | // TODO: this needs to trigger a persistance save as well | 1055 | // TODO: this needs to trigger a persistance save as well |
1006 | 1056 | ||
@@ -1030,20 +1080,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1030 | part.SendFullUpdateToAllClients(); | 1080 | part.SendFullUpdateToAllClients(); |
1031 | } | 1081 | } |
1032 | 1082 | ||
1033 | public LSL_Types.Vector3 llGetScale() | 1083 | public LSL_Vector llGetScale() |
1034 | { | 1084 | { |
1035 | m_host.AddScriptLPS(1); | 1085 | m_host.AddScriptLPS(1); |
1036 | return new LSL_Types.Vector3(m_host.Scale.X, m_host.Scale.Y, m_host.Scale.Z); | 1086 | return new LSL_Vector(m_host.Scale.X, m_host.Scale.Y, m_host.Scale.Z); |
1037 | } | 1087 | } |
1038 | 1088 | ||
1039 | public void llSetColor(LSL_Types.Vector3 color, int face) | 1089 | public void llSetClickAction(int action) |
1090 | { | ||
1091 | m_host.AddScriptLPS(1); | ||
1092 | NotImplemented("llSetClickAction"); | ||
1093 | return; | ||
1094 | } | ||
1095 | |||
1096 | public void llSetColor(LSL_Vector color, int face) | ||
1040 | { | 1097 | { |
1041 | m_host.AddScriptLPS(1); | 1098 | m_host.AddScriptLPS(1); |
1042 | 1099 | ||
1043 | SetColor(m_host, color, face); | 1100 | SetColor(m_host, color, face); |
1044 | } | 1101 | } |
1045 | 1102 | ||
1046 | private void SetColor(SceneObjectPart part, LSL_Types.Vector3 color, int face) | 1103 | private void SetColor(SceneObjectPart part, LSL_Vector color, int face) |
1047 | { | 1104 | { |
1048 | Primitive.TextureEntry tex = part.Shape.Textures; | 1105 | Primitive.TextureEntry tex = part.Shape.Textures; |
1049 | Color4 texcolor; | 1106 | Color4 texcolor; |
@@ -1180,14 +1237,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1180 | } | 1237 | } |
1181 | } | 1238 | } |
1182 | 1239 | ||
1183 | public LSL_Types.LSLFloat llGetAlpha(int face) | 1240 | public LSL_Float llGetAlpha(int face) |
1184 | { | 1241 | { |
1185 | m_host.AddScriptLPS(1); | 1242 | m_host.AddScriptLPS(1); |
1186 | 1243 | ||
1187 | return GetAlpha(m_host, face); | 1244 | return GetAlpha(m_host, face); |
1188 | } | 1245 | } |
1189 | 1246 | ||
1190 | private LSL_Types.LSLFloat GetAlpha(SceneObjectPart part, int face) | 1247 | private LSL_Float GetAlpha(SceneObjectPart part, int face) |
1191 | { | 1248 | { |
1192 | Primitive.TextureEntry tex = part.Shape.Textures; | 1249 | Primitive.TextureEntry tex = part.Shape.Textures; |
1193 | if (face == ScriptBaseClass.ALL_SIDES) | 1250 | if (face == ScriptBaseClass.ALL_SIDES) |
@@ -1257,7 +1314,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1257 | /// <param name="tension"></param> | 1314 | /// <param name="tension"></param> |
1258 | /// <param name="Force"></param> | 1315 | /// <param name="Force"></param> |
1259 | private void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, | 1316 | private void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, |
1260 | float wind, float tension, LSL_Types.Vector3 Force) | 1317 | float wind, float tension, LSL_Vector Force) |
1261 | { | 1318 | { |
1262 | if (part == null) | 1319 | if (part == null) |
1263 | return; | 1320 | return; |
@@ -1315,7 +1372,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1315 | /// <param name="intensity"></param> | 1372 | /// <param name="intensity"></param> |
1316 | /// <param name="radius"></param> | 1373 | /// <param name="radius"></param> |
1317 | /// <param name="falloff"></param> | 1374 | /// <param name="falloff"></param> |
1318 | private void SetPointLight(SceneObjectPart part, bool light, LSL_Types.Vector3 color, float intensity, float radius, float falloff) | 1375 | private void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff) |
1319 | { | 1376 | { |
1320 | if (part == null) | 1377 | if (part == null) |
1321 | return; | 1378 | return; |
@@ -1339,17 +1396,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1339 | part.ScheduleFullUpdate(); | 1396 | part.ScheduleFullUpdate(); |
1340 | } | 1397 | } |
1341 | 1398 | ||
1342 | public LSL_Types.Vector3 llGetColor(int face) | 1399 | public LSL_Vector llGetColor(int face) |
1343 | { | 1400 | { |
1344 | m_host.AddScriptLPS(1); | 1401 | m_host.AddScriptLPS(1); |
1345 | return GetColor(m_host, face); | 1402 | return GetColor(m_host, face); |
1346 | } | 1403 | } |
1347 | 1404 | ||
1348 | private LSL_Types.Vector3 GetColor(SceneObjectPart part, int face) | 1405 | private LSL_Vector GetColor(SceneObjectPart part, int face) |
1349 | { | 1406 | { |
1350 | Primitive.TextureEntry tex = part.Shape.Textures; | 1407 | Primitive.TextureEntry tex = part.Shape.Textures; |
1351 | Color4 texcolor; | 1408 | Color4 texcolor; |
1352 | LSL_Types.Vector3 rgb = new LSL_Types.Vector3(); | 1409 | LSL_Vector rgb = new LSL_Vector(); |
1353 | if (face == ScriptBaseClass.ALL_SIDES) | 1410 | if (face == ScriptBaseClass.ALL_SIDES) |
1354 | { | 1411 | { |
1355 | int i; | 1412 | int i; |
@@ -1378,7 +1435,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1378 | } | 1435 | } |
1379 | else | 1436 | else |
1380 | { | 1437 | { |
1381 | return new LSL_Types.Vector3(); | 1438 | return new LSL_Vector(); |
1382 | } | 1439 | } |
1383 | } | 1440 | } |
1384 | 1441 | ||
@@ -1532,13 +1589,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1532 | } | 1589 | } |
1533 | } | 1590 | } |
1534 | 1591 | ||
1535 | public LSL_Types.LSLString llGetTexture(int face) | 1592 | public LSL_String llGetTexture(int face) |
1536 | { | 1593 | { |
1537 | m_host.AddScriptLPS(1); | 1594 | m_host.AddScriptLPS(1); |
1538 | return GetTexture(m_host, face); | 1595 | return GetTexture(m_host, face); |
1539 | } | 1596 | } |
1540 | 1597 | ||
1541 | private LSL_Types.LSLString GetTexture(SceneObjectPart part, int face) | 1598 | private LSL_String GetTexture(SceneObjectPart part, int face) |
1542 | { | 1599 | { |
1543 | Primitive.TextureEntry tex = part.Shape.Textures; | 1600 | Primitive.TextureEntry tex = part.Shape.Textures; |
1544 | if (face == ScriptBaseClass.ALL_SIDES) | 1601 | if (face == ScriptBaseClass.ALL_SIDES) |
@@ -1557,7 +1614,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1557 | } | 1614 | } |
1558 | } | 1615 | } |
1559 | 1616 | ||
1560 | public void llSetPos(LSL_Types.Vector3 pos) | 1617 | public void llSetPos(LSL_Vector pos) |
1561 | { | 1618 | { |
1562 | m_host.AddScriptLPS(1); | 1619 | m_host.AddScriptLPS(1); |
1563 | 1620 | ||
@@ -1566,10 +1623,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1566 | ScriptSleep(200); | 1623 | ScriptSleep(200); |
1567 | } | 1624 | } |
1568 | 1625 | ||
1569 | private void SetPos(SceneObjectPart part, LSL_Types.Vector3 targetPos) | 1626 | private void SetPos(SceneObjectPart part, LSL_Vector targetPos) |
1570 | { | 1627 | { |
1571 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) | 1628 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) |
1572 | LSL_Types.Vector3 currentPos = llGetLocalPos(); | 1629 | LSL_Vector currentPos = llGetLocalPos(); |
1573 | if (llVecDist(currentPos, targetPos) > 10.0f * m_ScriptDistanceFactor) | 1630 | if (llVecDist(currentPos, targetPos) > 10.0f * m_ScriptDistanceFactor) |
1574 | { | 1631 | { |
1575 | targetPos = currentPos + m_ScriptDistanceFactor * 10 * llVecNorm(targetPos - currentPos); | 1632 | targetPos = currentPos + m_ScriptDistanceFactor * 10 * llVecNorm(targetPos - currentPos); |
@@ -1585,32 +1642,32 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1585 | } | 1642 | } |
1586 | } | 1643 | } |
1587 | 1644 | ||
1588 | public LSL_Types.Vector3 llGetPos() | 1645 | public LSL_Vector llGetPos() |
1589 | { | 1646 | { |
1590 | m_host.AddScriptLPS(1); | 1647 | m_host.AddScriptLPS(1); |
1591 | return new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 1648 | return new LSL_Vector(m_host.AbsolutePosition.X, |
1592 | m_host.AbsolutePosition.Y, | 1649 | m_host.AbsolutePosition.Y, |
1593 | m_host.AbsolutePosition.Z); | 1650 | m_host.AbsolutePosition.Z); |
1594 | } | 1651 | } |
1595 | 1652 | ||
1596 | public LSL_Types.Vector3 llGetLocalPos() | 1653 | public LSL_Vector llGetLocalPos() |
1597 | { | 1654 | { |
1598 | m_host.AddScriptLPS(1); | 1655 | m_host.AddScriptLPS(1); |
1599 | if (m_host.ParentID != 0) | 1656 | if (m_host.ParentID != 0) |
1600 | { | 1657 | { |
1601 | return new LSL_Types.Vector3(m_host.OffsetPosition.X, | 1658 | return new LSL_Vector(m_host.OffsetPosition.X, |
1602 | m_host.OffsetPosition.Y, | 1659 | m_host.OffsetPosition.Y, |
1603 | m_host.OffsetPosition.Z); | 1660 | m_host.OffsetPosition.Z); |
1604 | } | 1661 | } |
1605 | else | 1662 | else |
1606 | { | 1663 | { |
1607 | return new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 1664 | return new LSL_Vector(m_host.AbsolutePosition.X, |
1608 | m_host.AbsolutePosition.Y, | 1665 | m_host.AbsolutePosition.Y, |
1609 | m_host.AbsolutePosition.Z); | 1666 | m_host.AbsolutePosition.Z); |
1610 | } | 1667 | } |
1611 | } | 1668 | } |
1612 | 1669 | ||
1613 | public void llSetRot(LSL_Types.Quaternion rot) | 1670 | public void llSetRot(LSL_Rotation rot) |
1614 | { | 1671 | { |
1615 | m_host.AddScriptLPS(1); | 1672 | m_host.AddScriptLPS(1); |
1616 | 1673 | ||
@@ -1619,27 +1676,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1619 | ScriptSleep(200); | 1676 | ScriptSleep(200); |
1620 | } | 1677 | } |
1621 | 1678 | ||
1622 | private void SetRot(SceneObjectPart part, LSL_Types.Quaternion rot) | 1679 | private void SetRot(SceneObjectPart part, LSL_Rotation rot) |
1623 | { | 1680 | { |
1624 | part.UpdateRotation(new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s)); | 1681 | part.UpdateRotation(new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s)); |
1625 | // Update rotation does not move the object in the physics scene if it's a linkset. | 1682 | // Update rotation does not move the object in the physics scene if it's a linkset. |
1626 | part.ParentGroup.AbsolutePosition = part.ParentGroup.AbsolutePosition; | 1683 | part.ParentGroup.AbsolutePosition = part.ParentGroup.AbsolutePosition; |
1627 | } | 1684 | } |
1628 | 1685 | ||
1629 | public LSL_Types.Quaternion llGetRot() | 1686 | public LSL_Rotation llGetRot() |
1630 | { | 1687 | { |
1631 | m_host.AddScriptLPS(1); | 1688 | m_host.AddScriptLPS(1); |
1632 | Quaternion q = m_host.RotationOffset; | 1689 | Quaternion q = m_host.RotationOffset; |
1633 | return new LSL_Types.Quaternion(q.X, q.Y, q.Z, q.W); | 1690 | return new LSL_Rotation(q.X, q.Y, q.Z, q.W); |
1634 | } | 1691 | } |
1635 | 1692 | ||
1636 | public LSL_Types.Quaternion llGetLocalRot() | 1693 | public LSL_Rotation llGetLocalRot() |
1637 | { | 1694 | { |
1638 | m_host.AddScriptLPS(1); | 1695 | m_host.AddScriptLPS(1); |
1639 | return new LSL_Types.Quaternion(m_host.RotationOffset.X, m_host.RotationOffset.Y, m_host.RotationOffset.Z, m_host.RotationOffset.W); | 1696 | return new LSL_Rotation(m_host.RotationOffset.X, m_host.RotationOffset.Y, m_host.RotationOffset.Z, m_host.RotationOffset.W); |
1640 | } | 1697 | } |
1641 | 1698 | ||
1642 | public void llSetForce(LSL_Types.Vector3 force, int local) | 1699 | public void llSetForce(LSL_Vector force, int local) |
1643 | { | 1700 | { |
1644 | m_host.AddScriptLPS(1); | 1701 | m_host.AddScriptLPS(1); |
1645 | 1702 | ||
@@ -1655,9 +1712,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1655 | } | 1712 | } |
1656 | } | 1713 | } |
1657 | 1714 | ||
1658 | public LSL_Types.Vector3 llGetForce() | 1715 | public LSL_Vector llGetForce() |
1659 | { | 1716 | { |
1660 | LSL_Types.Vector3 force = new LSL_Types.Vector3(0.0, 0.0, 0.0); | 1717 | LSL_Vector force = new LSL_Vector(0.0, 0.0, 0.0); |
1661 | 1718 | ||
1662 | m_host.AddScriptLPS(1); | 1719 | m_host.AddScriptLPS(1); |
1663 | 1720 | ||
@@ -1675,7 +1732,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1675 | return force; | 1732 | return force; |
1676 | } | 1733 | } |
1677 | 1734 | ||
1678 | public LSL_Types.LSLInteger llTarget(LSL_Types.Vector3 position, double range) | 1735 | public LSL_Integer llTarget(LSL_Vector position, double range) |
1679 | { | 1736 | { |
1680 | m_host.AddScriptLPS(1); | 1737 | m_host.AddScriptLPS(1); |
1681 | return m_host.registerTargetWaypoint(new Vector3((float)position.x, (float)position.y, (float)position.z), (float)range); | 1738 | return m_host.registerTargetWaypoint(new Vector3((float)position.x, (float)position.y, (float)position.z), (float)range); |
@@ -1687,7 +1744,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1687 | m_host.unregisterTargetWaypoint(number); | 1744 | m_host.unregisterTargetWaypoint(number); |
1688 | } | 1745 | } |
1689 | 1746 | ||
1690 | public LSL_Types.LSLInteger llRotTarget(LSL_Types.Quaternion rot, double error) | 1747 | public LSL_Integer llRotTarget(LSL_Rotation rot, double error) |
1691 | { | 1748 | { |
1692 | m_host.AddScriptLPS(1); | 1749 | m_host.AddScriptLPS(1); |
1693 | NotImplemented("llRotTarget"); | 1750 | NotImplemented("llRotTarget"); |
@@ -1700,7 +1757,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1700 | NotImplemented("llRotTargetRemove"); | 1757 | NotImplemented("llRotTargetRemove"); |
1701 | } | 1758 | } |
1702 | 1759 | ||
1703 | public void llMoveToTarget(LSL_Types.Vector3 target, double tau) | 1760 | public void llMoveToTarget(LSL_Vector target, double tau) |
1704 | { | 1761 | { |
1705 | m_host.AddScriptLPS(1); | 1762 | m_host.AddScriptLPS(1); |
1706 | m_host.MoveToTarget(new Vector3((float)target.x, (float)target.y, (float)target.z), (float)tau); | 1763 | m_host.MoveToTarget(new Vector3((float)target.x, (float)target.y, (float)target.z), (float)tau); |
@@ -1712,7 +1769,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1712 | m_host.StopMoveToTarget(); | 1769 | m_host.StopMoveToTarget(); |
1713 | } | 1770 | } |
1714 | 1771 | ||
1715 | public void llApplyImpulse(LSL_Types.Vector3 force, int local) | 1772 | public void llApplyImpulse(LSL_Vector force, int local) |
1716 | { | 1773 | { |
1717 | m_host.AddScriptLPS(1); | 1774 | m_host.AddScriptLPS(1); |
1718 | //No energy force yet | 1775 | //No energy force yet |
@@ -1727,62 +1784,62 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1727 | m_host.ApplyImpulse(new Vector3((float)force.x, (float)force.y, (float)force.z), local != 0); | 1784 | m_host.ApplyImpulse(new Vector3((float)force.x, (float)force.y, (float)force.z), local != 0); |
1728 | } | 1785 | } |
1729 | 1786 | ||
1730 | public void llApplyRotationalImpulse(LSL_Types.Vector3 force, int local) | 1787 | public void llApplyRotationalImpulse(LSL_Vector force, int local) |
1731 | { | 1788 | { |
1732 | m_host.AddScriptLPS(1); | 1789 | m_host.AddScriptLPS(1); |
1733 | NotImplemented("llApplyRotationalImpulse"); | 1790 | NotImplemented("llApplyRotationalImpulse"); |
1734 | } | 1791 | } |
1735 | 1792 | ||
1736 | public void llSetTorque(LSL_Types.Vector3 torque, int local) | 1793 | public void llSetTorque(LSL_Vector torque, int local) |
1737 | { | 1794 | { |
1738 | m_host.AddScriptLPS(1); | 1795 | m_host.AddScriptLPS(1); |
1739 | NotImplemented("llSetTorque"); | 1796 | NotImplemented("llSetTorque"); |
1740 | } | 1797 | } |
1741 | 1798 | ||
1742 | public LSL_Types.Vector3 llGetTorque() | 1799 | public LSL_Vector llGetTorque() |
1743 | { | 1800 | { |
1744 | m_host.AddScriptLPS(1); | 1801 | m_host.AddScriptLPS(1); |
1745 | NotImplemented("llGetTorque"); | 1802 | NotImplemented("llGetTorque"); |
1746 | return new LSL_Types.Vector3(); | 1803 | return new LSL_Vector(); |
1747 | } | 1804 | } |
1748 | 1805 | ||
1749 | public void llSetForceAndTorque(LSL_Types.Vector3 force, LSL_Types.Vector3 torque, int local) | 1806 | public void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local) |
1750 | { | 1807 | { |
1751 | m_host.AddScriptLPS(1); | 1808 | m_host.AddScriptLPS(1); |
1752 | NotImplemented("llSetForceAndTorque"); | 1809 | NotImplemented("llSetForceAndTorque"); |
1753 | } | 1810 | } |
1754 | 1811 | ||
1755 | public LSL_Types.Vector3 llGetVel() | 1812 | public LSL_Vector llGetVel() |
1756 | { | 1813 | { |
1757 | m_host.AddScriptLPS(1); | 1814 | m_host.AddScriptLPS(1); |
1758 | return new LSL_Types.Vector3(m_host.Velocity.X, m_host.Velocity.Y, m_host.Velocity.Z); | 1815 | return new LSL_Vector(m_host.Velocity.X, m_host.Velocity.Y, m_host.Velocity.Z); |
1759 | } | 1816 | } |
1760 | 1817 | ||
1761 | public LSL_Types.Vector3 llGetAccel() | 1818 | public LSL_Vector llGetAccel() |
1762 | { | 1819 | { |
1763 | m_host.AddScriptLPS(1); | 1820 | m_host.AddScriptLPS(1); |
1764 | return new LSL_Types.Vector3(m_host.Acceleration.X, m_host.Acceleration.Y, m_host.Acceleration.Z); | 1821 | return new LSL_Vector(m_host.Acceleration.X, m_host.Acceleration.Y, m_host.Acceleration.Z); |
1765 | } | 1822 | } |
1766 | 1823 | ||
1767 | public LSL_Types.Vector3 llGetOmega() | 1824 | public LSL_Vector llGetOmega() |
1768 | { | 1825 | { |
1769 | m_host.AddScriptLPS(1); | 1826 | m_host.AddScriptLPS(1); |
1770 | return new LSL_Types.Vector3(m_host.RotationalVelocity.X, m_host.RotationalVelocity.Y, m_host.RotationalVelocity.Z); | 1827 | return new LSL_Vector(m_host.RotationalVelocity.X, m_host.RotationalVelocity.Y, m_host.RotationalVelocity.Z); |
1771 | } | 1828 | } |
1772 | 1829 | ||
1773 | public LSL_Types.LSLFloat llGetTimeOfDay() | 1830 | public LSL_Float llGetTimeOfDay() |
1774 | { | 1831 | { |
1775 | m_host.AddScriptLPS(1); | 1832 | m_host.AddScriptLPS(1); |
1776 | return (double)(((DateTime.Now.TimeOfDay.TotalMilliseconds / 1000) % (3600 * 4)) * World.TimeDilation); | 1833 | return (double)(((DateTime.Now.TimeOfDay.TotalMilliseconds / 1000) % (3600 * 4)) * World.TimeDilation); |
1777 | } | 1834 | } |
1778 | 1835 | ||
1779 | public LSL_Types.LSLFloat llGetWallclock() | 1836 | public LSL_Float llGetWallclock() |
1780 | { | 1837 | { |
1781 | m_host.AddScriptLPS(1); | 1838 | m_host.AddScriptLPS(1); |
1782 | return DateTime.Now.TimeOfDay.TotalSeconds; | 1839 | return DateTime.Now.TimeOfDay.TotalSeconds; |
1783 | } | 1840 | } |
1784 | 1841 | ||
1785 | public LSL_Types.LSLFloat llGetTime() | 1842 | public LSL_Float llGetTime() |
1786 | { | 1843 | { |
1787 | m_host.AddScriptLPS(1); | 1844 | m_host.AddScriptLPS(1); |
1788 | TimeSpan ScriptTime = DateTime.Now - m_timer; | 1845 | TimeSpan ScriptTime = DateTime.Now - m_timer; |
@@ -1795,7 +1852,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1795 | m_timer = DateTime.Now; | 1852 | m_timer = DateTime.Now; |
1796 | } | 1853 | } |
1797 | 1854 | ||
1798 | public LSL_Types.LSLFloat llGetAndResetTime() | 1855 | public LSL_Float llGetAndResetTime() |
1799 | { | 1856 | { |
1800 | m_host.AddScriptLPS(1); | 1857 | m_host.AddScriptLPS(1); |
1801 | TimeSpan ScriptTime = DateTime.Now - m_timer; | 1858 | TimeSpan ScriptTime = DateTime.Now - m_timer; |
@@ -1900,7 +1957,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1900 | /// this more complicated than it might otherwise seem. | 1957 | /// this more complicated than it might otherwise seem. |
1901 | /// </summary> | 1958 | /// </summary> |
1902 | 1959 | ||
1903 | public LSL_Types.LSLString llGetSubString(string src, int start, int end) | 1960 | public LSL_String llGetSubString(string src, int start, int end) |
1904 | { | 1961 | { |
1905 | 1962 | ||
1906 | m_host.AddScriptLPS(1); | 1963 | m_host.AddScriptLPS(1); |
@@ -1996,7 +2053,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1996 | /// i.e. end < start. | 2053 | /// i.e. end < start. |
1997 | /// </summary> | 2054 | /// </summary> |
1998 | 2055 | ||
1999 | public LSL_Types.LSLString llDeleteSubString(string src, int start, int end) | 2056 | public LSL_String llDeleteSubString(string src, int start, int end) |
2000 | { | 2057 | { |
2001 | 2058 | ||
2002 | m_host.AddScriptLPS(1); | 2059 | m_host.AddScriptLPS(1); |
@@ -2079,7 +2136,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2079 | /// string bound, with the result being a concatenation. | 2136 | /// string bound, with the result being a concatenation. |
2080 | /// </summary> | 2137 | /// </summary> |
2081 | 2138 | ||
2082 | public LSL_Types.LSLString llInsertString(string dest, int index, string src) | 2139 | public LSL_String llInsertString(string dest, int index, string src) |
2083 | { | 2140 | { |
2084 | 2141 | ||
2085 | m_host.AddScriptLPS(1); | 2142 | m_host.AddScriptLPS(1); |
@@ -2117,19 +2174,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2117 | 2174 | ||
2118 | } | 2175 | } |
2119 | 2176 | ||
2120 | public LSL_Types.LSLString llToUpper(string src) | 2177 | public LSL_String llToUpper(string src) |
2121 | { | 2178 | { |
2122 | m_host.AddScriptLPS(1); | 2179 | m_host.AddScriptLPS(1); |
2123 | return src.ToUpper(); | 2180 | return src.ToUpper(); |
2124 | } | 2181 | } |
2125 | 2182 | ||
2126 | public LSL_Types.LSLString llToLower(string src) | 2183 | public LSL_String llToLower(string src) |
2127 | { | 2184 | { |
2128 | m_host.AddScriptLPS(1); | 2185 | m_host.AddScriptLPS(1); |
2129 | return src.ToLower(); | 2186 | return src.ToLower(); |
2130 | } | 2187 | } |
2131 | 2188 | ||
2132 | public LSL_Types.LSLInteger llGiveMoney(string destination, int amount) | 2189 | public LSL_Integer llGiveMoney(string destination, int amount) |
2133 | { | 2190 | { |
2134 | UUID invItemID=InventorySelf(); | 2191 | UUID invItemID=InventorySelf(); |
2135 | if (invItemID == UUID.Zero) | 2192 | if (invItemID == UUID.Zero) |
@@ -2198,7 +2255,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2198 | // ScriptSleep(100); | 2255 | // ScriptSleep(100); |
2199 | } | 2256 | } |
2200 | 2257 | ||
2201 | public void llRezAtRoot(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param) | 2258 | public void llRezAtRoot(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
2202 | { | 2259 | { |
2203 | m_host.AddScriptLPS(1); | 2260 | m_host.AddScriptLPS(1); |
2204 | 2261 | ||
@@ -2244,14 +2301,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2244 | 2301 | ||
2245 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2302 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2246 | "object_rez", new Object[] { | 2303 | "object_rez", new Object[] { |
2247 | new LSL_Types.LSLString( | 2304 | new LSL_String( |
2248 | new_group.RootPart.UUID.ToString()) }, | 2305 | new_group.RootPart.UUID.ToString()) }, |
2249 | new DetectParams[0])); | 2306 | new DetectParams[0])); |
2250 | 2307 | ||
2251 | float groupmass = new_group.GetMass(); | 2308 | float groupmass = new_group.GetMass(); |
2252 | 2309 | ||
2253 | //Recoil. | 2310 | //Recoil. |
2254 | llApplyImpulse(new LSL_Types.Vector3(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0); | 2311 | llApplyImpulse(new LSL_Vector(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0); |
2255 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) | 2312 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) |
2256 | ScriptSleep((int)((groupmass * velmag) / 10)); | 2313 | ScriptSleep((int)((groupmass * velmag) / 10)); |
2257 | // ScriptSleep(100); | 2314 | // ScriptSleep(100); |
@@ -2261,12 +2318,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2261 | llSay(0, "Could not find object " + inventory); | 2318 | llSay(0, "Could not find object " + inventory); |
2262 | } | 2319 | } |
2263 | 2320 | ||
2264 | public void llRezObject(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param) | 2321 | public void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
2265 | { | 2322 | { |
2266 | llRezAtRoot(inventory, pos, vel, rot, param); | 2323 | llRezAtRoot(inventory, pos, vel, rot, param); |
2267 | } | 2324 | } |
2268 | 2325 | ||
2269 | public void llLookAt(LSL_Types.Vector3 target, double strength, double damping) | 2326 | public void llLookAt(LSL_Vector target, double strength, double damping) |
2270 | { | 2327 | { |
2271 | m_host.AddScriptLPS(1); | 2328 | m_host.AddScriptLPS(1); |
2272 | NotImplemented("llLookAt"); | 2329 | NotImplemented("llLookAt"); |
@@ -2291,7 +2348,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2291 | Thread.Sleep((int)(sec * 1000)); | 2348 | Thread.Sleep((int)(sec * 1000)); |
2292 | } | 2349 | } |
2293 | 2350 | ||
2294 | public LSL_Types.LSLFloat llGetMass() | 2351 | public LSL_Float llGetMass() |
2295 | { | 2352 | { |
2296 | m_host.AddScriptLPS(1); | 2353 | m_host.AddScriptLPS(1); |
2297 | return m_host.GetMass(); | 2354 | return m_host.GetMass(); |
@@ -2325,7 +2382,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2325 | } | 2382 | } |
2326 | 2383 | ||
2327 | m_host.AddScriptLPS(1); | 2384 | m_host.AddScriptLPS(1); |
2328 | //NotImplemented("llTakeControls"); | ||
2329 | } | 2385 | } |
2330 | 2386 | ||
2331 | public void llReleaseControls() | 2387 | public void llReleaseControls() |
@@ -2378,7 +2434,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2378 | Deprecated("llReleaseCamera"); | 2434 | Deprecated("llReleaseCamera"); |
2379 | } | 2435 | } |
2380 | 2436 | ||
2381 | public LSL_Types.LSLString llGetOwner() | 2437 | public LSL_String llGetOwner() |
2382 | { | 2438 | { |
2383 | m_host.AddScriptLPS(1); | 2439 | m_host.AddScriptLPS(1); |
2384 | 2440 | ||
@@ -2428,8 +2484,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2428 | msg.binaryBucket = new byte[0];// binaryBucket; | 2484 | msg.binaryBucket = new byte[0];// binaryBucket; |
2429 | World.TriggerGridInstantMessage(msg, InstantMessageReceiver.IMModule); | 2485 | World.TriggerGridInstantMessage(msg, InstantMessageReceiver.IMModule); |
2430 | // ScriptSleep(2000); | 2486 | // ScriptSleep(2000); |
2431 | |||
2432 | // NotImplemented("llInstantMessage"); | ||
2433 | } | 2487 | } |
2434 | 2488 | ||
2435 | public void llEmail(string address, string subject, string message) | 2489 | public void llEmail(string address, string subject, string message) |
@@ -2459,16 +2513,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2459 | m_ScriptEngine.PostObjectEvent(m_host.LocalId, | 2513 | m_ScriptEngine.PostObjectEvent(m_host.LocalId, |
2460 | new EventParams("email", | 2514 | new EventParams("email", |
2461 | new Object[] { | 2515 | new Object[] { |
2462 | new LSL_Types.LSLString(email.time), | 2516 | new LSL_String(email.time), |
2463 | new LSL_Types.LSLString(email.sender), | 2517 | new LSL_String(email.sender), |
2464 | new LSL_Types.LSLString(email.subject), | 2518 | new LSL_String(email.subject), |
2465 | new LSL_Types.LSLString(email.message), | 2519 | new LSL_String(email.message), |
2466 | new LSL_Types.LSLInteger(email.numLeft)}, | 2520 | new LSL_Integer(email.numLeft)}, |
2467 | new DetectParams[0])); | 2521 | new DetectParams[0])); |
2468 | 2522 | ||
2469 | } | 2523 | } |
2470 | 2524 | ||
2471 | public LSL_Types.LSLString llGetKey() | 2525 | public LSL_String llGetKey() |
2472 | { | 2526 | { |
2473 | m_host.AddScriptLPS(1); | 2527 | m_host.AddScriptLPS(1); |
2474 | return m_host.UUID.ToString(); | 2528 | return m_host.UUID.ToString(); |
@@ -2512,13 +2566,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2512 | NotImplemented("llSoundPreload"); | 2566 | NotImplemented("llSoundPreload"); |
2513 | } | 2567 | } |
2514 | 2568 | ||
2515 | public void llRotLookAt(LSL_Types.Quaternion target, double strength, double damping) | 2569 | public void llRotLookAt(LSL_Rotation target, double strength, double damping) |
2516 | { | 2570 | { |
2517 | m_host.AddScriptLPS(1); | 2571 | m_host.AddScriptLPS(1); |
2518 | NotImplemented("llRotLookAt"); | 2572 | NotImplemented("llRotLookAt"); |
2519 | } | 2573 | } |
2520 | 2574 | ||
2521 | public LSL_Types.LSLInteger llStringLength(string str) | 2575 | public LSL_Integer llStringLength(string str) |
2522 | { | 2576 | { |
2523 | m_host.AddScriptLPS(1); | 2577 | m_host.AddScriptLPS(1); |
2524 | if (str.Length > 0) | 2578 | if (str.Length > 0) |
@@ -2602,7 +2656,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2602 | NotImplemented("llStopPointAt"); | 2656 | NotImplemented("llStopPointAt"); |
2603 | } | 2657 | } |
2604 | 2658 | ||
2605 | public void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain) | 2659 | public void llTargetOmega(LSL_Vector axis, double spinrate, double gain) |
2606 | { | 2660 | { |
2607 | m_host.AddScriptLPS(1); | 2661 | m_host.AddScriptLPS(1); |
2608 | m_host.RotationalVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); | 2662 | m_host.RotationalVelocity = new Vector3((float)(axis.x * spinrate), (float)(axis.y * spinrate), (float)(axis.z * spinrate)); |
@@ -2612,13 +2666,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2612 | m_host.ParentGroup.HasGroupChanged = true; | 2666 | m_host.ParentGroup.HasGroupChanged = true; |
2613 | } | 2667 | } |
2614 | 2668 | ||
2615 | public LSL_Types.LSLInteger llGetStartParameter() | 2669 | public LSL_Integer llGetStartParameter() |
2616 | { | 2670 | { |
2617 | m_host.AddScriptLPS(1); | 2671 | m_host.AddScriptLPS(1); |
2618 | return m_ScriptEngine.GetStartParameter(m_itemID); | 2672 | return m_ScriptEngine.GetStartParameter(m_itemID); |
2619 | } | 2673 | } |
2620 | 2674 | ||
2621 | public void llGodLikeRezObject(string inventory, LSL_Types.Vector3 pos) | 2675 | public void llGodLikeRezObject(string inventory, LSL_Vector pos) |
2622 | { | 2676 | { |
2623 | m_host.AddScriptLPS(1); | 2677 | m_host.AddScriptLPS(1); |
2624 | NotImplemented("llGodLikeRezObject"); | 2678 | NotImplemented("llGodLikeRezObject"); |
@@ -2645,7 +2699,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2645 | 2699 | ||
2646 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2700 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2647 | "run_time_permissions", new Object[] { | 2701 | "run_time_permissions", new Object[] { |
2648 | new LSL_Types.LSLInteger(0) }, | 2702 | new LSL_Integer(0) }, |
2649 | new DetectParams[0])); | 2703 | new DetectParams[0])); |
2650 | 2704 | ||
2651 | return; | 2705 | return; |
@@ -2671,7 +2725,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2671 | 2725 | ||
2672 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2726 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2673 | "run_time_permissions", new Object[] { | 2727 | "run_time_permissions", new Object[] { |
2674 | new LSL_Types.LSLInteger(perm) }, | 2728 | new LSL_Integer(perm) }, |
2675 | new DetectParams[0])); | 2729 | new DetectParams[0])); |
2676 | 2730 | ||
2677 | return; | 2731 | return; |
@@ -2691,7 +2745,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2691 | 2745 | ||
2692 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2746 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2693 | "run_time_permissions", new Object[] { | 2747 | "run_time_permissions", new Object[] { |
2694 | new LSL_Types.LSLInteger(perm) }, | 2748 | new LSL_Integer(perm) }, |
2695 | new DetectParams[0])); | 2749 | new DetectParams[0])); |
2696 | 2750 | ||
2697 | return; | 2751 | return; |
@@ -2721,7 +2775,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2721 | // Requested agent is not in range, refuse perms | 2775 | // Requested agent is not in range, refuse perms |
2722 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2776 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2723 | "run_time_permissions", new Object[] { | 2777 | "run_time_permissions", new Object[] { |
2724 | new LSL_Types.LSLInteger(0) }, | 2778 | new LSL_Integer(0) }, |
2725 | new DetectParams[0])); | 2779 | new DetectParams[0])); |
2726 | } | 2780 | } |
2727 | 2781 | ||
@@ -2744,11 +2798,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2744 | m_host.TaskInventory[invItemID].PermsMask=answer; | 2798 | m_host.TaskInventory[invItemID].PermsMask=answer; |
2745 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 2799 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
2746 | "run_time_permissions", new Object[] { | 2800 | "run_time_permissions", new Object[] { |
2747 | new LSL_Types.LSLInteger(answer) }, | 2801 | new LSL_Integer(answer) }, |
2748 | new DetectParams[0])); | 2802 | new DetectParams[0])); |
2749 | } | 2803 | } |
2750 | 2804 | ||
2751 | public LSL_Types.LSLString llGetPermissionsKey() | 2805 | public LSL_String llGetPermissionsKey() |
2752 | { | 2806 | { |
2753 | m_host.AddScriptLPS(1); | 2807 | m_host.AddScriptLPS(1); |
2754 | 2808 | ||
@@ -2763,7 +2817,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2763 | return UUID.Zero.ToString(); | 2817 | return UUID.Zero.ToString(); |
2764 | } | 2818 | } |
2765 | 2819 | ||
2766 | public LSL_Types.LSLInteger llGetPermissions() | 2820 | public LSL_Integer llGetPermissions() |
2767 | { | 2821 | { |
2768 | m_host.AddScriptLPS(1); | 2822 | m_host.AddScriptLPS(1); |
2769 | 2823 | ||
@@ -2778,7 +2832,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2778 | return 0; | 2832 | return 0; |
2779 | } | 2833 | } |
2780 | 2834 | ||
2781 | public LSL_Types.LSLInteger llGetLinkNumber() | 2835 | public LSL_Integer llGetLinkNumber() |
2782 | { | 2836 | { |
2783 | m_host.AddScriptLPS(1); | 2837 | m_host.AddScriptLPS(1); |
2784 | 2838 | ||
@@ -2792,7 +2846,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2792 | } | 2846 | } |
2793 | } | 2847 | } |
2794 | 2848 | ||
2795 | public void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face) | 2849 | public void llSetLinkColor(int linknumber, LSL_Vector color, int face) |
2796 | { | 2850 | { |
2797 | List<SceneObjectPart> parts = GetLinkParts(linknumber); | 2851 | List<SceneObjectPart> parts = GetLinkParts(linknumber); |
2798 | 2852 | ||
@@ -2915,7 +2969,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2915 | } | 2969 | } |
2916 | } | 2970 | } |
2917 | 2971 | ||
2918 | public LSL_Types.LSLString llGetLinkKey(int linknum) | 2972 | public LSL_String llGetLinkKey(int linknum) |
2919 | { | 2973 | { |
2920 | m_host.AddScriptLPS(1); | 2974 | m_host.AddScriptLPS(1); |
2921 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); | 2975 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
@@ -2929,7 +2983,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2929 | } | 2983 | } |
2930 | } | 2984 | } |
2931 | 2985 | ||
2932 | public LSL_Types.LSLString llGetLinkName(int linknum) | 2986 | public LSL_String llGetLinkName(int linknum) |
2933 | { | 2987 | { |
2934 | m_host.AddScriptLPS(1); | 2988 | m_host.AddScriptLPS(1); |
2935 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); | 2989 | SceneObjectPart part = m_host.ParentGroup.GetLinkNumPart(linknum); |
@@ -2943,7 +2997,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2943 | } | 2997 | } |
2944 | } | 2998 | } |
2945 | 2999 | ||
2946 | public LSL_Types.LSLInteger llGetInventoryNumber(int type) | 3000 | public LSL_Integer llGetInventoryNumber(int type) |
2947 | { | 3001 | { |
2948 | m_host.AddScriptLPS(1); | 3002 | m_host.AddScriptLPS(1); |
2949 | int count = 0; | 3003 | int count = 0; |
@@ -2957,7 +3011,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2957 | return count; | 3011 | return count; |
2958 | } | 3012 | } |
2959 | 3013 | ||
2960 | public LSL_Types.LSLString llGetInventoryName(int type, int number) | 3014 | public LSL_String llGetInventoryName(int type, int number) |
2961 | { | 3015 | { |
2962 | m_host.AddScriptLPS(1); | 3016 | m_host.AddScriptLPS(1); |
2963 | ArrayList keys = new ArrayList(); | 3017 | ArrayList keys = new ArrayList(); |
@@ -2999,7 +3053,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2999 | } | 3053 | } |
3000 | } | 3054 | } |
3001 | 3055 | ||
3002 | public LSL_Types.LSLFloat llGetEnergy() | 3056 | public LSL_Float llGetEnergy() |
3003 | { | 3057 | { |
3004 | m_host.AddScriptLPS(1); | 3058 | m_host.AddScriptLPS(1); |
3005 | // TODO: figure out real energy value | 3059 | // TODO: figure out real energy value |
@@ -3063,7 +3117,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3063 | } | 3117 | } |
3064 | } | 3118 | } |
3065 | 3119 | ||
3066 | public void llSetText(string text, LSL_Types.Vector3 color, double alpha) | 3120 | public void llSetText(string text, LSL_Vector color, double alpha) |
3067 | { | 3121 | { |
3068 | m_host.AddScriptLPS(1); | 3122 | m_host.AddScriptLPS(1); |
3069 | Vector3 av3 = new Vector3(Util.Clip((float)color.x, 0.0f, 1.0f), | 3123 | Vector3 av3 = new Vector3(Util.Clip((float)color.x, 0.0f, 1.0f), |
@@ -3073,7 +3127,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3073 | m_host.ParentGroup.HasGroupChanged = true; | 3127 | m_host.ParentGroup.HasGroupChanged = true; |
3074 | } | 3128 | } |
3075 | 3129 | ||
3076 | public LSL_Types.LSLFloat llWater(LSL_Types.Vector3 offset) | 3130 | public LSL_Float llWater(LSL_Vector offset) |
3077 | { | 3131 | { |
3078 | m_host.AddScriptLPS(1); | 3132 | m_host.AddScriptLPS(1); |
3079 | return World.RegionInfo.RegionSettings.WaterHeight; | 3133 | return World.RegionInfo.RegionSettings.WaterHeight; |
@@ -3085,7 +3139,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3085 | NotImplemented("llPassTouches"); | 3139 | NotImplemented("llPassTouches"); |
3086 | } | 3140 | } |
3087 | 3141 | ||
3088 | public LSL_Types.LSLString llRequestAgentData(string id, int data) | 3142 | public LSL_String llRequestAgentData(string id, int data) |
3089 | { | 3143 | { |
3090 | m_host.AddScriptLPS(1); | 3144 | m_host.AddScriptLPS(1); |
3091 | 3145 | ||
@@ -3140,7 +3194,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3140 | return tid.ToString(); | 3194 | return tid.ToString(); |
3141 | } | 3195 | } |
3142 | 3196 | ||
3143 | public LSL_Types.LSLString llRequestInventoryData(string name) | 3197 | public LSL_String llRequestInventoryData(string name) |
3144 | { | 3198 | { |
3145 | m_host.AddScriptLPS(1); | 3199 | m_host.AddScriptLPS(1); |
3146 | 3200 | ||
@@ -3203,6 +3257,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3203 | // ScriptSleep(5000); | 3257 | // ScriptSleep(5000); |
3204 | } | 3258 | } |
3205 | 3259 | ||
3260 | public void llTextBox(string avatar, string message, int chat_channel) | ||
3261 | { | ||
3262 | m_host.AddScriptLPS(1); | ||
3263 | NotImplemented("llTextBox"); | ||
3264 | } | ||
3265 | |||
3206 | public void llModifyLand(int action, int brush) | 3266 | public void llModifyLand(int action, int brush) |
3207 | { | 3267 | { |
3208 | m_host.AddScriptLPS(1); | 3268 | m_host.AddScriptLPS(1); |
@@ -3221,7 +3281,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3221 | NotImplemented("llCollisionSprite"); | 3281 | NotImplemented("llCollisionSprite"); |
3222 | } | 3282 | } |
3223 | 3283 | ||
3224 | public LSL_Types.LSLString llGetAnimation(string id) | 3284 | public LSL_String llGetAnimation(string id) |
3225 | { | 3285 | { |
3226 | m_host.AddScriptLPS(1); | 3286 | m_host.AddScriptLPS(1); |
3227 | NotImplemented("llGetAnimation"); | 3287 | NotImplemented("llGetAnimation"); |
@@ -3259,7 +3319,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3259 | 3319 | ||
3260 | object[] resobj = new object[] | 3320 | object[] resobj = new object[] |
3261 | { | 3321 | { |
3262 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3322 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3263 | }; | 3323 | }; |
3264 | 3324 | ||
3265 | m_ScriptEngine.PostScriptEvent(partItemID, | 3325 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3283,7 +3343,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3283 | partItemID = item.ItemID; | 3343 | partItemID = item.ItemID; |
3284 | Object[] resobj = new object[] | 3344 | Object[] resobj = new object[] |
3285 | { | 3345 | { |
3286 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3346 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3287 | }; | 3347 | }; |
3288 | 3348 | ||
3289 | m_ScriptEngine.PostScriptEvent(partItemID, | 3349 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3311,7 +3371,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3311 | partItemID = item.ItemID; | 3371 | partItemID = item.ItemID; |
3312 | Object[] resobj = new object[] | 3372 | Object[] resobj = new object[] |
3313 | { | 3373 | { |
3314 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3374 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3315 | }; | 3375 | }; |
3316 | 3376 | ||
3317 | m_ScriptEngine.PostScriptEvent(partItemID, | 3377 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3341,7 +3401,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3341 | partItemID = item.ItemID; | 3401 | partItemID = item.ItemID; |
3342 | Object[] resobj = new object[] | 3402 | Object[] resobj = new object[] |
3343 | { | 3403 | { |
3344 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3404 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3345 | }; | 3405 | }; |
3346 | 3406 | ||
3347 | m_ScriptEngine.PostScriptEvent(partItemID, | 3407 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3365,7 +3425,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3365 | 3425 | ||
3366 | object[] resobj = new object[] | 3426 | object[] resobj = new object[] |
3367 | { | 3427 | { |
3368 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3428 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3369 | }; | 3429 | }; |
3370 | 3430 | ||
3371 | m_ScriptEngine.PostScriptEvent(partItemID, | 3431 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3392,7 +3452,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3392 | partItemID = item.ItemID; | 3452 | partItemID = item.ItemID; |
3393 | Object[] resObjDef = new object[] | 3453 | Object[] resObjDef = new object[] |
3394 | { | 3454 | { |
3395 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3455 | new LSL_Integer(m_host.LinkNum), new LSL_Integer(num), new LSL_String(msg), new LSL_String(id) |
3396 | }; | 3456 | }; |
3397 | 3457 | ||
3398 | m_ScriptEngine.PostScriptEvent(partItemID, | 3458 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3410,7 +3470,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3410 | 3470 | ||
3411 | } | 3471 | } |
3412 | 3472 | ||
3413 | public void llPushObject(string target, LSL_Types.Vector3 impulse, LSL_Types.Vector3 ang_impulse, int local) | 3473 | public void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local) |
3414 | { | 3474 | { |
3415 | m_host.AddScriptLPS(1); | 3475 | m_host.AddScriptLPS(1); |
3416 | SceneObjectPart targ = World.GetSceneObjectPart(target); | 3476 | SceneObjectPart targ = World.GetSceneObjectPart(target); |
@@ -3425,7 +3485,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3425 | NotImplemented("llPassCollisions"); | 3485 | NotImplemented("llPassCollisions"); |
3426 | } | 3486 | } |
3427 | 3487 | ||
3428 | public LSL_Types.LSLString llGetScriptName() | 3488 | public LSL_String llGetScriptName() |
3429 | { | 3489 | { |
3430 | 3490 | ||
3431 | string result = String.Empty; | 3491 | string result = String.Empty; |
@@ -3502,7 +3562,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3502 | 3562 | ||
3503 | } | 3563 | } |
3504 | 3564 | ||
3505 | public LSL_Types.LSLInteger llGetNumberOfSides() | 3565 | public LSL_Integer llGetNumberOfSides() |
3506 | { | 3566 | { |
3507 | m_host.AddScriptLPS(1); | 3567 | m_host.AddScriptLPS(1); |
3508 | 3568 | ||
@@ -3597,7 +3657,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3597 | // Xantor 29/apr/2008 | 3657 | // Xantor 29/apr/2008 |
3598 | // Returns rotation described by rotating angle radians about axis. | 3658 | // Returns rotation described by rotating angle radians about axis. |
3599 | // q = cos(a/2) + i (x * sin(a/2)) + j (y * sin(a/2)) + k (z * sin(a/2)) | 3659 | // q = cos(a/2) + i (x * sin(a/2)) + j (y * sin(a/2)) + k (z * sin(a/2)) |
3600 | public LSL_Types.Quaternion llAxisAngle2Rot(LSL_Types.Vector3 axis, double angle) | 3660 | public LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle) |
3601 | { | 3661 | { |
3602 | m_host.AddScriptLPS(1); | 3662 | m_host.AddScriptLPS(1); |
3603 | 3663 | ||
@@ -3609,13 +3669,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3609 | y = axis.y * t; | 3669 | y = axis.y * t; |
3610 | z = axis.z * t; | 3670 | z = axis.z * t; |
3611 | 3671 | ||
3612 | return new LSL_Types.Quaternion(x,y,z,s); | 3672 | return new LSL_Rotation(x,y,z,s); |
3613 | } | 3673 | } |
3614 | 3674 | ||
3615 | 3675 | ||
3616 | // Xantor 29/apr/2008 | 3676 | // Xantor 29/apr/2008 |
3617 | // converts a Quaternion to X,Y,Z axis rotations | 3677 | // converts a Quaternion to X,Y,Z axis rotations |
3618 | public LSL_Types.Vector3 llRot2Axis(LSL_Types.Quaternion rot) | 3678 | public LSL_Vector llRot2Axis(LSL_Rotation rot) |
3619 | { | 3679 | { |
3620 | m_host.AddScriptLPS(1); | 3680 | m_host.AddScriptLPS(1); |
3621 | double x,y,z; | 3681 | double x,y,z; |
@@ -3646,12 +3706,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3646 | z = rot.z / s; | 3706 | z = rot.z / s; |
3647 | } | 3707 | } |
3648 | 3708 | ||
3649 | return new LSL_Types.Vector3(x,y,z); | 3709 | return new LSL_Vector(x,y,z); |
3650 | } | 3710 | } |
3651 | 3711 | ||
3652 | 3712 | ||
3653 | // Returns the angle of a quaternion (see llRot2Axis for the axis) | 3713 | // Returns the angle of a quaternion (see llRot2Axis for the axis) |
3654 | public LSL_Types.LSLFloat llRot2Angle(LSL_Types.Quaternion rot) | 3714 | public LSL_Float llRot2Angle(LSL_Rotation rot) |
3655 | { | 3715 | { |
3656 | m_host.AddScriptLPS(1); | 3716 | m_host.AddScriptLPS(1); |
3657 | 3717 | ||
@@ -3671,27 +3731,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3671 | return angle; | 3731 | return angle; |
3672 | } | 3732 | } |
3673 | 3733 | ||
3674 | public LSL_Types.LSLFloat llAcos(double val) | 3734 | public LSL_Float llAcos(double val) |
3675 | { | 3735 | { |
3676 | m_host.AddScriptLPS(1); | 3736 | m_host.AddScriptLPS(1); |
3677 | return (double)Math.Acos(val); | 3737 | return (double)Math.Acos(val); |
3678 | } | 3738 | } |
3679 | 3739 | ||
3680 | public LSL_Types.LSLFloat llAsin(double val) | 3740 | public LSL_Float llAsin(double val) |
3681 | { | 3741 | { |
3682 | m_host.AddScriptLPS(1); | 3742 | m_host.AddScriptLPS(1); |
3683 | return (double)Math.Asin(val); | 3743 | return (double)Math.Asin(val); |
3684 | } | 3744 | } |
3685 | 3745 | ||
3686 | // Xantor 30/apr/2008 | 3746 | // Xantor 30/apr/2008 |
3687 | public LSL_Types.LSLFloat llAngleBetween(LSL_Types.Quaternion a, LSL_Types.Quaternion b) | 3747 | public LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b) |
3688 | { | 3748 | { |
3689 | m_host.AddScriptLPS(1); | 3749 | m_host.AddScriptLPS(1); |
3690 | 3750 | ||
3691 | return (double) Math.Acos(a.x * b.x + a.y * b.y + a.z * b.z + a.s * b.s) * 2; | 3751 | return (double) Math.Acos(a.x * b.x + a.y * b.y + a.z * b.z + a.s * b.s) * 2; |
3692 | } | 3752 | } |
3693 | 3753 | ||
3694 | public LSL_Types.LSLString llGetInventoryKey(string name) | 3754 | public LSL_String llGetInventoryKey(string name) |
3695 | { | 3755 | { |
3696 | m_host.AddScriptLPS(1); | 3756 | m_host.AddScriptLPS(1); |
3697 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 3757 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -3721,15 +3781,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3721 | m_host.ParentGroup.RootPart.AllowedDrop = false; | 3781 | m_host.ParentGroup.RootPart.AllowedDrop = false; |
3722 | } | 3782 | } |
3723 | 3783 | ||
3724 | public LSL_Types.Vector3 llGetSunDirection() | 3784 | public LSL_Vector llGetSunDirection() |
3725 | { | 3785 | { |
3726 | m_host.AddScriptLPS(1); | 3786 | m_host.AddScriptLPS(1); |
3727 | 3787 | ||
3728 | LSL_Types.Vector3 SunDoubleVector3; | 3788 | LSL_Vector SunDoubleVector3; |
3729 | Vector3 SunFloatVector3; | 3789 | Vector3 SunFloatVector3; |
3730 | 3790 | ||
3731 | // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule | 3791 | // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule |
3732 | // have to convert from Vector3 (float) to LSL_Types.Vector3 (double) | 3792 | // have to convert from Vector3 (float) to LSL_Vector (double) |
3733 | SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector; | 3793 | SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector; |
3734 | SunDoubleVector3.x = (double)SunFloatVector3.X; | 3794 | SunDoubleVector3.x = (double)SunFloatVector3.X; |
3735 | SunDoubleVector3.y = (double)SunFloatVector3.Y; | 3795 | SunDoubleVector3.y = (double)SunFloatVector3.Y; |
@@ -3738,16 +3798,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3738 | return SunDoubleVector3; | 3798 | return SunDoubleVector3; |
3739 | } | 3799 | } |
3740 | 3800 | ||
3741 | public LSL_Types.Vector3 llGetTextureOffset(int face) | 3801 | public LSL_Vector llGetTextureOffset(int face) |
3742 | { | 3802 | { |
3743 | m_host.AddScriptLPS(1); | 3803 | m_host.AddScriptLPS(1); |
3744 | return GetTextureOffset(m_host, face); | 3804 | return GetTextureOffset(m_host, face); |
3745 | } | 3805 | } |
3746 | 3806 | ||
3747 | private LSL_Types.Vector3 GetTextureOffset(SceneObjectPart part, int face) | 3807 | private LSL_Vector GetTextureOffset(SceneObjectPart part, int face) |
3748 | { | 3808 | { |
3749 | Primitive.TextureEntry tex = part.Shape.Textures; | 3809 | Primitive.TextureEntry tex = part.Shape.Textures; |
3750 | LSL_Types.Vector3 offset = new LSL_Types.Vector3(); | 3810 | LSL_Vector offset = new LSL_Vector(); |
3751 | if (face == ScriptBaseClass.ALL_SIDES) | 3811 | if (face == ScriptBaseClass.ALL_SIDES) |
3752 | { | 3812 | { |
3753 | face = 0; | 3813 | face = 0; |
@@ -3765,11 +3825,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3765 | } | 3825 | } |
3766 | } | 3826 | } |
3767 | 3827 | ||
3768 | public LSL_Types.Vector3 llGetTextureScale(int side) | 3828 | public LSL_Vector llGetTextureScale(int side) |
3769 | { | 3829 | { |
3770 | m_host.AddScriptLPS(1); | 3830 | m_host.AddScriptLPS(1); |
3771 | Primitive.TextureEntry tex = m_host.Shape.Textures; | 3831 | Primitive.TextureEntry tex = m_host.Shape.Textures; |
3772 | LSL_Types.Vector3 scale; | 3832 | LSL_Vector scale; |
3773 | if (side == -1) | 3833 | if (side == -1) |
3774 | { | 3834 | { |
3775 | side = 0; | 3835 | side = 0; |
@@ -3780,13 +3840,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3780 | return scale; | 3840 | return scale; |
3781 | } | 3841 | } |
3782 | 3842 | ||
3783 | public LSL_Types.LSLFloat llGetTextureRot(int face) | 3843 | public LSL_Float llGetTextureRot(int face) |
3784 | { | 3844 | { |
3785 | m_host.AddScriptLPS(1); | 3845 | m_host.AddScriptLPS(1); |
3786 | return GetTextureRot(m_host, face); | 3846 | return GetTextureRot(m_host, face); |
3787 | } | 3847 | } |
3788 | 3848 | ||
3789 | private LSL_Types.LSLFloat GetTextureRot(SceneObjectPart part, int face) | 3849 | private LSL_Float GetTextureRot(SceneObjectPart part, int face) |
3790 | { | 3850 | { |
3791 | Primitive.TextureEntry tex = part.Shape.Textures; | 3851 | Primitive.TextureEntry tex = part.Shape.Textures; |
3792 | if (face == -1) | 3852 | if (face == -1) |
@@ -3803,13 +3863,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3803 | } | 3863 | } |
3804 | } | 3864 | } |
3805 | 3865 | ||
3806 | public LSL_Types.LSLInteger llSubStringIndex(string source, string pattern) | 3866 | public LSL_Integer llSubStringIndex(string source, string pattern) |
3807 | { | 3867 | { |
3808 | m_host.AddScriptLPS(1); | 3868 | m_host.AddScriptLPS(1); |
3809 | return source.IndexOf(pattern); | 3869 | return source.IndexOf(pattern); |
3810 | } | 3870 | } |
3811 | 3871 | ||
3812 | public LSL_Types.LSLString llGetOwnerKey(string id) | 3872 | public LSL_String llGetOwnerKey(string id) |
3813 | { | 3873 | { |
3814 | m_host.AddScriptLPS(1); | 3874 | m_host.AddScriptLPS(1); |
3815 | UUID key = new UUID(); | 3875 | UUID key = new UUID(); |
@@ -3834,14 +3894,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3834 | } | 3894 | } |
3835 | } | 3895 | } |
3836 | 3896 | ||
3837 | public LSL_Types.Vector3 llGetCenterOfMass() | 3897 | public LSL_Vector llGetCenterOfMass() |
3838 | { | 3898 | { |
3839 | m_host.AddScriptLPS(1); | 3899 | m_host.AddScriptLPS(1); |
3840 | NotImplemented("llGetCenterOfMass"); | 3900 | NotImplemented("llGetCenterOfMass"); |
3841 | return new LSL_Types.Vector3(); | 3901 | return new LSL_Vector(); |
3842 | } | 3902 | } |
3843 | 3903 | ||
3844 | public LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending) | 3904 | public LSL_List llListSort(LSL_List src, int stride, int ascending) |
3845 | { | 3905 | { |
3846 | m_host.AddScriptLPS(1); | 3906 | m_host.AddScriptLPS(1); |
3847 | 3907 | ||
@@ -3852,7 +3912,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3852 | return src.Sort(stride, ascending); | 3912 | return src.Sort(stride, ascending); |
3853 | } | 3913 | } |
3854 | 3914 | ||
3855 | public LSL_Types.LSLInteger llGetListLength(LSL_Types.list src) | 3915 | public LSL_Integer llGetListLength(LSL_List src) |
3856 | { | 3916 | { |
3857 | m_host.AddScriptLPS(1); | 3917 | m_host.AddScriptLPS(1); |
3858 | 3918 | ||
@@ -3866,7 +3926,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3866 | } | 3926 | } |
3867 | } | 3927 | } |
3868 | 3928 | ||
3869 | public LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index) | 3929 | public LSL_Integer llList2Integer(LSL_List src, int index) |
3870 | { | 3930 | { |
3871 | m_host.AddScriptLPS(1); | 3931 | m_host.AddScriptLPS(1); |
3872 | if (index < 0) | 3932 | if (index < 0) |
@@ -3879,12 +3939,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3879 | } | 3939 | } |
3880 | try | 3940 | try |
3881 | { | 3941 | { |
3882 | if (src.Data[index] is LSL_Types.LSLInteger) | 3942 | if (src.Data[index] is LSL_Integer) |
3883 | return Convert.ToInt32(((LSL_Types.LSLInteger) src.Data[index]).value); | 3943 | return Convert.ToInt32(((LSL_Integer) src.Data[index]).value); |
3884 | else if (src.Data[index] is LSL_Types.LSLFloat) | 3944 | else if (src.Data[index] is LSL_Float) |
3885 | return Convert.ToInt32(((LSL_Types.LSLFloat) src.Data[index]).value); | 3945 | return Convert.ToInt32(((LSL_Float) src.Data[index]).value); |
3886 | else if (src.Data[index] is LSL_Types.LSLString) | 3946 | else if (src.Data[index] is LSL_String) |
3887 | return Convert.ToInt32(((LSL_Types.LSLString) src.Data[index]).m_string); | 3947 | return Convert.ToInt32(((LSL_String) src.Data[index]).m_string); |
3888 | return Convert.ToInt32(src.Data[index]); | 3948 | return Convert.ToInt32(src.Data[index]); |
3889 | } | 3949 | } |
3890 | catch (FormatException) | 3950 | catch (FormatException) |
@@ -3893,7 +3953,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3893 | } | 3953 | } |
3894 | } | 3954 | } |
3895 | 3955 | ||
3896 | public LSL_Types.LSLFloat llList2Float(LSL_Types.list src, int index) | 3956 | public LSL_Float llList2Float(LSL_List src, int index) |
3897 | { | 3957 | { |
3898 | m_host.AddScriptLPS(1); | 3958 | m_host.AddScriptLPS(1); |
3899 | if (index < 0) | 3959 | if (index < 0) |
@@ -3906,12 +3966,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3906 | } | 3966 | } |
3907 | try | 3967 | try |
3908 | { | 3968 | { |
3909 | if (src.Data[index] is LSL_Types.LSLInteger) | 3969 | if (src.Data[index] is LSL_Integer) |
3910 | return Convert.ToDouble(((LSL_Types.LSLInteger) src.Data[index]).value); | 3970 | return Convert.ToDouble(((LSL_Integer) src.Data[index]).value); |
3911 | else if (src.Data[index] is LSL_Types.LSLFloat) | 3971 | else if (src.Data[index] is LSL_Float) |
3912 | return Convert.ToDouble(((LSL_Types.LSLFloat) src.Data[index]).value); | 3972 | return Convert.ToDouble(((LSL_Float) src.Data[index]).value); |
3913 | else if (src.Data[index] is LSL_Types.LSLString) | 3973 | else if (src.Data[index] is LSL_String) |
3914 | return Convert.ToDouble(((LSL_Types.LSLString) src.Data[index]).m_string); | 3974 | return Convert.ToDouble(((LSL_String) src.Data[index]).m_string); |
3915 | return Convert.ToDouble(src.Data[index]); | 3975 | return Convert.ToDouble(src.Data[index]); |
3916 | } | 3976 | } |
3917 | catch (FormatException) | 3977 | catch (FormatException) |
@@ -3920,7 +3980,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3920 | } | 3980 | } |
3921 | } | 3981 | } |
3922 | 3982 | ||
3923 | public LSL_Types.LSLString llList2String(LSL_Types.list src, int index) | 3983 | public LSL_String llList2String(LSL_List src, int index) |
3924 | { | 3984 | { |
3925 | m_host.AddScriptLPS(1); | 3985 | m_host.AddScriptLPS(1); |
3926 | if (index < 0) | 3986 | if (index < 0) |
@@ -3934,7 +3994,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3934 | return src.Data[index].ToString(); | 3994 | return src.Data[index].ToString(); |
3935 | } | 3995 | } |
3936 | 3996 | ||
3937 | public LSL_Types.LSLString llList2Key(LSL_Types.list src, int index) | 3997 | public LSL_String llList2Key(LSL_List src, int index) |
3938 | { | 3998 | { |
3939 | m_host.AddScriptLPS(1); | 3999 | m_host.AddScriptLPS(1); |
3940 | if (index < 0) | 4000 | if (index < 0) |
@@ -3948,7 +4008,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3948 | return src.Data[index].ToString(); | 4008 | return src.Data[index].ToString(); |
3949 | } | 4009 | } |
3950 | 4010 | ||
3951 | public LSL_Types.Vector3 llList2Vector(LSL_Types.list src, int index) | 4011 | public LSL_Vector llList2Vector(LSL_List src, int index) |
3952 | { | 4012 | { |
3953 | m_host.AddScriptLPS(1); | 4013 | m_host.AddScriptLPS(1); |
3954 | if (index < 0) | 4014 | if (index < 0) |
@@ -3957,19 +4017,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3957 | } | 4017 | } |
3958 | if (index >= src.Length) | 4018 | if (index >= src.Length) |
3959 | { | 4019 | { |
3960 | return new LSL_Types.Vector3(0, 0, 0); | 4020 | return new LSL_Vector(0, 0, 0); |
3961 | } | 4021 | } |
3962 | if (src.Data[index].GetType() == typeof(LSL_Types.Vector3)) | 4022 | if (src.Data[index].GetType() == typeof(LSL_Vector)) |
3963 | { | 4023 | { |
3964 | return (LSL_Types.Vector3)src.Data[index]; | 4024 | return (LSL_Vector)src.Data[index]; |
3965 | } | 4025 | } |
3966 | else | 4026 | else |
3967 | { | 4027 | { |
3968 | return new LSL_Types.Vector3(src.Data[index].ToString()); | 4028 | return new LSL_Vector(src.Data[index].ToString()); |
3969 | } | 4029 | } |
3970 | } | 4030 | } |
3971 | 4031 | ||
3972 | public LSL_Types.Quaternion llList2Rot(LSL_Types.list src, int index) | 4032 | public LSL_Rotation llList2Rot(LSL_List src, int index) |
3973 | { | 4033 | { |
3974 | m_host.AddScriptLPS(1); | 4034 | m_host.AddScriptLPS(1); |
3975 | if (index < 0) | 4035 | if (index < 0) |
@@ -3978,30 +4038,30 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3978 | } | 4038 | } |
3979 | if (index >= src.Length) | 4039 | if (index >= src.Length) |
3980 | { | 4040 | { |
3981 | return new LSL_Types.Quaternion(0, 0, 0, 1); | 4041 | return new LSL_Rotation(0, 0, 0, 1); |
3982 | } | 4042 | } |
3983 | if (src.Data[index].GetType() == typeof(LSL_Types.Quaternion)) | 4043 | if (src.Data[index].GetType() == typeof(LSL_Rotation)) |
3984 | { | 4044 | { |
3985 | return (LSL_Types.Quaternion)src.Data[index]; | 4045 | return (LSL_Rotation)src.Data[index]; |
3986 | } | 4046 | } |
3987 | else | 4047 | else |
3988 | { | 4048 | { |
3989 | return new LSL_Types.Quaternion(src.Data[index].ToString()); | 4049 | return new LSL_Rotation(src.Data[index].ToString()); |
3990 | } | 4050 | } |
3991 | } | 4051 | } |
3992 | 4052 | ||
3993 | public LSL_Types.list llList2List(LSL_Types.list src, int start, int end) | 4053 | public LSL_List llList2List(LSL_List src, int start, int end) |
3994 | { | 4054 | { |
3995 | m_host.AddScriptLPS(1); | 4055 | m_host.AddScriptLPS(1); |
3996 | return src.GetSublist(start, end); | 4056 | return src.GetSublist(start, end); |
3997 | } | 4057 | } |
3998 | 4058 | ||
3999 | public LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end) | 4059 | public LSL_List llDeleteSubList(LSL_List src, int start, int end) |
4000 | { | 4060 | { |
4001 | return src.DeleteSublist(end, start); | 4061 | return src.DeleteSublist(end, start); |
4002 | } | 4062 | } |
4003 | 4063 | ||
4004 | public LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index) | 4064 | public LSL_Integer llGetListEntryType(LSL_List src, int index) |
4005 | { | 4065 | { |
4006 | m_host.AddScriptLPS(1); | 4066 | m_host.AddScriptLPS(1); |
4007 | if (index < 0) | 4067 | if (index < 0) |
@@ -4013,11 +4073,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4013 | return 0; | 4073 | return 0; |
4014 | } | 4074 | } |
4015 | 4075 | ||
4016 | if (src.Data[index] is LSL_Types.LSLInteger || src.Data[index] is Int32) | 4076 | if (src.Data[index] is LSL_Integer || src.Data[index] is Int32) |
4017 | return 1; | 4077 | return 1; |
4018 | if (src.Data[index] is LSL_Types.LSLFloat || src.Data[index] is Single || src.Data[index] is Double) | 4078 | if (src.Data[index] is LSL_Float || src.Data[index] is Single || src.Data[index] is Double) |
4019 | return 2; | 4079 | return 2; |
4020 | if (src.Data[index] is LSL_Types.LSLString || src.Data[index] is String) | 4080 | if (src.Data[index] is LSL_String || src.Data[index] is String) |
4021 | { | 4081 | { |
4022 | UUID tuuid; | 4082 | UUID tuuid; |
4023 | if (UUID.TryParse(src.Data[index].ToString(), out tuuid)) | 4083 | if (UUID.TryParse(src.Data[index].ToString(), out tuuid)) |
@@ -4029,11 +4089,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4029 | return 3; | 4089 | return 3; |
4030 | } | 4090 | } |
4031 | } | 4091 | } |
4032 | if (src.Data[index] is LSL_Types.Vector3) | 4092 | if (src.Data[index] is LSL_Vector) |
4033 | return 5; | 4093 | return 5; |
4034 | if (src.Data[index] is LSL_Types.Quaternion) | 4094 | if (src.Data[index] is LSL_Rotation) |
4035 | return 6; | 4095 | return 6; |
4036 | if (src.Data[index] is LSL_Types.list) | 4096 | if (src.Data[index] is LSL_List) |
4037 | return 7; | 4097 | return 7; |
4038 | return 0; | 4098 | return 0; |
4039 | 4099 | ||
@@ -4046,7 +4106,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4046 | /// each comma. | 4106 | /// each comma. |
4047 | /// </summary> | 4107 | /// </summary> |
4048 | 4108 | ||
4049 | public LSL_Types.LSLString llList2CSV(LSL_Types.list src) | 4109 | public LSL_String llList2CSV(LSL_List src) |
4050 | { | 4110 | { |
4051 | 4111 | ||
4052 | string ret = String.Empty; | 4112 | string ret = String.Empty; |
@@ -4074,10 +4134,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4074 | /// before or after an element is trimmed. | 4134 | /// before or after an element is trimmed. |
4075 | /// </summary> | 4135 | /// </summary> |
4076 | 4136 | ||
4077 | public LSL_Types.list llCSV2List(string src) | 4137 | public LSL_List llCSV2List(string src) |
4078 | { | 4138 | { |
4079 | 4139 | ||
4080 | LSL_Types.list result = new LSL_Types.list(); | 4140 | LSL_List result = new LSL_List(); |
4081 | int parens = 0; | 4141 | int parens = 0; |
4082 | int start = 0; | 4142 | int start = 0; |
4083 | int length = 0; | 4143 | int length = 0; |
@@ -4131,9 +4191,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4131 | /// sizes. | 4191 | /// sizes. |
4132 | /// </remarks> | 4192 | /// </remarks> |
4133 | 4193 | ||
4134 | public LSL_Types.list llListRandomize(LSL_Types.list src, int stride) | 4194 | public LSL_List llListRandomize(LSL_List src, int stride) |
4135 | { | 4195 | { |
4136 | LSL_Types.list result; | 4196 | LSL_List result; |
4137 | Random rand = new Random(); | 4197 | Random rand = new Random(); |
4138 | 4198 | ||
4139 | int chunkk; | 4199 | int chunkk; |
@@ -4174,7 +4234,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4174 | 4234 | ||
4175 | // Construct the randomized list | 4235 | // Construct the randomized list |
4176 | 4236 | ||
4177 | result = new LSL_Types.list(); | 4237 | result = new LSL_List(); |
4178 | 4238 | ||
4179 | for (int i = 0; i < chunkk; i++) | 4239 | for (int i = 0; i < chunkk; i++) |
4180 | { | 4240 | { |
@@ -4187,7 +4247,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4187 | else { | 4247 | else { |
4188 | object[] array = new object[src.Length]; | 4248 | object[] array = new object[src.Length]; |
4189 | Array.Copy(src.Data, 0, array, 0, src.Length); | 4249 | Array.Copy(src.Data, 0, array, 0, src.Length); |
4190 | result = new LSL_Types.list(array); | 4250 | result = new LSL_List(array); |
4191 | } | 4251 | } |
4192 | 4252 | ||
4193 | return result; | 4253 | return result; |
@@ -4201,10 +4261,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4201 | /// range are included in the result. | 4261 | /// range are included in the result. |
4202 | /// </summary> | 4262 | /// </summary> |
4203 | 4263 | ||
4204 | public LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride) | 4264 | public LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride) |
4205 | { | 4265 | { |
4206 | 4266 | ||
4207 | LSL_Types.list result = new LSL_Types.list(); | 4267 | LSL_List result = new LSL_List(); |
4208 | int[] si = new int[2]; | 4268 | int[] si = new int[2]; |
4209 | int[] ei = new int[2]; | 4269 | int[] ei = new int[2]; |
4210 | bool twopass = false; | 4270 | bool twopass = false; |
@@ -4281,10 +4341,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4281 | return result; | 4341 | return result; |
4282 | } | 4342 | } |
4283 | 4343 | ||
4284 | public LSL_Types.Vector3 llGetRegionCorner() | 4344 | public LSL_Integer llGetRegionAgentCount() |
4345 | { | ||
4346 | m_host.AddScriptLPS(1); | ||
4347 | NotImplemented("llGetRegionAgentCount"); | ||
4348 | return new LSL_Integer(0); | ||
4349 | } | ||
4350 | |||
4351 | public LSL_Vector llGetRegionCorner() | ||
4285 | { | 4352 | { |
4286 | m_host.AddScriptLPS(1); | 4353 | m_host.AddScriptLPS(1); |
4287 | return new LSL_Types.Vector3(World.RegionInfo.RegionLocX * Constants.RegionSize, World.RegionInfo.RegionLocY * Constants.RegionSize, 0); | 4354 | return new LSL_Vector(World.RegionInfo.RegionLocX * Constants.RegionSize, World.RegionInfo.RegionLocY * Constants.RegionSize, 0); |
4288 | } | 4355 | } |
4289 | 4356 | ||
4290 | /// <summary> | 4357 | /// <summary> |
@@ -4293,11 +4360,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4293 | /// new element has the index specified by <index> | 4360 | /// new element has the index specified by <index> |
4294 | /// </summary> | 4361 | /// </summary> |
4295 | 4362 | ||
4296 | public LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int index) | 4363 | public LSL_List llListInsertList(LSL_List dest, LSL_List src, int index) |
4297 | { | 4364 | { |
4298 | 4365 | ||
4299 | LSL_Types.list pref = null; | 4366 | LSL_List pref = null; |
4300 | LSL_Types.list suff = null; | 4367 | LSL_List suff = null; |
4301 | 4368 | ||
4302 | m_host.AddScriptLPS(1); | 4369 | m_host.AddScriptLPS(1); |
4303 | 4370 | ||
@@ -4343,7 +4410,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4343 | /// in src. | 4410 | /// in src. |
4344 | /// </summary> | 4411 | /// </summary> |
4345 | 4412 | ||
4346 | public LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test) | 4413 | public LSL_Integer llListFindList(LSL_List src, LSL_List test) |
4347 | { | 4414 | { |
4348 | 4415 | ||
4349 | int index = -1; | 4416 | int index = -1; |
@@ -4376,7 +4443,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4376 | 4443 | ||
4377 | } | 4444 | } |
4378 | 4445 | ||
4379 | public LSL_Types.LSLString llGetObjectName() | 4446 | public LSL_String llGetObjectName() |
4380 | { | 4447 | { |
4381 | m_host.AddScriptLPS(1); | 4448 | m_host.AddScriptLPS(1); |
4382 | return m_host.Name!=null?m_host.Name:String.Empty; | 4449 | return m_host.Name!=null?m_host.Name:String.Empty; |
@@ -4388,7 +4455,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4388 | m_host.Name = name!=null?name:String.Empty; | 4455 | m_host.Name = name!=null?name:String.Empty; |
4389 | } | 4456 | } |
4390 | 4457 | ||
4391 | public LSL_Types.LSLString llGetDate() | 4458 | public LSL_String llGetDate() |
4392 | { | 4459 | { |
4393 | m_host.AddScriptLPS(1); | 4460 | m_host.AddScriptLPS(1); |
4394 | DateTime date = DateTime.Now.ToUniversalTime(); | 4461 | DateTime date = DateTime.Now.ToUniversalTime(); |
@@ -4396,14 +4463,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4396 | return result; | 4463 | return result; |
4397 | } | 4464 | } |
4398 | 4465 | ||
4399 | public LSL_Types.LSLInteger llEdgeOfWorld(LSL_Types.Vector3 pos, LSL_Types.Vector3 dir) | 4466 | public LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir) |
4400 | { | 4467 | { |
4401 | m_host.AddScriptLPS(1); | 4468 | m_host.AddScriptLPS(1); |
4402 | NotImplemented("llEdgeOfWorld"); | 4469 | NotImplemented("llEdgeOfWorld"); |
4403 | return 0; | 4470 | return 0; |
4404 | } | 4471 | } |
4405 | 4472 | ||
4406 | public LSL_Types.LSLInteger llGetAgentInfo(string id) | 4473 | public LSL_Integer llGetAgentInfo(string id) |
4407 | { | 4474 | { |
4408 | m_host.AddScriptLPS(1); | 4475 | m_host.AddScriptLPS(1); |
4409 | NotImplemented("llGetAgentInfo"); | 4476 | NotImplemented("llGetAgentInfo"); |
@@ -4429,7 +4496,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4429 | m_host.SoundRadius = radius; | 4496 | m_host.SoundRadius = radius; |
4430 | } | 4497 | } |
4431 | 4498 | ||
4432 | public LSL_Types.LSLString llKey2Name(string id) | 4499 | public LSL_String llKey2Name(string id) |
4433 | { | 4500 | { |
4434 | m_host.AddScriptLPS(1); | 4501 | m_host.AddScriptLPS(1); |
4435 | UUID key = new UUID(); | 4502 | UUID key = new UUID(); |
@@ -4475,8 +4542,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4475 | m_host.ParentGroup.HasGroupChanged = true; | 4542 | m_host.ParentGroup.HasGroupChanged = true; |
4476 | } | 4543 | } |
4477 | 4544 | ||
4478 | public void llTriggerSoundLimited(string sound, double volume, LSL_Types.Vector3 top_north_east, | 4545 | public void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, |
4479 | LSL_Types.Vector3 bottom_south_west) | 4546 | LSL_Vector bottom_south_west) |
4480 | { | 4547 | { |
4481 | m_host.AddScriptLPS(1); | 4548 | m_host.AddScriptLPS(1); |
4482 | NotImplemented("llTriggerSoundLimited"); | 4549 | NotImplemented("llTriggerSoundLimited"); |
@@ -4499,10 +4566,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4499 | // ScriptSleep(5000); | 4566 | // ScriptSleep(5000); |
4500 | } | 4567 | } |
4501 | 4568 | ||
4502 | public LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers) | 4569 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers) |
4503 | { | 4570 | { |
4504 | m_host.AddScriptLPS(1); | 4571 | m_host.AddScriptLPS(1); |
4505 | LSL_Types.list ret = new LSL_Types.list(); | 4572 | LSL_List ret = new LSL_List(); |
4506 | object[] delimiters = new object[separators.Length + spacers.Length]; | 4573 | object[] delimiters = new object[separators.Length + spacers.Length]; |
4507 | separators.Data.CopyTo(delimiters, 0); | 4574 | separators.Data.CopyTo(delimiters, 0); |
4508 | spacers.Data.CopyTo(delimiters, separators.Length); | 4575 | spacers.Data.CopyTo(delimiters, separators.Length); |
@@ -4555,7 +4622,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4555 | return ret; | 4622 | return ret; |
4556 | } | 4623 | } |
4557 | 4624 | ||
4558 | public LSL_Types.LSLInteger llOverMyLand(string id) | 4625 | public LSL_Integer llOverMyLand(string id) |
4559 | { | 4626 | { |
4560 | m_host.AddScriptLPS(1); | 4627 | m_host.AddScriptLPS(1); |
4561 | UUID key = new UUID(); | 4628 | UUID key = new UUID(); |
@@ -4578,17 +4645,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4578 | return 0; | 4645 | return 0; |
4579 | } | 4646 | } |
4580 | 4647 | ||
4581 | public LSL_Types.LSLString llGetLandOwnerAt(LSL_Types.Vector3 pos) | 4648 | public LSL_String llGetLandOwnerAt(LSL_Vector pos) |
4582 | { | 4649 | { |
4583 | m_host.AddScriptLPS(1); | 4650 | m_host.AddScriptLPS(1); |
4584 | return World.GetLandOwner((float)pos.x, (float)pos.y).ToString(); | 4651 | return World.GetLandOwner((float)pos.x, (float)pos.y).ToString(); |
4585 | } | 4652 | } |
4586 | 4653 | ||
4587 | public LSL_Types.Vector3 llGetAgentSize(string id) | 4654 | public LSL_Vector llGetAgentSize(string id) |
4588 | { | 4655 | { |
4589 | m_host.AddScriptLPS(1); | 4656 | m_host.AddScriptLPS(1); |
4590 | ScenePresence avatar = World.GetScenePresence(id); | 4657 | ScenePresence avatar = World.GetScenePresence(id); |
4591 | LSL_Types.Vector3 agentSize; | 4658 | LSL_Vector agentSize; |
4592 | if (avatar == null) | 4659 | if (avatar == null) |
4593 | { | 4660 | { |
4594 | agentSize = ScriptBaseClass.ZERO_VECTOR; | 4661 | agentSize = ScriptBaseClass.ZERO_VECTOR; |
@@ -4596,25 +4663,25 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4596 | else | 4663 | else |
4597 | { | 4664 | { |
4598 | PhysicsVector size = avatar.PhysicsActor.Size; | 4665 | PhysicsVector size = avatar.PhysicsActor.Size; |
4599 | agentSize = new LSL_Types.Vector3(size.X, size.Y, size.Z); | 4666 | agentSize = new LSL_Vector(size.X, size.Y, size.Z); |
4600 | } | 4667 | } |
4601 | return agentSize; | 4668 | return agentSize; |
4602 | } | 4669 | } |
4603 | 4670 | ||
4604 | public LSL_Types.LSLInteger llSameGroup(string agent) | 4671 | public LSL_Integer llSameGroup(string agent) |
4605 | { | 4672 | { |
4606 | m_host.AddScriptLPS(1); | 4673 | m_host.AddScriptLPS(1); |
4607 | UUID agentId = new UUID(); | 4674 | UUID agentId = new UUID(); |
4608 | if (!UUID.TryParse(agent, out agentId)) | 4675 | if (!UUID.TryParse(agent, out agentId)) |
4609 | return new LSL_Types.LSLInteger(0); | 4676 | return new LSL_Integer(0); |
4610 | ScenePresence presence = World.GetScenePresence(agentId); | 4677 | ScenePresence presence = World.GetScenePresence(agentId); |
4611 | if (presence == null) | 4678 | if (presence == null) |
4612 | return new LSL_Types.LSLInteger(0); | 4679 | return new LSL_Integer(0); |
4613 | IClientAPI client = presence.ControllingClient; | 4680 | IClientAPI client = presence.ControllingClient; |
4614 | if (m_host.GroupID == client.ActiveGroupId) | 4681 | if (m_host.GroupID == client.ActiveGroupId) |
4615 | return new LSL_Types.LSLInteger(1); | 4682 | return new LSL_Integer(1); |
4616 | else | 4683 | else |
4617 | return new LSL_Types.LSLInteger(0); | 4684 | return new LSL_Integer(0); |
4618 | } | 4685 | } |
4619 | 4686 | ||
4620 | public void llUnSit(string id) | 4687 | public void llUnSit(string id) |
@@ -4660,7 +4727,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4660 | 4727 | ||
4661 | } | 4728 | } |
4662 | 4729 | ||
4663 | public LSL_Types.Vector3 llGroundSlope(LSL_Types.Vector3 offset) | 4730 | public LSL_Vector llGroundSlope(LSL_Vector offset) |
4664 | { | 4731 | { |
4665 | m_host.AddScriptLPS(1); | 4732 | m_host.AddScriptLPS(1); |
4666 | 4733 | ||
@@ -4670,15 +4737,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4670 | 4737 | ||
4671 | Vector3 p0 = new Vector3(pos.X, pos.Y, | 4738 | Vector3 p0 = new Vector3(pos.X, pos.Y, |
4672 | (float)llGround( | 4739 | (float)llGround( |
4673 | new LSL_Types.Vector3(pos.X, pos.Y, pos.Z) | 4740 | new LSL_Vector(pos.X, pos.Y, pos.Z) |
4674 | )); | 4741 | )); |
4675 | Vector3 p1 = new Vector3(pos.X + 1, pos.Y, | 4742 | Vector3 p1 = new Vector3(pos.X + 1, pos.Y, |
4676 | (float)llGround( | 4743 | (float)llGround( |
4677 | new LSL_Types.Vector3(pos.X + 1, pos.Y, pos.Z) | 4744 | new LSL_Vector(pos.X + 1, pos.Y, pos.Z) |
4678 | )); | 4745 | )); |
4679 | Vector3 p2 = new Vector3(pos.X, pos.Y + 1, | 4746 | Vector3 p2 = new Vector3(pos.X, pos.Y + 1, |
4680 | (float)llGround( | 4747 | (float)llGround( |
4681 | new LSL_Types.Vector3(pos.X, pos.Y + 1, pos.Z) | 4748 | new LSL_Vector(pos.X, pos.Y + 1, pos.Z) |
4682 | )); | 4749 | )); |
4683 | 4750 | ||
4684 | Vector3 v0 = new Vector3( | 4751 | Vector3 v0 = new Vector3( |
@@ -4694,50 +4761,50 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4694 | tv.Y = (v0.Z * v1.X) - (v0.X * v1.Z); | 4761 | tv.Y = (v0.Z * v1.X) - (v0.X * v1.Z); |
4695 | tv.Z = (v0.X * v1.Y) - (v0.Y * v1.X); | 4762 | tv.Z = (v0.X * v1.Y) - (v0.Y * v1.X); |
4696 | 4763 | ||
4697 | return new LSL_Types.Vector3(tv.X, tv.Y, tv.Z); | 4764 | return new LSL_Vector(tv.X, tv.Y, tv.Z); |
4698 | } | 4765 | } |
4699 | 4766 | ||
4700 | public LSL_Types.Vector3 llGroundNormal(LSL_Types.Vector3 offset) | 4767 | public LSL_Vector llGroundNormal(LSL_Vector offset) |
4701 | { | 4768 | { |
4702 | m_host.AddScriptLPS(1); | 4769 | m_host.AddScriptLPS(1); |
4703 | LSL_Types.Vector3 x = llGroundSlope(offset); | 4770 | LSL_Vector x = llGroundSlope(offset); |
4704 | return new LSL_Types.Vector3(x.x, x.y, 1.0); | 4771 | return new LSL_Vector(x.x, x.y, 1.0); |
4705 | } | 4772 | } |
4706 | 4773 | ||
4707 | public LSL_Types.Vector3 llGroundContour(LSL_Types.Vector3 offset) | 4774 | public LSL_Vector llGroundContour(LSL_Vector offset) |
4708 | { | 4775 | { |
4709 | m_host.AddScriptLPS(1); | 4776 | m_host.AddScriptLPS(1); |
4710 | LSL_Types.Vector3 x = llGroundSlope(offset); | 4777 | LSL_Vector x = llGroundSlope(offset); |
4711 | return new LSL_Types.Vector3(-x.y, x.x, 0.0); | 4778 | return new LSL_Vector(-x.y, x.x, 0.0); |
4712 | } | 4779 | } |
4713 | 4780 | ||
4714 | public LSL_Types.LSLInteger llGetAttached() | 4781 | public LSL_Integer llGetAttached() |
4715 | { | 4782 | { |
4716 | m_host.AddScriptLPS(1); | 4783 | m_host.AddScriptLPS(1); |
4717 | NotImplemented("llGetAttached"); | 4784 | NotImplemented("llGetAttached"); |
4718 | return 0; | 4785 | return 0; |
4719 | } | 4786 | } |
4720 | 4787 | ||
4721 | public LSL_Types.LSLInteger llGetFreeMemory() | 4788 | public LSL_Integer llGetFreeMemory() |
4722 | { | 4789 | { |
4723 | m_host.AddScriptLPS(1); | 4790 | m_host.AddScriptLPS(1); |
4724 | // Make scripts designed for LSO happy | 4791 | // Make scripts designed for LSO happy |
4725 | return 16384; | 4792 | return 16384; |
4726 | } | 4793 | } |
4727 | 4794 | ||
4728 | public LSL_Types.LSLString llGetRegionName() | 4795 | public LSL_String llGetRegionName() |
4729 | { | 4796 | { |
4730 | m_host.AddScriptLPS(1); | 4797 | m_host.AddScriptLPS(1); |
4731 | return World.RegionInfo.RegionName; | 4798 | return World.RegionInfo.RegionName; |
4732 | } | 4799 | } |
4733 | 4800 | ||
4734 | public LSL_Types.LSLFloat llGetRegionTimeDilation() | 4801 | public LSL_Float llGetRegionTimeDilation() |
4735 | { | 4802 | { |
4736 | m_host.AddScriptLPS(1); | 4803 | m_host.AddScriptLPS(1); |
4737 | return (double)World.TimeDilation; | 4804 | return (double)World.TimeDilation; |
4738 | } | 4805 | } |
4739 | 4806 | ||
4740 | public LSL_Types.LSLFloat llGetRegionFPS() | 4807 | public LSL_Float llGetRegionFPS() |
4741 | { | 4808 | { |
4742 | m_host.AddScriptLPS(1); | 4809 | m_host.AddScriptLPS(1); |
4743 | //TODO: return actual FPS | 4810 | //TODO: return actual FPS |
@@ -4803,7 +4870,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4803 | return ps; | 4870 | return ps; |
4804 | } | 4871 | } |
4805 | 4872 | ||
4806 | public void llParticleSystem(LSL_Types.list rules) | 4873 | public void llParticleSystem(LSL_List rules) |
4807 | { | 4874 | { |
4808 | m_host.AddScriptLPS(1); | 4875 | m_host.AddScriptLPS(1); |
4809 | if (rules.Length == 0) | 4876 | if (rules.Length == 0) |
@@ -4814,7 +4881,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4814 | else | 4881 | else |
4815 | { | 4882 | { |
4816 | Primitive.ParticleSystem prules = getNewParticleSystemWithSLDefaultValues(); | 4883 | Primitive.ParticleSystem prules = getNewParticleSystemWithSLDefaultValues(); |
4817 | LSL_Types.Vector3 tempv = new LSL_Types.Vector3(); | 4884 | LSL_Vector tempv = new LSL_Vector(); |
4818 | 4885 | ||
4819 | float tempf = 0; | 4886 | float tempf = 0; |
4820 | 4887 | ||
@@ -4968,7 +5035,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4968 | return UUID.Zero; | 5035 | return UUID.Zero; |
4969 | } | 5036 | } |
4970 | 5037 | ||
4971 | public void llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | 5038 | public void llGiveInventoryList(string destination, string category, LSL_List inventory) |
4972 | { | 5039 | { |
4973 | m_host.AddScriptLPS(1); | 5040 | m_host.AddScriptLPS(1); |
4974 | 5041 | ||
@@ -5017,13 +5084,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5017 | NotImplemented("llSetVehicleFloatParam"); | 5084 | NotImplemented("llSetVehicleFloatParam"); |
5018 | } | 5085 | } |
5019 | 5086 | ||
5020 | public void llSetVehicleVectorParam(int param, LSL_Types.Vector3 vec) | 5087 | public void llSetVehicleVectorParam(int param, LSL_Vector vec) |
5021 | { | 5088 | { |
5022 | m_host.AddScriptLPS(1); | 5089 | m_host.AddScriptLPS(1); |
5023 | NotImplemented("llSetVehicleVectorParam"); | 5090 | NotImplemented("llSetVehicleVectorParam"); |
5024 | } | 5091 | } |
5025 | 5092 | ||
5026 | public void llSetVehicleRotationParam(int param, LSL_Types.Quaternion rot) | 5093 | public void llSetVehicleRotationParam(int param, LSL_Rotation rot) |
5027 | { | 5094 | { |
5028 | m_host.AddScriptLPS(1); | 5095 | m_host.AddScriptLPS(1); |
5029 | NotImplemented("llSetVehicleRotationParam"); | 5096 | NotImplemented("llSetVehicleRotationParam"); |
@@ -5041,7 +5108,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5041 | NotImplemented("llRemoveVehicleFlags"); | 5108 | NotImplemented("llRemoveVehicleFlags"); |
5042 | } | 5109 | } |
5043 | 5110 | ||
5044 | public void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot) | 5111 | public void llSitTarget(LSL_Vector offset, LSL_Rotation rot) |
5045 | { | 5112 | { |
5046 | m_host.AddScriptLPS(1); | 5113 | m_host.AddScriptLPS(1); |
5047 | // LSL quaternions can normalize to 0, normal Quaternions can't. | 5114 | // LSL quaternions can normalize to 0, normal Quaternions can't. |
@@ -5052,7 +5119,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5052 | m_host.SitTargetOrientation = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); | 5119 | m_host.SitTargetOrientation = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); |
5053 | } | 5120 | } |
5054 | 5121 | ||
5055 | public LSL_Types.LSLString llAvatarOnSitTarget() | 5122 | public LSL_String llAvatarOnSitTarget() |
5056 | { | 5123 | { |
5057 | m_host.AddScriptLPS(1); | 5124 | m_host.AddScriptLPS(1); |
5058 | return m_host.GetAvatarOnSitTarget().ToString(); | 5125 | return m_host.GetAvatarOnSitTarget().ToString(); |
@@ -5089,19 +5156,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5089 | m_host.SitName = text; | 5156 | m_host.SitName = text; |
5090 | } | 5157 | } |
5091 | 5158 | ||
5092 | public void llSetCameraEyeOffset(LSL_Types.Vector3 offset) | 5159 | public void llSetCameraEyeOffset(LSL_Vector offset) |
5093 | { | 5160 | { |
5094 | m_host.AddScriptLPS(1); | 5161 | m_host.AddScriptLPS(1); |
5095 | m_host.SetCameraEyeOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); | 5162 | m_host.SetCameraEyeOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); |
5096 | } | 5163 | } |
5097 | 5164 | ||
5098 | public void llSetCameraAtOffset(LSL_Types.Vector3 offset) | 5165 | public void llSetCameraAtOffset(LSL_Vector offset) |
5099 | { | 5166 | { |
5100 | m_host.AddScriptLPS(1); | 5167 | m_host.AddScriptLPS(1); |
5101 | m_host.SetCameraAtOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); | 5168 | m_host.SetCameraAtOffset(new Vector3((float)offset.x, (float)offset.y, (float)offset.z)); |
5102 | } | 5169 | } |
5103 | 5170 | ||
5104 | public LSL_Types.LSLString llDumpList2String(LSL_Types.list src, string seperator) | 5171 | public LSL_String llDumpList2String(LSL_List src, string seperator) |
5105 | { | 5172 | { |
5106 | m_host.AddScriptLPS(1); | 5173 | m_host.AddScriptLPS(1); |
5107 | if (src.Length == 0) | 5174 | if (src.Length == 0) |
@@ -5117,7 +5184,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5117 | return ret; | 5184 | return ret; |
5118 | } | 5185 | } |
5119 | 5186 | ||
5120 | public LSL_Types.LSLInteger llScriptDanger(LSL_Types.Vector3 pos) | 5187 | public LSL_Integer llScriptDanger(LSL_Vector pos) |
5121 | { | 5188 | { |
5122 | m_host.AddScriptLPS(1); | 5189 | m_host.AddScriptLPS(1); |
5123 | bool result = World.scriptDanger(m_host.LocalId, new Vector3((float)pos.x, (float)pos.y, (float)pos.z)); | 5190 | bool result = World.scriptDanger(m_host.LocalId, new Vector3((float)pos.x, (float)pos.y, (float)pos.z)); |
@@ -5132,7 +5199,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5132 | 5199 | ||
5133 | } | 5200 | } |
5134 | 5201 | ||
5135 | public void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel) | 5202 | public void llDialog(string avatar, string message, LSL_List buttons, int chat_channel) |
5136 | { | 5203 | { |
5137 | m_host.AddScriptLPS(1); | 5204 | m_host.AddScriptLPS(1); |
5138 | UUID av = new UUID(); | 5205 | UUID av = new UUID(); |
@@ -5188,7 +5255,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5188 | ShoutError("llResetOtherScript: script "+name+" not found"); | 5255 | ShoutError("llResetOtherScript: script "+name+" not found"); |
5189 | } | 5256 | } |
5190 | 5257 | ||
5191 | public LSL_Types.LSLInteger llGetScriptState(string name) | 5258 | public LSL_Integer llGetScriptState(string name) |
5192 | { | 5259 | { |
5193 | UUID item; | 5260 | UUID item; |
5194 | 5261 | ||
@@ -5273,7 +5340,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5273 | if (xmlrpcMod.IsEnabled()) | 5340 | if (xmlrpcMod.IsEnabled()) |
5274 | { | 5341 | { |
5275 | UUID channelID = xmlrpcMod.OpenXMLRPCChannel(m_localID, m_itemID, UUID.Zero); | 5342 | UUID channelID = xmlrpcMod.OpenXMLRPCChannel(m_localID, m_itemID, UUID.Zero); |
5276 | object[] resobj = new object[] { new LSL_Types.LSLInteger(1), new LSL_Types.LSLString(channelID.ToString()), new LSL_Types.LSLString(UUID.Zero.ToString()), new LSL_Types.LSLString(String.Empty), new LSL_Types.LSLInteger(0), new LSL_Types.LSLString(String.Empty) }; | 5343 | object[] resobj = new object[] { new LSL_Integer(1), new LSL_String(channelID.ToString()), new LSL_String(UUID.Zero.ToString()), new LSL_String(String.Empty), new LSL_Integer(0), new LSL_String(String.Empty) }; |
5277 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( | 5344 | m_ScriptEngine.PostScriptEvent(m_itemID, new EventParams( |
5278 | "remote_data", resobj, | 5345 | "remote_data", resobj, |
5279 | new DetectParams[0])); | 5346 | new DetectParams[0])); |
@@ -5281,7 +5348,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5281 | // ScriptSleep(1000); | 5348 | // ScriptSleep(1000); |
5282 | } | 5349 | } |
5283 | 5350 | ||
5284 | public LSL_Types.LSLString llSendRemoteData(string channel, string dest, int idata, string sdata) | 5351 | public LSL_String llSendRemoteData(string channel, string dest, int idata, string sdata) |
5285 | { | 5352 | { |
5286 | m_host.AddScriptLPS(1); | 5353 | m_host.AddScriptLPS(1); |
5287 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); | 5354 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); |
@@ -5305,13 +5372,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5305 | // ScriptSleep(1000); | 5372 | // ScriptSleep(1000); |
5306 | } | 5373 | } |
5307 | 5374 | ||
5308 | public LSL_Types.LSLString llMD5String(string src, int nonce) | 5375 | public LSL_String llMD5String(string src, int nonce) |
5309 | { | 5376 | { |
5310 | m_host.AddScriptLPS(1); | 5377 | m_host.AddScriptLPS(1); |
5311 | return Util.Md5Hash(src + ":" + nonce.ToString()); | 5378 | return Util.Md5Hash(src + ":" + nonce.ToString()); |
5312 | } | 5379 | } |
5313 | 5380 | ||
5314 | private ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist) | 5381 | private ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist) |
5315 | { | 5382 | { |
5316 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); | 5383 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); |
5317 | 5384 | ||
@@ -5381,7 +5448,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5381 | return shapeBlock; | 5448 | return shapeBlock; |
5382 | } | 5449 | } |
5383 | 5450 | ||
5384 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 taper_b, LSL_Types.Vector3 topshear, byte fudge) | 5451 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge) |
5385 | { | 5452 | { |
5386 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5453 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5387 | 5454 | ||
@@ -5429,7 +5496,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5429 | part.UpdateShape(shapeBlock); | 5496 | part.UpdateShape(shapeBlock); |
5430 | } | 5497 | } |
5431 | 5498 | ||
5432 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 dimple, byte fudge) | 5499 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge) |
5433 | { | 5500 | { |
5434 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5501 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5435 | 5502 | ||
@@ -5470,7 +5537,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5470 | part.UpdateShape(shapeBlock); | 5537 | part.UpdateShape(shapeBlock); |
5471 | } | 5538 | } |
5472 | 5539 | ||
5473 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Types.Vector3 cut, float hollow, LSL_Types.Vector3 twist, LSL_Types.Vector3 holesize, LSL_Types.Vector3 topshear, LSL_Types.Vector3 profilecut, LSL_Types.Vector3 taper_a, float revolutions, float radiusoffset, float skew, byte fudge) | 5540 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector holesize, LSL_Vector topshear, LSL_Vector profilecut, LSL_Vector taper_a, float revolutions, float radiusoffset, float skew, byte fudge) |
5474 | { | 5541 | { |
5475 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 5542 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
5476 | 5543 | ||
@@ -5622,12 +5689,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5622 | part.UpdateShape(shapeBlock); | 5689 | part.UpdateShape(shapeBlock); |
5623 | } | 5690 | } |
5624 | 5691 | ||
5625 | public void llSetPrimitiveParams(LSL_Types.list rules) | 5692 | public void llSetPrimitiveParams(LSL_List rules) |
5626 | { | 5693 | { |
5627 | SetPrimParams(m_host, rules); | 5694 | SetPrimParams(m_host, rules); |
5628 | } | 5695 | } |
5629 | 5696 | ||
5630 | public void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules) | 5697 | public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules) |
5631 | { | 5698 | { |
5632 | m_host.AddScriptLPS(1); | 5699 | m_host.AddScriptLPS(1); |
5633 | 5700 | ||
@@ -5637,7 +5704,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5637 | SetPrimParams(part, rules); | 5704 | SetPrimParams(part, rules); |
5638 | } | 5705 | } |
5639 | 5706 | ||
5640 | private void SetPrimParams(SceneObjectPart part, LSL_Types.list rules) | 5707 | private void SetPrimParams(SceneObjectPart part, LSL_List rules) |
5641 | { | 5708 | { |
5642 | int idx = 0; | 5709 | int idx = 0; |
5643 | 5710 | ||
@@ -5648,7 +5715,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5648 | int remain = rules.Length - idx; | 5715 | int remain = rules.Length - idx; |
5649 | 5716 | ||
5650 | int face; | 5717 | int face; |
5651 | LSL_Types.Vector3 v; | 5718 | LSL_Vector v; |
5652 | 5719 | ||
5653 | switch (code) | 5720 | switch (code) |
5654 | { | 5721 | { |
@@ -5672,7 +5739,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5672 | if (remain < 1) | 5739 | if (remain < 1) |
5673 | return; | 5740 | return; |
5674 | 5741 | ||
5675 | LSL_Types.Quaternion q = rules.GetQuaternionItem(idx++); | 5742 | LSL_Rotation q = rules.GetQuaternionItem(idx++); |
5676 | SetRot(part, q); | 5743 | SetRot(part, q); |
5677 | 5744 | ||
5678 | break; | 5745 | break; |
@@ -5685,14 +5752,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5685 | 5752 | ||
5686 | remain = rules.Length - idx; | 5753 | remain = rules.Length - idx; |
5687 | float hollow; | 5754 | float hollow; |
5688 | LSL_Types.Vector3 twist; | 5755 | LSL_Vector twist; |
5689 | LSL_Types.Vector3 taper_b; | 5756 | LSL_Vector taper_b; |
5690 | LSL_Types.Vector3 topshear; | 5757 | LSL_Vector topshear; |
5691 | float revolutions; | 5758 | float revolutions; |
5692 | float radiusoffset; | 5759 | float radiusoffset; |
5693 | float skew; | 5760 | float skew; |
5694 | LSL_Types.Vector3 holesize; | 5761 | LSL_Vector holesize; |
5695 | LSL_Types.Vector3 profilecut; | 5762 | LSL_Vector profilecut; |
5696 | 5763 | ||
5697 | switch (code) | 5764 | switch (code) |
5698 | { | 5765 | { |
@@ -5829,8 +5896,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5829 | 5896 | ||
5830 | face=(int)rules.GetLSLIntegerItem(idx++); | 5897 | face=(int)rules.GetLSLIntegerItem(idx++); |
5831 | string tex=rules.Data[idx++].ToString(); | 5898 | string tex=rules.Data[idx++].ToString(); |
5832 | LSL_Types.Vector3 repeats=rules.GetVector3Item(idx++); | 5899 | LSL_Vector repeats=rules.GetVector3Item(idx++); |
5833 | LSL_Types.Vector3 offsets=rules.GetVector3Item(idx++); | 5900 | LSL_Vector offsets=rules.GetVector3Item(idx++); |
5834 | double rotation=(double)rules.GetLSLFloatItem(idx++); | 5901 | double rotation=(double)rules.GetLSLFloatItem(idx++); |
5835 | 5902 | ||
5836 | SetTexture(part, tex, face); | 5903 | SetTexture(part, tex, face); |
@@ -5845,7 +5912,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5845 | return; | 5912 | return; |
5846 | 5913 | ||
5847 | face=(int)rules.GetLSLIntegerItem(idx++); | 5914 | face=(int)rules.GetLSLIntegerItem(idx++); |
5848 | LSL_Types.Vector3 color=rules.GetVector3Item(idx++); | 5915 | LSL_Vector color=rules.GetVector3Item(idx++); |
5849 | double alpha=(double)rules.GetLSLFloatItem(idx++); | 5916 | double alpha=(double)rules.GetLSLFloatItem(idx++); |
5850 | 5917 | ||
5851 | SetColor(part, color, face); | 5918 | SetColor(part, color, face); |
@@ -5862,7 +5929,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5862 | float friction = (float)rules.GetLSLFloatItem(idx++); | 5929 | float friction = (float)rules.GetLSLFloatItem(idx++); |
5863 | float wind = (float)rules.GetLSLFloatItem(idx++); | 5930 | float wind = (float)rules.GetLSLFloatItem(idx++); |
5864 | float tension = (float)rules.GetLSLFloatItem(idx++); | 5931 | float tension = (float)rules.GetLSLFloatItem(idx++); |
5865 | LSL_Types.Vector3 force = rules.GetVector3Item(idx++); | 5932 | LSL_Vector force = rules.GetVector3Item(idx++); |
5866 | 5933 | ||
5867 | SetFlexi(part, flexi, softness, gravity, friction, wind, tension, force); | 5934 | SetFlexi(part, flexi, softness, gravity, friction, wind, tension, force); |
5868 | 5935 | ||
@@ -5871,7 +5938,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5871 | if (remain < 5) | 5938 | if (remain < 5) |
5872 | return; | 5939 | return; |
5873 | bool light = rules.GetLSLIntegerItem(idx++); | 5940 | bool light = rules.GetLSLIntegerItem(idx++); |
5874 | LSL_Types.Vector3 lightcolor = rules.GetVector3Item(idx++); | 5941 | LSL_Vector lightcolor = rules.GetVector3Item(idx++); |
5875 | float intensity = (float)rules.GetLSLFloatItem(idx++); | 5942 | float intensity = (float)rules.GetLSLFloatItem(idx++); |
5876 | float radius = (float)rules.GetLSLFloatItem(idx++); | 5943 | float radius = (float)rules.GetLSLFloatItem(idx++); |
5877 | float falloff = (float)rules.GetLSLFloatItem(idx++); | 5944 | float falloff = (float)rules.GetLSLFloatItem(idx++); |
@@ -5951,7 +6018,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5951 | } | 6018 | } |
5952 | } | 6019 | } |
5953 | 6020 | ||
5954 | public LSL_Types.LSLString llStringToBase64(string str) | 6021 | public LSL_String llStringToBase64(string str) |
5955 | { | 6022 | { |
5956 | m_host.AddScriptLPS(1); | 6023 | m_host.AddScriptLPS(1); |
5957 | try | 6024 | try |
@@ -5967,7 +6034,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5967 | } | 6034 | } |
5968 | } | 6035 | } |
5969 | 6036 | ||
5970 | public LSL_Types.LSLString llBase64ToString(string str) | 6037 | public LSL_String llBase64ToString(string str) |
5971 | { | 6038 | { |
5972 | m_host.AddScriptLPS(1); | 6039 | m_host.AddScriptLPS(1); |
5973 | UTF8Encoding encoder = new UTF8Encoding(); | 6040 | UTF8Encoding encoder = new UTF8Encoding(); |
@@ -6000,23 +6067,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6000 | NotImplemented("llRemoteDataSetRegion"); | 6067 | NotImplemented("llRemoteDataSetRegion"); |
6001 | } | 6068 | } |
6002 | 6069 | ||
6003 | public LSL_Types.LSLFloat llLog10(double val) | 6070 | public LSL_Float llLog10(double val) |
6004 | { | 6071 | { |
6005 | m_host.AddScriptLPS(1); | 6072 | m_host.AddScriptLPS(1); |
6006 | return (double)Math.Log10(val); | 6073 | return (double)Math.Log10(val); |
6007 | } | 6074 | } |
6008 | 6075 | ||
6009 | public LSL_Types.LSLFloat llLog(double val) | 6076 | public LSL_Float llLog(double val) |
6010 | { | 6077 | { |
6011 | m_host.AddScriptLPS(1); | 6078 | m_host.AddScriptLPS(1); |
6012 | return (double)Math.Log(val); | 6079 | return (double)Math.Log(val); |
6013 | } | 6080 | } |
6014 | 6081 | ||
6015 | public LSL_Types.list llGetAnimationList( string id ) | 6082 | public LSL_List llGetAnimationList( string id ) |
6016 | { | 6083 | { |
6017 | m_host.AddScriptLPS(1); | 6084 | m_host.AddScriptLPS(1); |
6018 | 6085 | ||
6019 | LSL_Types.list l = new LSL_Types.list(); | 6086 | LSL_List l = new LSL_List(); |
6020 | ScenePresence av = World.GetScenePresence(id); | 6087 | ScenePresence av = World.GetScenePresence(id); |
6021 | if (av == null) | 6088 | if (av == null) |
6022 | return l; | 6089 | return l; |
@@ -6043,19 +6110,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6043 | // ScriptSleep(2000); | 6110 | // ScriptSleep(2000); |
6044 | } | 6111 | } |
6045 | 6112 | ||
6046 | public LSL_Types.Vector3 llGetRootPosition() | 6113 | public LSL_Vector llGetRootPosition() |
6047 | { | 6114 | { |
6048 | m_host.AddScriptLPS(1); | 6115 | m_host.AddScriptLPS(1); |
6049 | return new LSL_Types.Vector3(m_host.ParentGroup.AbsolutePosition.X, m_host.ParentGroup.AbsolutePosition.Y, m_host.ParentGroup.AbsolutePosition.Z); | 6116 | return new LSL_Vector(m_host.ParentGroup.AbsolutePosition.X, m_host.ParentGroup.AbsolutePosition.Y, m_host.ParentGroup.AbsolutePosition.Z); |
6050 | } | 6117 | } |
6051 | 6118 | ||
6052 | public LSL_Types.Quaternion llGetRootRotation() | 6119 | public LSL_Rotation llGetRootRotation() |
6053 | { | 6120 | { |
6054 | m_host.AddScriptLPS(1); | 6121 | m_host.AddScriptLPS(1); |
6055 | return new LSL_Types.Quaternion(m_host.ParentGroup.GroupRotation.X, m_host.ParentGroup.GroupRotation.Y, m_host.ParentGroup.GroupRotation.Z, m_host.ParentGroup.GroupRotation.W); | 6122 | return new LSL_Rotation(m_host.ParentGroup.GroupRotation.X, m_host.ParentGroup.GroupRotation.Y, m_host.ParentGroup.GroupRotation.Z, m_host.ParentGroup.GroupRotation.W); |
6056 | } | 6123 | } |
6057 | 6124 | ||
6058 | public LSL_Types.LSLString llGetObjectDesc() | 6125 | public LSL_String llGetObjectDesc() |
6059 | { | 6126 | { |
6060 | return m_host.Description!=null?m_host.Description:String.Empty; | 6127 | return m_host.Description!=null?m_host.Description:String.Empty; |
6061 | } | 6128 | } |
@@ -6066,13 +6133,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6066 | m_host.Description = desc!=null?desc:String.Empty; | 6133 | m_host.Description = desc!=null?desc:String.Empty; |
6067 | } | 6134 | } |
6068 | 6135 | ||
6069 | public LSL_Types.LSLString llGetCreator() | 6136 | public LSL_String llGetCreator() |
6070 | { | 6137 | { |
6071 | m_host.AddScriptLPS(1); | 6138 | m_host.AddScriptLPS(1); |
6072 | return m_host.ObjectCreator.ToString(); | 6139 | return m_host.ObjectCreator.ToString(); |
6073 | } | 6140 | } |
6074 | 6141 | ||
6075 | public LSL_Types.LSLString llGetTimestamp() | 6142 | public LSL_String llGetTimestamp() |
6076 | { | 6143 | { |
6077 | m_host.AddScriptLPS(1); | 6144 | m_host.AddScriptLPS(1); |
6078 | return DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"); | 6145 | return DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"); |
@@ -6156,29 +6223,29 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6156 | } | 6223 | } |
6157 | } | 6224 | } |
6158 | 6225 | ||
6159 | public LSL_Types.LSLInteger llGetNumberOfPrims() | 6226 | public LSL_Integer llGetNumberOfPrims() |
6160 | { | 6227 | { |
6161 | m_host.AddScriptLPS(1); | 6228 | m_host.AddScriptLPS(1); |
6162 | return m_host.ParentGroup.PrimCount; | 6229 | return m_host.ParentGroup.PrimCount; |
6163 | } | 6230 | } |
6164 | 6231 | ||
6165 | public LSL_Types.list llGetBoundingBox(string obj) | 6232 | public LSL_List llGetBoundingBox(string obj) |
6166 | { | 6233 | { |
6167 | m_host.AddScriptLPS(1); | 6234 | m_host.AddScriptLPS(1); |
6168 | NotImplemented("llGetBoundingBox"); | 6235 | NotImplemented("llGetBoundingBox"); |
6169 | return new LSL_Types.list(); | 6236 | return new LSL_List(); |
6170 | } | 6237 | } |
6171 | 6238 | ||
6172 | public LSL_Types.Vector3 llGetGeometricCenter() | 6239 | public LSL_Vector llGetGeometricCenter() |
6173 | { | 6240 | { |
6174 | return new LSL_Types.Vector3(m_host.GetGeometricCenter().X, m_host.GetGeometricCenter().Y, m_host.GetGeometricCenter().Z); | 6241 | return new LSL_Vector(m_host.GetGeometricCenter().X, m_host.GetGeometricCenter().Y, m_host.GetGeometricCenter().Z); |
6175 | } | 6242 | } |
6176 | 6243 | ||
6177 | public LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules) | 6244 | public LSL_List llGetPrimitiveParams(LSL_List rules) |
6178 | { | 6245 | { |
6179 | m_host.AddScriptLPS(1); | 6246 | m_host.AddScriptLPS(1); |
6180 | 6247 | ||
6181 | LSL_Types.list res = new LSL_Types.list(); | 6248 | LSL_List res = new LSL_List(); |
6182 | int idx=0; | 6249 | int idx=0; |
6183 | while (idx < rules.Length) | 6250 | while (idx < rules.Length) |
6184 | { | 6251 | { |
@@ -6188,44 +6255,44 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6188 | switch (code) | 6255 | switch (code) |
6189 | { | 6256 | { |
6190 | case (int)ScriptBaseClass.PRIM_MATERIAL: | 6257 | case (int)ScriptBaseClass.PRIM_MATERIAL: |
6191 | res.Add(new LSL_Types.LSLInteger(m_host.Material)); | 6258 | res.Add(new LSL_Integer(m_host.Material)); |
6192 | break; | 6259 | break; |
6193 | 6260 | ||
6194 | case (int)ScriptBaseClass.PRIM_PHYSICS: | 6261 | case (int)ScriptBaseClass.PRIM_PHYSICS: |
6195 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Physics) != 0) | 6262 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Physics) != 0) |
6196 | res.Add(new LSL_Types.LSLInteger(1)); | 6263 | res.Add(new LSL_Integer(1)); |
6197 | else | 6264 | else |
6198 | res.Add(new LSL_Types.LSLInteger(0)); | 6265 | res.Add(new LSL_Integer(0)); |
6199 | break; | 6266 | break; |
6200 | 6267 | ||
6201 | case (int)ScriptBaseClass.PRIM_TEMP_ON_REZ: | 6268 | case (int)ScriptBaseClass.PRIM_TEMP_ON_REZ: |
6202 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.TemporaryOnRez) != 0) | 6269 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.TemporaryOnRez) != 0) |
6203 | res.Add(new LSL_Types.LSLInteger(1)); | 6270 | res.Add(new LSL_Integer(1)); |
6204 | else | 6271 | else |
6205 | res.Add(new LSL_Types.LSLInteger(0)); | 6272 | res.Add(new LSL_Integer(0)); |
6206 | break; | 6273 | break; |
6207 | 6274 | ||
6208 | case (int)ScriptBaseClass.PRIM_PHANTOM: | 6275 | case (int)ScriptBaseClass.PRIM_PHANTOM: |
6209 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) != 0) | 6276 | if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) != 0) |
6210 | res.Add(new LSL_Types.LSLInteger(1)); | 6277 | res.Add(new LSL_Integer(1)); |
6211 | else | 6278 | else |
6212 | res.Add(new LSL_Types.LSLInteger(0)); | 6279 | res.Add(new LSL_Integer(0)); |
6213 | break; | 6280 | break; |
6214 | 6281 | ||
6215 | case (int)ScriptBaseClass.PRIM_POSITION: | 6282 | case (int)ScriptBaseClass.PRIM_POSITION: |
6216 | res.Add(new LSL_Types.Vector3(m_host.AbsolutePosition.X, | 6283 | res.Add(new LSL_Vector(m_host.AbsolutePosition.X, |
6217 | m_host.AbsolutePosition.Y, | 6284 | m_host.AbsolutePosition.Y, |
6218 | m_host.AbsolutePosition.Z)); | 6285 | m_host.AbsolutePosition.Z)); |
6219 | break; | 6286 | break; |
6220 | 6287 | ||
6221 | case (int)ScriptBaseClass.PRIM_SIZE: | 6288 | case (int)ScriptBaseClass.PRIM_SIZE: |
6222 | res.Add(new LSL_Types.Vector3(m_host.Scale.X, | 6289 | res.Add(new LSL_Vector(m_host.Scale.X, |
6223 | m_host.Scale.Y, | 6290 | m_host.Scale.Y, |
6224 | m_host.Scale.Z)); | 6291 | m_host.Scale.Z)); |
6225 | break; | 6292 | break; |
6226 | 6293 | ||
6227 | case (int)ScriptBaseClass.PRIM_ROTATION: | 6294 | case (int)ScriptBaseClass.PRIM_ROTATION: |
6228 | res.Add(new LSL_Types.Quaternion(m_host.RotationOffset.X, | 6295 | res.Add(new LSL_Rotation(m_host.RotationOffset.X, |
6229 | m_host.RotationOffset.Y, | 6296 | m_host.RotationOffset.Y, |
6230 | m_host.RotationOffset.Z, | 6297 | m_host.RotationOffset.Z, |
6231 | m_host.RotationOffset.W)); | 6298 | m_host.RotationOffset.W)); |
@@ -6235,69 +6302,69 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6235 | // implementing box | 6302 | // implementing box |
6236 | PrimitiveBaseShape Shape = m_host.Shape; | 6303 | PrimitiveBaseShape Shape = m_host.Shape; |
6237 | int primType = getScriptPrimType(m_host.Shape); | 6304 | int primType = getScriptPrimType(m_host.Shape); |
6238 | res.Add(new LSL_Types.LSLInteger(primType)); | 6305 | res.Add(new LSL_Integer(primType)); |
6239 | switch (primType) | 6306 | switch (primType) |
6240 | { | 6307 | { |
6241 | case ScriptBaseClass.PRIM_TYPE_BOX: | 6308 | case ScriptBaseClass.PRIM_TYPE_BOX: |
6242 | case ScriptBaseClass.PRIM_TYPE_CYLINDER: | 6309 | case ScriptBaseClass.PRIM_TYPE_CYLINDER: |
6243 | case ScriptBaseClass.PRIM_TYPE_PRISM: | 6310 | case ScriptBaseClass.PRIM_TYPE_PRISM: |
6244 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6311 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6245 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6312 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6246 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6313 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6247 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6314 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6248 | res.Add(new LSL_Types.Vector3(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); | 6315 | res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); |
6249 | res.Add(new LSL_Types.Vector3(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); | 6316 | res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); |
6250 | break; | 6317 | break; |
6251 | 6318 | ||
6252 | case ScriptBaseClass.PRIM_TYPE_SPHERE: | 6319 | case ScriptBaseClass.PRIM_TYPE_SPHERE: |
6253 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6320 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6254 | res.Add(new LSL_Types.Vector3(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); | 6321 | res.Add(new LSL_Vector(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); |
6255 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6322 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6256 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6323 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6257 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6324 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6258 | break; | 6325 | break; |
6259 | 6326 | ||
6260 | case ScriptBaseClass.PRIM_TYPE_SCULPT: | 6327 | case ScriptBaseClass.PRIM_TYPE_SCULPT: |
6261 | res.Add(Shape.SculptTexture.ToString()); | 6328 | res.Add(Shape.SculptTexture.ToString()); |
6262 | res.Add(new LSL_Types.LSLInteger(Shape.SculptType)); | 6329 | res.Add(new LSL_Integer(Shape.SculptType)); |
6263 | break; | 6330 | break; |
6264 | 6331 | ||
6265 | case ScriptBaseClass.PRIM_TYPE_RING: | 6332 | case ScriptBaseClass.PRIM_TYPE_RING: |
6266 | case ScriptBaseClass.PRIM_TYPE_TUBE: | 6333 | case ScriptBaseClass.PRIM_TYPE_TUBE: |
6267 | case ScriptBaseClass.PRIM_TYPE_TORUS: | 6334 | case ScriptBaseClass.PRIM_TYPE_TORUS: |
6268 | // holeshape | 6335 | // holeshape |
6269 | res.Add(new LSL_Types.LSLInteger(Shape.ProfileCurve)); | 6336 | res.Add(new LSL_Integer(Shape.ProfileCurve)); |
6270 | 6337 | ||
6271 | // cut | 6338 | // cut |
6272 | res.Add(new LSL_Types.Vector3(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); | 6339 | res.Add(new LSL_Vector(Shape.PathBegin / 50000.0, 1 - Shape.PathEnd / 50000.0, 0)); |
6273 | 6340 | ||
6274 | // hollow | 6341 | // hollow |
6275 | res.Add(new LSL_Types.LSLFloat(Shape.ProfileHollow / 50000.0)); | 6342 | res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); |
6276 | 6343 | ||
6277 | // twist | 6344 | // twist |
6278 | res.Add(new LSL_Types.Vector3(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); | 6345 | res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); |
6279 | 6346 | ||
6280 | // vector holesize | 6347 | // vector holesize |
6281 | res.Add(new LSL_Types.Vector3(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); | 6348 | res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); |
6282 | 6349 | ||
6283 | // vector topshear | 6350 | // vector topshear |
6284 | res.Add(new LSL_Types.Vector3(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); | 6351 | res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); |
6285 | 6352 | ||
6286 | // vector profilecut | 6353 | // vector profilecut |
6287 | res.Add(new LSL_Types.Vector3(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); | 6354 | res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); |
6288 | 6355 | ||
6289 | 6356 | ||
6290 | // vector tapera | 6357 | // vector tapera |
6291 | res.Add(new LSL_Types.Vector3(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0)); | 6358 | res.Add(new LSL_Vector(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0)); |
6292 | 6359 | ||
6293 | // float revolutions, | 6360 | // float revolutions, |
6294 | res.Add(new LSL_Types.LSLFloat(Shape.PathRevolutions / 50.0)); // needs fixing :( | 6361 | res.Add(new LSL_Float(Shape.PathRevolutions / 50.0)); // needs fixing :( |
6295 | 6362 | ||
6296 | // float radiusoffset, | 6363 | // float radiusoffset, |
6297 | res.Add(new LSL_Types.LSLFloat(Shape.PathRadiusOffset / 100.0)); | 6364 | res.Add(new LSL_Float(Shape.PathRadiusOffset / 100.0)); |
6298 | 6365 | ||
6299 | // float skew | 6366 | // float skew |
6300 | res.Add(new LSL_Types.LSLFloat(Shape.PathSkew / 100.0)); | 6367 | res.Add(new LSL_Float(Shape.PathSkew / 100.0)); |
6301 | break; | 6368 | break; |
6302 | 6369 | ||
6303 | } | 6370 | } |
@@ -6315,14 +6382,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6315 | { | 6382 | { |
6316 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); | 6383 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); |
6317 | 6384 | ||
6318 | res.Add(new LSL_Types.LSLString(texface.TextureID.ToString())); | 6385 | res.Add(new LSL_String(texface.TextureID.ToString())); |
6319 | res.Add(new LSL_Types.Vector3(texface.RepeatU, | 6386 | res.Add(new LSL_Vector(texface.RepeatU, |
6320 | texface.RepeatV, | 6387 | texface.RepeatV, |
6321 | 0)); | 6388 | 0)); |
6322 | res.Add(new LSL_Types.Vector3(texface.OffsetU, | 6389 | res.Add(new LSL_Vector(texface.OffsetU, |
6323 | texface.OffsetV, | 6390 | texface.OffsetV, |
6324 | 0)); | 6391 | 0)); |
6325 | res.Add(new LSL_Types.LSLFloat(texface.Rotation)); | 6392 | res.Add(new LSL_Float(texface.Rotation)); |
6326 | } | 6393 | } |
6327 | } | 6394 | } |
6328 | else | 6395 | else |
@@ -6331,14 +6398,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6331 | { | 6398 | { |
6332 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); | 6399 | Primitive.TextureEntryFace texface = tex.GetFace((uint)face); |
6333 | 6400 | ||
6334 | res.Add(new LSL_Types.LSLString(texface.TextureID.ToString())); | 6401 | res.Add(new LSL_String(texface.TextureID.ToString())); |
6335 | res.Add(new LSL_Types.Vector3(texface.RepeatU, | 6402 | res.Add(new LSL_Vector(texface.RepeatU, |
6336 | texface.RepeatV, | 6403 | texface.RepeatV, |
6337 | 0)); | 6404 | 0)); |
6338 | res.Add(new LSL_Types.Vector3(texface.OffsetU, | 6405 | res.Add(new LSL_Vector(texface.OffsetU, |
6339 | texface.OffsetV, | 6406 | texface.OffsetV, |
6340 | 0)); | 6407 | 0)); |
6341 | res.Add(new LSL_Types.LSLFloat(texface.Rotation)); | 6408 | res.Add(new LSL_Float(texface.Rotation)); |
6342 | } | 6409 | } |
6343 | } | 6410 | } |
6344 | break; | 6411 | break; |
@@ -6356,19 +6423,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6356 | for (face = 0 ; face < GetNumberOfSides(m_host) ; face++) | 6423 | for (face = 0 ; face < GetNumberOfSides(m_host) ; face++) |
6357 | { | 6424 | { |
6358 | texcolor = tex.GetFace((uint)face).RGBA; | 6425 | texcolor = tex.GetFace((uint)face).RGBA; |
6359 | res.Add(new LSL_Types.Vector3(texcolor.R, | 6426 | res.Add(new LSL_Vector(texcolor.R, |
6360 | texcolor.G, | 6427 | texcolor.G, |
6361 | texcolor.B)); | 6428 | texcolor.B)); |
6362 | res.Add(new LSL_Types.LSLFloat(texcolor.A)); | 6429 | res.Add(new LSL_Float(texcolor.A)); |
6363 | } | 6430 | } |
6364 | } | 6431 | } |
6365 | else | 6432 | else |
6366 | { | 6433 | { |
6367 | texcolor = tex.GetFace((uint)face).RGBA; | 6434 | texcolor = tex.GetFace((uint)face).RGBA; |
6368 | res.Add(new LSL_Types.Vector3(texcolor.R, | 6435 | res.Add(new LSL_Vector(texcolor.R, |
6369 | texcolor.G, | 6436 | texcolor.G, |
6370 | texcolor.B)); | 6437 | texcolor.B)); |
6371 | res.Add(new LSL_Types.LSLFloat(texcolor.A)); | 6438 | res.Add(new LSL_Float(texcolor.A)); |
6372 | } | 6439 | } |
6373 | break; | 6440 | break; |
6374 | 6441 | ||
@@ -6379,8 +6446,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6379 | 6446 | ||
6380 | face=(int)rules.GetLSLIntegerItem(idx++); | 6447 | face=(int)rules.GetLSLIntegerItem(idx++); |
6381 | 6448 | ||
6382 | res.Add(new LSL_Types.LSLInteger(0)); | 6449 | res.Add(new LSL_Integer(0)); |
6383 | res.Add(new LSL_Types.LSLInteger(0)); | 6450 | res.Add(new LSL_Integer(0)); |
6384 | break; | 6451 | break; |
6385 | 6452 | ||
6386 | case (int)ScriptBaseClass.PRIM_FULLBRIGHT: | 6453 | case (int)ScriptBaseClass.PRIM_FULLBRIGHT: |
@@ -6390,22 +6457,22 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6390 | 6457 | ||
6391 | face=(int)rules.GetLSLIntegerItem(idx++); | 6458 | face=(int)rules.GetLSLIntegerItem(idx++); |
6392 | 6459 | ||
6393 | res.Add(new LSL_Types.LSLInteger(0)); | 6460 | res.Add(new LSL_Integer(0)); |
6394 | break; | 6461 | break; |
6395 | 6462 | ||
6396 | case (int)ScriptBaseClass.PRIM_FLEXIBLE: | 6463 | case (int)ScriptBaseClass.PRIM_FLEXIBLE: |
6397 | PrimitiveBaseShape shape = m_host.Shape; | 6464 | PrimitiveBaseShape shape = m_host.Shape; |
6398 | 6465 | ||
6399 | if (shape.FlexiEntry) | 6466 | if (shape.FlexiEntry) |
6400 | res.Add(new LSL_Types.LSLInteger(1)); // active | 6467 | res.Add(new LSL_Integer(1)); // active |
6401 | else | 6468 | else |
6402 | res.Add(new LSL_Types.LSLInteger(0)); | 6469 | res.Add(new LSL_Integer(0)); |
6403 | res.Add(new LSL_Types.LSLInteger(shape.FlexiSoftness));// softness | 6470 | res.Add(new LSL_Integer(shape.FlexiSoftness));// softness |
6404 | res.Add(new LSL_Types.LSLFloat(shape.FlexiGravity)); // gravity | 6471 | res.Add(new LSL_Float(shape.FlexiGravity)); // gravity |
6405 | res.Add(new LSL_Types.LSLFloat(shape.FlexiDrag)); // friction | 6472 | res.Add(new LSL_Float(shape.FlexiDrag)); // friction |
6406 | res.Add(new LSL_Types.LSLFloat(shape.FlexiWind)); // wind | 6473 | res.Add(new LSL_Float(shape.FlexiWind)); // wind |
6407 | res.Add(new LSL_Types.LSLFloat(shape.FlexiTension)); // tension | 6474 | res.Add(new LSL_Float(shape.FlexiTension)); // tension |
6408 | res.Add(new LSL_Types.Vector3(shape.FlexiForceX, // force | 6475 | res.Add(new LSL_Vector(shape.FlexiForceX, // force |
6409 | shape.FlexiForceY, | 6476 | shape.FlexiForceY, |
6410 | shape.FlexiForceZ)); | 6477 | shape.FlexiForceZ)); |
6411 | break; | 6478 | break; |
@@ -6418,22 +6485,22 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6418 | 6485 | ||
6419 | face=(int)rules.GetLSLIntegerItem(idx++); | 6486 | face=(int)rules.GetLSLIntegerItem(idx++); |
6420 | 6487 | ||
6421 | res.Add(new LSL_Types.LSLInteger(0)); | 6488 | res.Add(new LSL_Integer(0)); |
6422 | break; | 6489 | break; |
6423 | 6490 | ||
6424 | case (int)ScriptBaseClass.PRIM_POINT_LIGHT: | 6491 | case (int)ScriptBaseClass.PRIM_POINT_LIGHT: |
6425 | shape = m_host.Shape; | 6492 | shape = m_host.Shape; |
6426 | 6493 | ||
6427 | if (shape.LightEntry) | 6494 | if (shape.LightEntry) |
6428 | res.Add(new LSL_Types.LSLInteger(1)); // active | 6495 | res.Add(new LSL_Integer(1)); // active |
6429 | else | 6496 | else |
6430 | res.Add(new LSL_Types.LSLInteger(0)); | 6497 | res.Add(new LSL_Integer(0)); |
6431 | res.Add(new LSL_Types.Vector3(shape.LightColorR, // color | 6498 | res.Add(new LSL_Vector(shape.LightColorR, // color |
6432 | shape.LightColorG, | 6499 | shape.LightColorG, |
6433 | shape.LightColorB)); | 6500 | shape.LightColorB)); |
6434 | res.Add(new LSL_Types.LSLFloat(shape.LightIntensity)); // intensity | 6501 | res.Add(new LSL_Float(shape.LightIntensity)); // intensity |
6435 | res.Add(new LSL_Types.LSLFloat(shape.LightRadius)); // radius | 6502 | res.Add(new LSL_Float(shape.LightRadius)); // radius |
6436 | res.Add(new LSL_Types.LSLFloat(shape.LightFalloff)); // falloff | 6503 | res.Add(new LSL_Float(shape.LightFalloff)); // falloff |
6437 | break; | 6504 | break; |
6438 | 6505 | ||
6439 | case (int)ScriptBaseClass.PRIM_GLOW: | 6506 | case (int)ScriptBaseClass.PRIM_GLOW: |
@@ -6443,7 +6510,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6443 | 6510 | ||
6444 | face=(int)rules.GetLSLIntegerItem(idx++); | 6511 | face=(int)rules.GetLSLIntegerItem(idx++); |
6445 | 6512 | ||
6446 | res.Add(new LSL_Types.LSLFloat(0)); | 6513 | res.Add(new LSL_Float(0)); |
6447 | break; | 6514 | break; |
6448 | } | 6515 | } |
6449 | } | 6516 | } |
@@ -6577,7 +6644,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6577 | // characters are padded with "=". | 6644 | // characters are padded with "=". |
6578 | // </returns> | 6645 | // </returns> |
6579 | 6646 | ||
6580 | public LSL_Types.LSLString llIntegerToBase64(int number) | 6647 | public LSL_String llIntegerToBase64(int number) |
6581 | { | 6648 | { |
6582 | // uninitialized string | 6649 | // uninitialized string |
6583 | 6650 | ||
@@ -6640,7 +6707,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6640 | // </para> | 6707 | // </para> |
6641 | // </remarks> | 6708 | // </remarks> |
6642 | 6709 | ||
6643 | public LSL_Types.LSLInteger llBase64ToInteger(string str) | 6710 | public LSL_Integer llBase64ToInteger(string str) |
6644 | { | 6711 | { |
6645 | int number = 0; | 6712 | int number = 0; |
6646 | int digit; | 6713 | int digit; |
@@ -6700,19 +6767,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6700 | return number; | 6767 | return number; |
6701 | } | 6768 | } |
6702 | 6769 | ||
6703 | public LSL_Types.LSLFloat llGetGMTclock() | 6770 | public LSL_Float llGetGMTclock() |
6704 | { | 6771 | { |
6705 | m_host.AddScriptLPS(1); | 6772 | m_host.AddScriptLPS(1); |
6706 | return DateTime.UtcNow.TimeOfDay.TotalSeconds; | 6773 | return DateTime.UtcNow.TimeOfDay.TotalSeconds; |
6707 | } | 6774 | } |
6708 | 6775 | ||
6709 | public LSL_Types.LSLString llGetSimulatorHostname() | 6776 | public LSL_String llGetSimulatorHostname() |
6710 | { | 6777 | { |
6711 | m_host.AddScriptLPS(1); | 6778 | m_host.AddScriptLPS(1); |
6712 | return System.Environment.MachineName; | 6779 | return System.Environment.MachineName; |
6713 | } | 6780 | } |
6714 | 6781 | ||
6715 | public void llSetLocalRot(LSL_Types.Quaternion rot) | 6782 | public void llSetLocalRot(LSL_Rotation rot) |
6716 | { | 6783 | { |
6717 | m_host.AddScriptLPS(1); | 6784 | m_host.AddScriptLPS(1); |
6718 | m_host.RotationOffset = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); | 6785 | m_host.RotationOffset = new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s); |
@@ -6767,7 +6834,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6767 | // of arrays or other objects. | 6834 | // of arrays or other objects. |
6768 | // </remarks> | 6835 | // </remarks> |
6769 | 6836 | ||
6770 | public LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list separators, LSL_Types.list spacers) | 6837 | public LSL_List llParseStringKeepNulls(string src, LSL_List separators, LSL_List spacers) |
6771 | { | 6838 | { |
6772 | int beginning = 0; | 6839 | int beginning = 0; |
6773 | int srclen = src.Length; | 6840 | int srclen = src.Length; |
@@ -6785,7 +6852,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6785 | 6852 | ||
6786 | // Initial capacity reduces resize cost | 6853 | // Initial capacity reduces resize cost |
6787 | 6854 | ||
6788 | LSL_Types.list tokens = new LSL_Types.list(); | 6855 | LSL_List tokens = new LSL_List(); |
6789 | 6856 | ||
6790 | m_host.AddScriptLPS(1); | 6857 | m_host.AddScriptLPS(1); |
6791 | 6858 | ||
@@ -6895,7 +6962,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6895 | return tokens; | 6962 | return tokens; |
6896 | } | 6963 | } |
6897 | 6964 | ||
6898 | public LSL_Types.LSLInteger llGetObjectPermMask(int mask) | 6965 | public LSL_Integer llGetObjectPermMask(int mask) |
6899 | { | 6966 | { |
6900 | m_host.AddScriptLPS(1); | 6967 | m_host.AddScriptLPS(1); |
6901 | 6968 | ||
@@ -6968,7 +7035,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6968 | } | 7035 | } |
6969 | } | 7036 | } |
6970 | 7037 | ||
6971 | public LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask) | 7038 | public LSL_Integer llGetInventoryPermMask(string item, int mask) |
6972 | { | 7039 | { |
6973 | m_host.AddScriptLPS(1); | 7040 | m_host.AddScriptLPS(1); |
6974 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7041 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -6999,7 +7066,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6999 | NotImplemented("llSetInventoryPermMask"); | 7066 | NotImplemented("llSetInventoryPermMask"); |
7000 | } | 7067 | } |
7001 | 7068 | ||
7002 | public LSL_Types.LSLString llGetInventoryCreator(string item) | 7069 | public LSL_String llGetInventoryCreator(string item) |
7003 | { | 7070 | { |
7004 | m_host.AddScriptLPS(1); | 7071 | m_host.AddScriptLPS(1); |
7005 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7072 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -7022,7 +7089,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7022 | // wComm.DeliverMessage(ChatTypeEnum.Owner, 0, m_host.Name, m_host.UUID, msg); | 7089 | // wComm.DeliverMessage(ChatTypeEnum.Owner, 0, m_host.Name, m_host.UUID, msg); |
7023 | } | 7090 | } |
7024 | 7091 | ||
7025 | public LSL_Types.LSLString llRequestSimulatorData(string simulator, int data) | 7092 | public LSL_String llRequestSimulatorData(string simulator, int data) |
7026 | { | 7093 | { |
7027 | try | 7094 | try |
7028 | { | 7095 | { |
@@ -7040,7 +7107,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7040 | // ScriptSleep(1000); | 7107 | // ScriptSleep(1000); |
7041 | return UUID.Zero.ToString(); | 7108 | return UUID.Zero.ToString(); |
7042 | } | 7109 | } |
7043 | reply = new LSL_Types.Vector3( | 7110 | reply = new LSL_Vector( |
7044 | info.RegionLocX * Constants.RegionSize, | 7111 | info.RegionLocX * Constants.RegionSize, |
7045 | info.RegionLocY * Constants.RegionSize, | 7112 | info.RegionLocY * Constants.RegionSize, |
7046 | 0).ToString(); | 7113 | 0).ToString(); |
@@ -7096,7 +7163,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7096 | m_host.SetForceMouselook(mouselook != 0); | 7163 | m_host.SetForceMouselook(mouselook != 0); |
7097 | } | 7164 | } |
7098 | 7165 | ||
7099 | public LSL_Types.LSLFloat llGetObjectMass(string id) | 7166 | public LSL_Float llGetObjectMass(string id) |
7100 | { | 7167 | { |
7101 | m_host.AddScriptLPS(1); | 7168 | m_host.AddScriptLPS(1); |
7102 | UUID key = new UUID(); | 7169 | UUID key = new UUID(); |
@@ -7119,9 +7186,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7119 | /// and the source list is added as a suffix. | 7186 | /// and the source list is added as a suffix. |
7120 | /// </summary> | 7187 | /// </summary> |
7121 | 7188 | ||
7122 | public LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end) | 7189 | public LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end) |
7123 | { | 7190 | { |
7124 | LSL_Types.list pref = null; | 7191 | LSL_List pref = null; |
7125 | 7192 | ||
7126 | m_host.AddScriptLPS(1); | 7193 | m_host.AddScriptLPS(1); |
7127 | 7194 | ||
@@ -7198,7 +7265,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7198 | // ScriptSleep(10000); | 7265 | // ScriptSleep(10000); |
7199 | } | 7266 | } |
7200 | 7267 | ||
7201 | public void llParcelMediaCommandList(LSL_Types.list commandList) | 7268 | public void llParcelMediaCommandList(LSL_List commandList) |
7202 | { | 7269 | { |
7203 | //TO DO: Implement the missing commands | 7270 | //TO DO: Implement the missing commands |
7204 | //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. | 7271 | //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. |
@@ -7296,10 +7363,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7296 | // ScriptSleep(2000); | 7363 | // ScriptSleep(2000); |
7297 | } | 7364 | } |
7298 | 7365 | ||
7299 | public LSL_Types.list llParcelMediaQuery(LSL_Types.list aList) | 7366 | public LSL_List llParcelMediaQuery(LSL_List aList) |
7300 | { | 7367 | { |
7301 | m_host.AddScriptLPS(1); | 7368 | m_host.AddScriptLPS(1); |
7302 | LSL_Types.list list = new LSL_Types.list(); | 7369 | LSL_List list = new LSL_List(); |
7303 | //TO DO: make the implementation for the missing commands | 7370 | //TO DO: make the implementation for the missing commands |
7304 | //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. | 7371 | //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. |
7305 | //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. | 7372 | //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. |
@@ -7315,13 +7382,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7315 | switch ((ParcelMediaCommandEnum) aList.Data[i]) | 7382 | switch ((ParcelMediaCommandEnum) aList.Data[i]) |
7316 | { | 7383 | { |
7317 | case ParcelMediaCommandEnum.Url: | 7384 | case ParcelMediaCommandEnum.Url: |
7318 | list.Add(new LSL_Types.LSLString(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaURL)); | 7385 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaURL)); |
7319 | break; | 7386 | break; |
7320 | case ParcelMediaCommandEnum.Desc: | 7387 | case ParcelMediaCommandEnum.Desc: |
7321 | list.Add(new LSL_Types.LSLString(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).Description)); | 7388 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).Description)); |
7322 | break; | 7389 | break; |
7323 | case ParcelMediaCommandEnum.Texture: | 7390 | case ParcelMediaCommandEnum.Texture: |
7324 | list.Add(new LSL_Types.LSLString(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaID.ToString())); | 7391 | list.Add(new LSL_String(World.GetLandData(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).MediaID.ToString())); |
7325 | break; | 7392 | break; |
7326 | default: | 7393 | default: |
7327 | ParcelMediaCommandEnum mediaCommandEnum = ParcelMediaCommandEnum.Url; | 7394 | ParcelMediaCommandEnum mediaCommandEnum = ParcelMediaCommandEnum.Url; |
@@ -7335,7 +7402,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7335 | return list; | 7402 | return list; |
7336 | } | 7403 | } |
7337 | 7404 | ||
7338 | public LSL_Types.LSLInteger llModPow(int a, int b, int c) | 7405 | public LSL_Integer llModPow(int a, int b, int c) |
7339 | { | 7406 | { |
7340 | m_host.AddScriptLPS(1); | 7407 | m_host.AddScriptLPS(1); |
7341 | Int64 tmp = 0; | 7408 | Int64 tmp = 0; |
@@ -7344,7 +7411,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7344 | return Convert.ToInt32(tmp); | 7411 | return Convert.ToInt32(tmp); |
7345 | } | 7412 | } |
7346 | 7413 | ||
7347 | public LSL_Types.LSLInteger llGetInventoryType(string name) | 7414 | public LSL_Integer llGetInventoryType(string name) |
7348 | { | 7415 | { |
7349 | m_host.AddScriptLPS(1); | 7416 | m_host.AddScriptLPS(1); |
7350 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) | 7417 | foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory) |
@@ -7357,7 +7424,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7357 | return -1; | 7424 | return -1; |
7358 | } | 7425 | } |
7359 | 7426 | ||
7360 | public void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons) | 7427 | public void llSetPayPrice(int price, LSL_List quick_pay_buttons) |
7361 | { | 7428 | { |
7362 | m_host.AddScriptLPS(1); | 7429 | m_host.AddScriptLPS(1); |
7363 | 7430 | ||
@@ -7368,40 +7435,40 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7368 | } | 7435 | } |
7369 | m_host.ParentGroup.RootPart.PayPrice[0]=price; | 7436 | m_host.ParentGroup.RootPart.PayPrice[0]=price; |
7370 | 7437 | ||
7371 | m_host.ParentGroup.RootPart.PayPrice[1]=(LSL_Types.LSLInteger)quick_pay_buttons.Data[0]; | 7438 | m_host.ParentGroup.RootPart.PayPrice[1]=(LSL_Integer)quick_pay_buttons.Data[0]; |
7372 | m_host.ParentGroup.RootPart.PayPrice[2]=(LSL_Types.LSLInteger)quick_pay_buttons.Data[1]; | 7439 | m_host.ParentGroup.RootPart.PayPrice[2]=(LSL_Integer)quick_pay_buttons.Data[1]; |
7373 | m_host.ParentGroup.RootPart.PayPrice[3]=(LSL_Types.LSLInteger)quick_pay_buttons.Data[2]; | 7440 | m_host.ParentGroup.RootPart.PayPrice[3]=(LSL_Integer)quick_pay_buttons.Data[2]; |
7374 | m_host.ParentGroup.RootPart.PayPrice[4]=(LSL_Types.LSLInteger)quick_pay_buttons.Data[3]; | 7441 | m_host.ParentGroup.RootPart.PayPrice[4]=(LSL_Integer)quick_pay_buttons.Data[3]; |
7375 | m_host.ParentGroup.HasGroupChanged = true; | 7442 | m_host.ParentGroup.HasGroupChanged = true; |
7376 | } | 7443 | } |
7377 | 7444 | ||
7378 | public LSL_Types.Vector3 llGetCameraPos() | 7445 | public LSL_Vector llGetCameraPos() |
7379 | { | 7446 | { |
7380 | m_host.AddScriptLPS(1); | 7447 | m_host.AddScriptLPS(1); |
7381 | UUID invItemID=InventorySelf(); | 7448 | UUID invItemID=InventorySelf(); |
7382 | if (invItemID == UUID.Zero) | 7449 | if (invItemID == UUID.Zero) |
7383 | return new LSL_Types.Vector3(); | 7450 | return new LSL_Vector(); |
7384 | if (m_host.TaskInventory[invItemID].PermsGranter == UUID.Zero) | 7451 | if (m_host.TaskInventory[invItemID].PermsGranter == UUID.Zero) |
7385 | return new LSL_Types.Vector3(); | 7452 | return new LSL_Vector(); |
7386 | if ((m_host.TaskInventory[invItemID].PermsMask & ScriptBaseClass.PERMISSION_TRACK_CAMERA) == 0) | 7453 | if ((m_host.TaskInventory[invItemID].PermsMask & ScriptBaseClass.PERMISSION_TRACK_CAMERA) == 0) |
7387 | { | 7454 | { |
7388 | ShoutError("No permissions to track the camera"); | 7455 | ShoutError("No permissions to track the camera"); |
7389 | return new LSL_Types.Vector3(); | 7456 | return new LSL_Vector(); |
7390 | } | 7457 | } |
7391 | ScenePresence presence = World.GetScenePresence(m_host.OwnerID); | 7458 | ScenePresence presence = World.GetScenePresence(m_host.OwnerID); |
7392 | if (presence != null) | 7459 | if (presence != null) |
7393 | { | 7460 | { |
7394 | LSL_Types.Vector3 pos = new LSL_Types.Vector3(presence.CameraPosition.X, presence.CameraPosition.Y, presence.CameraPosition.Z); | 7461 | LSL_Vector pos = new LSL_Vector(presence.CameraPosition.X, presence.CameraPosition.Y, presence.CameraPosition.Z); |
7395 | return pos; | 7462 | return pos; |
7396 | } | 7463 | } |
7397 | return new LSL_Types.Vector3(); | 7464 | return new LSL_Vector(); |
7398 | } | 7465 | } |
7399 | 7466 | ||
7400 | public LSL_Types.Quaternion llGetCameraRot() | 7467 | public LSL_Rotation llGetCameraRot() |
7401 | { | 7468 | { |
7402 | m_host.AddScriptLPS(1); | 7469 | m_host.AddScriptLPS(1); |
7403 | NotImplemented("llGetCameraRot"); | 7470 | NotImplemented("llGetCameraRot"); |
7404 | return new LSL_Types.Quaternion(); | 7471 | return new LSL_Rotation(); |
7405 | } | 7472 | } |
7406 | 7473 | ||
7407 | public void llSetPrimURL() | 7474 | public void llSetPrimURL() |
@@ -7418,7 +7485,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7418 | // ScriptSleep(20000); | 7485 | // ScriptSleep(20000); |
7419 | } | 7486 | } |
7420 | 7487 | ||
7421 | public LSL_Types.LSLString llEscapeURL(string url) | 7488 | public LSL_String llEscapeURL(string url) |
7422 | { | 7489 | { |
7423 | m_host.AddScriptLPS(1); | 7490 | m_host.AddScriptLPS(1); |
7424 | try | 7491 | try |
@@ -7431,7 +7498,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7431 | } | 7498 | } |
7432 | } | 7499 | } |
7433 | 7500 | ||
7434 | public LSL_Types.LSLString llUnescapeURL(string url) | 7501 | public LSL_String llUnescapeURL(string url) |
7435 | { | 7502 | { |
7436 | m_host.AddScriptLPS(1); | 7503 | m_host.AddScriptLPS(1); |
7437 | try | 7504 | try |
@@ -7444,7 +7511,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7444 | } | 7511 | } |
7445 | } | 7512 | } |
7446 | 7513 | ||
7447 | public void llMapDestination(string simname, LSL_Types.Vector3 pos, LSL_Types.Vector3 look_at) | 7514 | public void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at) |
7448 | { | 7515 | { |
7449 | m_host.AddScriptLPS(1); | 7516 | m_host.AddScriptLPS(1); |
7450 | NotImplemented("llMapDestination"); | 7517 | NotImplemented("llMapDestination"); |
@@ -7514,7 +7581,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7514 | // ScriptSleep(100); | 7581 | // ScriptSleep(100); |
7515 | } | 7582 | } |
7516 | 7583 | ||
7517 | public void llSetCameraParams(LSL_Types.list rules) | 7584 | public void llSetCameraParams(LSL_List rules) |
7518 | { | 7585 | { |
7519 | m_host.AddScriptLPS(1); | 7586 | m_host.AddScriptLPS(1); |
7520 | 7587 | ||
@@ -7547,17 +7614,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7547 | case ScriptBaseClass.CAMERA_FOCUS: | 7614 | case ScriptBaseClass.CAMERA_FOCUS: |
7548 | case ScriptBaseClass.CAMERA_FOCUS_OFFSET: | 7615 | case ScriptBaseClass.CAMERA_FOCUS_OFFSET: |
7549 | case ScriptBaseClass.CAMERA_POSITION: | 7616 | case ScriptBaseClass.CAMERA_POSITION: |
7550 | LSL_Types.Vector3 v = (LSL_Types.Vector3)data[i]; | 7617 | LSL_Vector v = (LSL_Vector)data[i]; |
7551 | parameters.Add(type + 1, (float)v.x); | 7618 | parameters.Add(type + 1, (float)v.x); |
7552 | parameters.Add(type + 2, (float)v.y); | 7619 | parameters.Add(type + 2, (float)v.y); |
7553 | parameters.Add(type + 3, (float)v.z); | 7620 | parameters.Add(type + 3, (float)v.z); |
7554 | break; | 7621 | break; |
7555 | default: | 7622 | default: |
7556 | // TODO: clean that up as soon as the implicit casts are in | 7623 | // TODO: clean that up as soon as the implicit casts are in |
7557 | if (data[i] is LSL_Types.LSLFloat) | 7624 | if (data[i] is LSL_Float) |
7558 | parameters.Add(type, (float)((LSL_Types.LSLFloat)data[i]).value); | 7625 | parameters.Add(type, (float)((LSL_Float)data[i]).value); |
7559 | else if (data[i] is LSL_Types.LSLInteger) | 7626 | else if (data[i] is LSL_Integer) |
7560 | parameters.Add(type, (float)((LSL_Types.LSLInteger)data[i]).value); | 7627 | parameters.Add(type, (float)((LSL_Integer)data[i]).value); |
7561 | else parameters.Add(type, Convert.ToSingle(data[i])); | 7628 | else parameters.Add(type, Convert.ToSingle(data[i])); |
7562 | break; | 7629 | break; |
7563 | } | 7630 | } |
@@ -7590,10 +7657,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7590 | presence.ControllingClient.SendClearFollowCamProperties(objectID); | 7657 | presence.ControllingClient.SendClearFollowCamProperties(objectID); |
7591 | } | 7658 | } |
7592 | 7659 | ||
7593 | public LSL_Types.LSLFloat llListStatistics(int operation, LSL_Types.list src) | 7660 | public LSL_Float llListStatistics(int operation, LSL_List src) |
7594 | { | 7661 | { |
7595 | m_host.AddScriptLPS(1); | 7662 | m_host.AddScriptLPS(1); |
7596 | LSL_Types.list nums = LSL_Types.list.ToDoubleList(src); | 7663 | LSL_List nums = LSL_List.ToDoubleList(src); |
7597 | switch (operation) | 7664 | switch (operation) |
7598 | { | 7665 | { |
7599 | case ScriptBaseClass.LIST_STAT_RANGE: | 7666 | case ScriptBaseClass.LIST_STAT_RANGE: |
@@ -7623,19 +7690,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7623 | } | 7690 | } |
7624 | } | 7691 | } |
7625 | 7692 | ||
7626 | public LSL_Types.LSLInteger llGetUnixTime() | 7693 | public LSL_Integer llGetUnixTime() |
7627 | { | 7694 | { |
7628 | m_host.AddScriptLPS(1); | 7695 | m_host.AddScriptLPS(1); |
7629 | return Util.UnixTimeSinceEpoch(); | 7696 | return Util.UnixTimeSinceEpoch(); |
7630 | } | 7697 | } |
7631 | 7698 | ||
7632 | public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos) | 7699 | public LSL_Integer llGetParcelFlags(LSL_Vector pos) |
7633 | { | 7700 | { |
7634 | m_host.AddScriptLPS(1); | 7701 | m_host.AddScriptLPS(1); |
7635 | return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags; | 7702 | return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags; |
7636 | } | 7703 | } |
7637 | 7704 | ||
7638 | public LSL_Types.LSLInteger llGetRegionFlags() | 7705 | public LSL_Integer llGetRegionFlags() |
7639 | { | 7706 | { |
7640 | m_host.AddScriptLPS(1); | 7707 | m_host.AddScriptLPS(1); |
7641 | IEstateModule estate = World.RequestModuleInterface<IEstateModule>(); | 7708 | IEstateModule estate = World.RequestModuleInterface<IEstateModule>(); |
@@ -7644,7 +7711,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7644 | return (int)estate.GetRegionFlags(); | 7711 | return (int)estate.GetRegionFlags(); |
7645 | } | 7712 | } |
7646 | 7713 | ||
7647 | public LSL_Types.LSLString llXorBase64StringsCorrect(string str1, string str2) | 7714 | public LSL_String llXorBase64StringsCorrect(string str1, string str2) |
7648 | { | 7715 | { |
7649 | m_host.AddScriptLPS(1); | 7716 | m_host.AddScriptLPS(1); |
7650 | string ret = String.Empty; | 7717 | string ret = String.Empty; |
@@ -7662,7 +7729,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7662 | return llStringToBase64(ret); | 7729 | return llStringToBase64(ret); |
7663 | } | 7730 | } |
7664 | 7731 | ||
7665 | public LSL_Types.LSLString llHTTPRequest(string url, LSL_Types.list parameters, string body) | 7732 | public LSL_String llHTTPRequest(string url, LSL_List parameters, string body) |
7666 | { | 7733 | { |
7667 | // Partial implementation: support for parameter flags needed | 7734 | // Partial implementation: support for parameter flags needed |
7668 | // see http://wiki.secondlife.com/wiki/LlHTTPRequest | 7735 | // see http://wiki.secondlife.com/wiki/LlHTTPRequest |
@@ -7739,7 +7806,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7739 | // ScriptSleep(100); | 7806 | // ScriptSleep(100); |
7740 | } | 7807 | } |
7741 | 7808 | ||
7742 | public LSL_Types.LSLInteger llGetParcelPrimCount(LSL_Types.Vector3 pos, int category, int sim_wide) | 7809 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) |
7743 | { | 7810 | { |
7744 | m_host.AddScriptLPS(1); | 7811 | m_host.AddScriptLPS(1); |
7745 | 7812 | ||
@@ -7802,11 +7869,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7802 | return 0; | 7869 | return 0; |
7803 | } | 7870 | } |
7804 | 7871 | ||
7805 | public LSL_Types.list llGetParcelPrimOwners(LSL_Types.Vector3 pos) | 7872 | public LSL_List llGetParcelPrimOwners(LSL_Vector pos) |
7806 | { | 7873 | { |
7807 | m_host.AddScriptLPS(1); | 7874 | m_host.AddScriptLPS(1); |
7808 | LandObject land = (LandObject)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y); | 7875 | LandObject land = (LandObject)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y); |
7809 | LSL_Types.list ret = new LSL_Types.list(); | 7876 | LSL_List ret = new LSL_List(); |
7810 | if (land != null) | 7877 | if (land != null) |
7811 | { | 7878 | { |
7812 | foreach (KeyValuePair<UUID, int> d in land.getLandObjectOwners()) | 7879 | foreach (KeyValuePair<UUID, int> d in land.getLandObjectOwners()) |
@@ -7819,7 +7886,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7819 | return ret; | 7886 | return ret; |
7820 | } | 7887 | } |
7821 | 7888 | ||
7822 | public LSL_Types.LSLInteger llGetObjectPrimCount(string object_id) | 7889 | public LSL_Integer llGetObjectPrimCount(string object_id) |
7823 | { | 7890 | { |
7824 | m_host.AddScriptLPS(1); | 7891 | m_host.AddScriptLPS(1); |
7825 | SceneObjectPart part = World.GetSceneObjectPart(new UUID(object_id)); | 7892 | SceneObjectPart part = World.GetSceneObjectPart(new UUID(object_id)); |
@@ -7833,7 +7900,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7833 | } | 7900 | } |
7834 | } | 7901 | } |
7835 | 7902 | ||
7836 | public LSL_Types.LSLInteger llGetParcelMaxPrims(LSL_Types.Vector3 pos, int sim_wide) | 7903 | public LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide) |
7837 | { | 7904 | { |
7838 | m_host.AddScriptLPS(1); | 7905 | m_host.AddScriptLPS(1); |
7839 | // Alondria: This currently just is utilizing the normal grid's 0.22 prims/m2 calculation | 7906 | // Alondria: This currently just is utilizing the normal grid's 0.22 prims/m2 calculation |
@@ -7863,36 +7930,36 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7863 | 7930 | ||
7864 | } | 7931 | } |
7865 | 7932 | ||
7866 | public LSL_Types.list llGetParcelDetails(LSL_Types.Vector3 pos, LSL_Types.list param) | 7933 | public LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param) |
7867 | { | 7934 | { |
7868 | m_host.AddScriptLPS(1); | 7935 | m_host.AddScriptLPS(1); |
7869 | LandData land = World.GetLandData((float)pos.x, (float)pos.y); | 7936 | LandData land = World.GetLandData((float)pos.x, (float)pos.y); |
7870 | if (land == null) | 7937 | if (land == null) |
7871 | { | 7938 | { |
7872 | return new LSL_Types.list(0); | 7939 | return new LSL_List(0); |
7873 | } | 7940 | } |
7874 | LSL_Types.list ret = new LSL_Types.list(); | 7941 | LSL_List ret = new LSL_List(); |
7875 | foreach (object o in param.Data) | 7942 | foreach (object o in param.Data) |
7876 | { | 7943 | { |
7877 | switch (o.ToString()) | 7944 | switch (o.ToString()) |
7878 | { | 7945 | { |
7879 | case "0": | 7946 | case "0": |
7880 | ret = ret + new LSL_Types.list(land.Name); | 7947 | ret = ret + new LSL_List(land.Name); |
7881 | break; | 7948 | break; |
7882 | case "1": | 7949 | case "1": |
7883 | ret = ret + new LSL_Types.list(land.Description); | 7950 | ret = ret + new LSL_List(land.Description); |
7884 | break; | 7951 | break; |
7885 | case "2": | 7952 | case "2": |
7886 | ret = ret + new LSL_Types.list(land.OwnerID.ToString()); | 7953 | ret = ret + new LSL_List(land.OwnerID.ToString()); |
7887 | break; | 7954 | break; |
7888 | case "3": | 7955 | case "3": |
7889 | ret = ret + new LSL_Types.list(land.GroupID.ToString()); | 7956 | ret = ret + new LSL_List(land.GroupID.ToString()); |
7890 | break; | 7957 | break; |
7891 | case "4": | 7958 | case "4": |
7892 | ret = ret + new LSL_Types.list(land.Area); | 7959 | ret = ret + new LSL_List(land.Area); |
7893 | break; | 7960 | break; |
7894 | default: | 7961 | default: |
7895 | ret = ret + new LSL_Types.list(0); | 7962 | ret = ret + new LSL_List(0); |
7896 | break; | 7963 | break; |
7897 | } | 7964 | } |
7898 | } | 7965 | } |
@@ -7915,7 +7982,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7915 | // ScriptSleep(200); | 7982 | // ScriptSleep(200); |
7916 | } | 7983 | } |
7917 | 7984 | ||
7918 | public LSL_Types.LSLString llStringTrim(string src, int type) | 7985 | public LSL_String llStringTrim(string src, int type) |
7919 | { | 7986 | { |
7920 | m_host.AddScriptLPS(1); | 7987 | m_host.AddScriptLPS(1); |
7921 | if (type == (int)ScriptBaseClass.STRING_TRIM_HEAD) { return src.TrimStart(); } | 7988 | if (type == (int)ScriptBaseClass.STRING_TRIM_HEAD) { return src.TrimStart(); } |
@@ -7924,10 +7991,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7924 | return src; | 7991 | return src; |
7925 | } | 7992 | } |
7926 | 7993 | ||
7927 | public LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | 7994 | public LSL_List llGetObjectDetails(string id, LSL_List args) |
7928 | { | 7995 | { |
7929 | m_host.AddScriptLPS(1); | 7996 | m_host.AddScriptLPS(1); |
7930 | LSL_Types.list ret = new LSL_Types.list(); | 7997 | LSL_List ret = new LSL_List(); |
7931 | UUID key = new UUID(); | 7998 | UUID key = new UUID(); |
7932 | if (UUID.TryParse(id, out key)) | 7999 | if (UUID.TryParse(id, out key)) |
7933 | { | 8000 | { |
@@ -7946,13 +8013,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7946 | ret.Add(""); | 8013 | ret.Add(""); |
7947 | break; | 8014 | break; |
7948 | case "3": | 8015 | case "3": |
7949 | ret.Add(new LSL_Types.Vector3((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z)); | 8016 | ret.Add(new LSL_Vector((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z)); |
7950 | break; | 8017 | break; |
7951 | case "4": | 8018 | case "4": |
7952 | ret.Add(new LSL_Types.Quaternion((double)av.Rotation.X, (double)av.Rotation.Y, (double)av.Rotation.Z, (double)av.Rotation.W)); | 8019 | ret.Add(new LSL_Rotation((double)av.Rotation.X, (double)av.Rotation.Y, (double)av.Rotation.Z, (double)av.Rotation.W)); |
7953 | break; | 8020 | break; |
7954 | case "5": | 8021 | case "5": |
7955 | ret.Add(new LSL_Types.Vector3(av.Velocity.X, av.Velocity.Y, av.Velocity.Z)); | 8022 | ret.Add(new LSL_Vector(av.Velocity.X, av.Velocity.Y, av.Velocity.Z)); |
7956 | break; | 8023 | break; |
7957 | case "6": | 8024 | case "6": |
7958 | ret.Add(id); | 8025 | ret.Add(id); |
@@ -7981,13 +8048,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7981 | ret.Add(obj.Description); | 8048 | ret.Add(obj.Description); |
7982 | break; | 8049 | break; |
7983 | case "3": | 8050 | case "3": |
7984 | ret.Add(new LSL_Types.Vector3(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); | 8051 | ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); |
7985 | break; | 8052 | break; |
7986 | case "4": | 8053 | case "4": |
7987 | ret.Add(new LSL_Types.Quaternion(obj.RotationOffset.X, obj.RotationOffset.Y, obj.RotationOffset.Z, obj.RotationOffset.W)); | 8054 | ret.Add(new LSL_Rotation(obj.RotationOffset.X, obj.RotationOffset.Y, obj.RotationOffset.Z, obj.RotationOffset.W)); |
7988 | break; | 8055 | break; |
7989 | case "5": | 8056 | case "5": |
7990 | ret.Add(new LSL_Types.Vector3(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z)); | 8057 | ret.Add(new LSL_Vector(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z)); |
7991 | break; | 8058 | break; |
7992 | case "6": | 8059 | case "6": |
7993 | ret.Add(obj.OwnerID.ToString()); | 8060 | ret.Add(obj.OwnerID.ToString()); |
@@ -8003,7 +8070,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8003 | return ret; | 8070 | return ret; |
8004 | } | 8071 | } |
8005 | } | 8072 | } |
8006 | return new LSL_Types.list(); | 8073 | return new LSL_List(); |
8007 | } | 8074 | } |
8008 | 8075 | ||
8009 | 8076 | ||
@@ -8044,7 +8111,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8044 | World.AssetCache.GetAsset(assetID, delegate(UUID i, AssetBase a) { cb(i, a); }, false); | 8111 | World.AssetCache.GetAsset(assetID, delegate(UUID i, AssetBase a) { cb(i, a); }, false); |
8045 | } | 8112 | } |
8046 | 8113 | ||
8047 | public LSL_Types.LSLString llGetNumberOfNotecardLines(string name) | 8114 | public LSL_String llGetNumberOfNotecardLines(string name) |
8048 | { | 8115 | { |
8049 | m_host.AddScriptLPS(1); | 8116 | m_host.AddScriptLPS(1); |
8050 | 8117 | ||
@@ -8086,7 +8153,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8086 | return UUID.Zero.ToString(); | 8153 | return UUID.Zero.ToString(); |
8087 | } | 8154 | } |
8088 | 8155 | ||
8089 | public LSL_Types.LSLString llGetNotecardLine(string name, int line) | 8156 | public LSL_String llGetNotecardLine(string name, int line) |
8090 | { | 8157 | { |
8091 | m_host.AddScriptLPS(1); | 8158 | m_host.AddScriptLPS(1); |
8092 | 8159 | ||
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs index 785bfd0..744dc99 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs | |||
@@ -26,624 +26,362 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using vector = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Vector3; | ||
30 | using rotation = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Quaternion; | ||
31 | 29 | ||
30 | using LSL_Float = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat; | ||
31 | using LSL_Integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; | ||
32 | using LSL_Key = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; | ||
33 | using LSL_List = OpenSim.Region.ScriptEngine.Shared.LSL_Types.list; | ||
34 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Quaternion; | ||
35 | using LSL_String = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; | ||
36 | using LSL_Vector = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Vector3; | ||
32 | 37 | ||
33 | namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces | 38 | namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces |
34 | { | 39 | { |
35 | public interface ILSL_Api | 40 | public interface ILSL_Api |
36 | { | 41 | { |
37 | void state(string newState); | 42 | void state(string newState); |
38 | void llSay(int channelID, string text); | ||
39 | LSL_Types.LSLFloat llSin(double f); | ||
40 | LSL_Types.LSLFloat llCos(double f); | ||
41 | LSL_Types.LSLFloat llTan(double f); | ||
42 | LSL_Types.LSLFloat llAtan2(double x, double y); | ||
43 | LSL_Types.LSLFloat llSqrt(double f); | ||
44 | LSL_Types.LSLFloat llPow(double fbase, double fexponent); | ||
45 | LSL_Types.LSLInteger llAbs(int i); | ||
46 | LSL_Types.LSLFloat llFabs(double f); | ||
47 | LSL_Types.LSLFloat llFrand(double mag); | ||
48 | LSL_Types.LSLInteger llFloor(double f); | ||
49 | LSL_Types.LSLInteger llCeil(double f); | ||
50 | LSL_Types.LSLInteger llRound(double f); | ||
51 | LSL_Types.LSLFloat llVecMag(LSL_Types.Vector3 v); | ||
52 | LSL_Types.Vector3 llVecNorm(LSL_Types.Vector3 v); | ||
53 | LSL_Types.LSLFloat llVecDist(LSL_Types.Vector3 a, LSL_Types.Vector3 b); | ||
54 | LSL_Types.Vector3 llRot2Euler(LSL_Types.Quaternion r); | ||
55 | LSL_Types.Quaternion llEuler2Rot(LSL_Types.Vector3 v); | ||
56 | LSL_Types.Quaternion llAxes2Rot(LSL_Types.Vector3 fwd, LSL_Types.Vector3 left, LSL_Types.Vector3 up); | ||
57 | LSL_Types.Vector3 llRot2Fwd(LSL_Types.Quaternion r); | ||
58 | LSL_Types.Vector3 llRot2Left(LSL_Types.Quaternion r); | ||
59 | LSL_Types.Vector3 llRot2Up(LSL_Types.Quaternion r); | ||
60 | LSL_Types.Quaternion llRotBetween(LSL_Types.Vector3 start, LSL_Types.Vector3 end); | ||
61 | void llWhisper(int channelID, string text); | ||
62 | //void llSay(int channelID, string text); | ||
63 | void llShout(int channelID, string text); | ||
64 | void llRegionSay(int channelID, string text); | ||
65 | LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg); | ||
66 | void llListenControl(int number, int active); | ||
67 | void llListenRemove(int number); | ||
68 | void llSensor(string name, string id, int type, double range, double arc); | ||
69 | void llSensorRepeat(string name, string id, int type, double range, double arc, double rate); | ||
70 | void llSensorRemove(); | ||
71 | LSL_Types.LSLString llDetectedName(int number); | ||
72 | LSL_Types.LSLString llDetectedKey(int number); | ||
73 | LSL_Types.LSLString llDetectedOwner(int number); | ||
74 | LSL_Types.LSLInteger llDetectedType(int number); | ||
75 | LSL_Types.Vector3 llDetectedPos(int number); | ||
76 | LSL_Types.Vector3 llDetectedVel(int number); | ||
77 | LSL_Types.Vector3 llDetectedGrab(int number); | ||
78 | LSL_Types.Quaternion llDetectedRot(int number); | ||
79 | LSL_Types.LSLInteger llDetectedGroup(int number); | ||
80 | LSL_Types.LSLInteger llDetectedLinkNumber(int number); | ||
81 | void llDie(); | ||
82 | LSL_Types.LSLFloat llGround(LSL_Types.Vector3 offset); | ||
83 | LSL_Types.LSLFloat llCloud(LSL_Types.Vector3 offset); | ||
84 | LSL_Types.Vector3 llWind(LSL_Types.Vector3 offset); | ||
85 | void llSetStatus(int status, int value); | ||
86 | LSL_Types.LSLInteger llGetStatus(int status); | ||
87 | void llSetScale(LSL_Types.Vector3 scale); | ||
88 | LSL_Types.Vector3 llGetScale(); | ||
89 | void llSetColor(LSL_Types.Vector3 color, int face); | ||
90 | LSL_Types.LSLFloat llGetAlpha(int face); | ||
91 | void llSetAlpha(double alpha, int face); | ||
92 | LSL_Types.Vector3 llGetColor(int face); | ||
93 | void llSetTexture(string texture, int face); | ||
94 | void llScaleTexture(double u, double v, int face); | ||
95 | void llOffsetTexture(double u, double v, int face); | ||
96 | void llRotateTexture(double rotation, int face); | ||
97 | LSL_Types.LSLString llGetTexture(int face); | ||
98 | void llSetPos(LSL_Types.Vector3 pos); | ||
99 | 43 | ||
100 | //wiki: vector llGetPos() | 44 | LSL_Integer llAbs(int i); |
101 | LSL_Types.Vector3 llGetPos(); | 45 | LSL_Float llAcos(double val); |
102 | //wiki: vector llGetLocalPos() | 46 | void llAddToLandBanList(string avatar, double hours); |
103 | LSL_Types.Vector3 llGetLocalPos(); | 47 | void llAddToLandPassList(string avatar, double hours); |
104 | //wiki: llSetRot(rotation rot) | 48 | void llAdjustSoundVolume(double volume); |
105 | void llSetRot(LSL_Types.Quaternion rot); | 49 | void llAllowInventoryDrop(int add); |
106 | //wiki: rotation llGetRot() | 50 | LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b); |
107 | LSL_Types.Quaternion llGetRot(); | 51 | void llApplyImpulse(LSL_Vector force, int local); |
108 | //wiki: rotation llGetLocalRot() | 52 | void llApplyRotationalImpulse(LSL_Vector force, int local); |
109 | LSL_Types.Quaternion llGetLocalRot(); | 53 | LSL_Float llAsin(double val); |
110 | //wiki: llSetForce(vector force, integer local) | 54 | LSL_Float llAtan2(double x, double y); |
111 | void llSetForce(LSL_Types.Vector3 force, int local); | 55 | void llAttachToAvatar(int attachment); |
112 | //wiki: vector llGetForce() | 56 | LSL_Key llAvatarOnSitTarget(); |
113 | LSL_Types.Vector3 llGetForce(); | 57 | LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up); |
114 | //wiki: integer llTarget(vector position, double range) | 58 | LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle); |
115 | LSL_Types.LSLInteger llTarget(LSL_Types.Vector3 position, double range); | 59 | LSL_Integer llBase64ToInteger(string str); |
116 | //wiki: llTargetRemove(integer number) | 60 | LSL_String llBase64ToString(string str); |
117 | void llTargetRemove(int number); | 61 | void llBreakAllLinks(); |
118 | //wiki: integer llRotTarget(rotation rot, double error) | 62 | void llBreakLink(int linknum); |
119 | LSL_Types.LSLInteger llRotTarget(LSL_Types.Quaternion rot, double error); | 63 | LSL_Integer llCeil(double f); |
120 | //wiki: integer llRotTargetRemove(integer number) | 64 | void llClearCameraParams(); |
121 | void llRotTargetRemove(int number); | 65 | void llCloseRemoteDataChannel(string channel); |
122 | //wiki: llMoveToTarget(vector target, double tau) | 66 | LSL_Float llCloud(LSL_Vector offset); |
123 | void llMoveToTarget(LSL_Types.Vector3 target, double tau); | 67 | void llCollisionFilter(string name, string id, int accept); |
124 | //wiki: llStopMoveToTarget() | 68 | void llCollisionSound(string impact_sound, double impact_volume); |
125 | void llStopMoveToTarget(); | 69 | void llCollisionSprite(string impact_sprite); |
126 | //wiki: llApplyImpulse(vector force, integer local) | 70 | LSL_Float llCos(double f); |
127 | void llApplyImpulse(LSL_Types.Vector3 force, int local); | 71 | void llCreateLink(string target, int parent); |
128 | //wiki: llapplyRotationalImpulse(vector force, integer local) | 72 | LSL_List llCSV2List(string src); |
129 | void llApplyRotationalImpulse(LSL_Types.Vector3 force, int local); | 73 | LSL_List llDeleteSubList(LSL_List src, int start, int end); |
130 | //wiki: llSetTorque(vector torque, integer local) | 74 | LSL_String llDeleteSubString(string src, int start, int end); |
131 | void llSetTorque(LSL_Types.Vector3 torque, int local); | 75 | void llDetachFromAvatar(); |
132 | //wiki: vector llGetTorque() | 76 | LSL_Vector llDetectedGrab(int number); |
133 | LSL_Types.Vector3 llGetTorque(); | 77 | LSL_Integer llDetectedGroup(int number); |
134 | //wiki: llSeForceAndTorque(vector force, vector torque, integer local) | 78 | LSL_Key llDetectedKey(int number); |
135 | void llSetForceAndTorque(LSL_Types.Vector3 force, LSL_Types.Vector3 torque, int local); | 79 | LSL_Integer llDetectedLinkNumber(int number); |
136 | //wiki: vector llGetVel() | 80 | LSL_String llDetectedName(int number); |
137 | LSL_Types.Vector3 llGetVel(); | 81 | LSL_Key llDetectedOwner(int number); |
138 | //wiki: vector llGetAccel() | 82 | LSL_Vector llDetectedPos(int number); |
139 | LSL_Types.Vector3 llGetAccel(); | 83 | LSL_Rotation llDetectedRot(int number); |
140 | //wiki: vector llGetOmega() | 84 | LSL_Integer llDetectedType(int number); |
141 | LSL_Types.Vector3 llGetOmega(); | 85 | LSL_Vector llDetectedTouchBinormal(int index); |
142 | //wiki: LSL_Types.LSLFloat llGetTimeOfDay() | 86 | LSL_Integer llDetectedTouchFace(int index); |
143 | LSL_Types.LSLFloat llGetTimeOfDay(); | 87 | LSL_Vector llDetectedTouchNormal(int index); |
144 | //wiki: LSL_Types.LSLFloat llGetWallclock() | 88 | LSL_Vector llDetectedTouchPos(int index); |
145 | LSL_Types.LSLFloat llGetWallclock(); | 89 | LSL_Vector llDetectedTouchST(int index); |
146 | //wiki: LSL_Types.LSLFloat llGetTime() | 90 | LSL_Vector llDetectedTouchUV(int index); |
147 | LSL_Types.LSLFloat llGetTime(); | 91 | LSL_Vector llDetectedVel(int number); |
148 | //wiki: llResetTime() | 92 | void llDialog(string avatar, string message, LSL_List buttons, int chat_channel); |
149 | void llResetTime(); | 93 | void llDie(); |
150 | //wiki: LSL_Types.LSLFloat llGetAndResetTime() | 94 | LSL_String llDumpList2String(LSL_List src, string seperator); |
151 | LSL_Types.LSLFloat llGetAndResetTime(); | 95 | LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir); |
152 | //wiki (deprecated) llSound(string sound, double volume, integer queue, integer loop) | 96 | void llEjectFromLand(string pest); |
153 | void llSound(); | 97 | void llEmail(string address, string subject, string message); |
154 | //wiki: llPlaySound(string sound, double volume) | 98 | LSL_String llEscapeURL(string url); |
155 | void llPlaySound(string sound, double volume); | 99 | LSL_Rotation llEuler2Rot(LSL_Vector v); |
156 | //wiki: llLoopSound(string sound, double volume) | 100 | LSL_Float llFabs(double f); |
157 | void llLoopSound(string sound, double volume); | 101 | LSL_Integer llFloor(double f); |
158 | //wiki: llLoopSoundMaster(string sound, double volume) | 102 | void llForceMouselook(int mouselook); |
159 | void llLoopSoundMaster(string sound, double volume); | 103 | LSL_Float llFrand(double mag); |
160 | //wiki: llLoopSoundSlave(string sound, double volume) | 104 | LSL_Vector llGetAccel(); |
161 | void llLoopSoundSlave(string sound, double volume); | 105 | LSL_Integer llGetAgentInfo(string id); |
162 | //wiki llPlaySoundSlave(string sound, double volume) | 106 | LSL_Vector llGetAgentSize(string id); |
163 | void llPlaySoundSlave(string sound, double volume); | 107 | LSL_Float llGetAlpha(int face); |
164 | //wiki: llTriggerSound(string sound, double volume) | 108 | LSL_Float llGetAndResetTime(); |
165 | void llTriggerSound(string sound, double volume); | 109 | LSL_String llGetAnimation(string id); |
166 | //wiki: llStopSound() | 110 | LSL_List llGetAnimationList(string id); |
167 | void llStopSound(); | 111 | LSL_Integer llGetAttached(); |
168 | //wiki: llPreloadSound(string sound) | 112 | LSL_List llGetBoundingBox(string obj); |
169 | void llPreloadSound(string sound); | 113 | LSL_Vector llGetCameraPos(); |
170 | //wiki: LSL_Types.LSLString llGetSubString(string src, integer start, integer end) | 114 | LSL_Rotation llGetCameraRot(); |
171 | LSL_Types.LSLString llGetSubString(string src, int start, int end); | 115 | LSL_Vector llGetCenterOfMass(); |
172 | //wiki: LSL_Types.LSLString llDeleteSubString(string src, integer start, integer end) | 116 | LSL_Vector llGetColor(int face); |
173 | LSL_Types.LSLString llDeleteSubString(string src, int start, int end); | 117 | LSL_String llGetCreator(); |
174 | //wiki LSL_Types.LSLString llInsertString(string dst, integer position, string src) | 118 | LSL_String llGetDate(); |
175 | LSL_Types.LSLString llInsertString(string dst, int position, string src); | 119 | LSL_Float llGetEnergy(); |
176 | //wiki: LSL_Types.LSLString llToUpper(string source) | 120 | LSL_Vector llGetForce(); |
177 | LSL_Types.LSLString llToUpper(string source); | 121 | LSL_Integer llGetFreeMemory(); |
178 | //wiki: LSL_Types.LSLString llToLower(string source) | 122 | LSL_Vector llGetGeometricCenter(); |
179 | LSL_Types.LSLString llToLower(string source); | 123 | LSL_Float llGetGMTclock(); |
180 | //wiki: integer llGiveMoney(key destination, integer amount) | 124 | LSL_Key llGetInventoryCreator(string item); |
181 | LSL_Types.LSLInteger llGiveMoney(string destination, int amount); | 125 | LSL_Key llGetInventoryKey(string name); |
182 | //wiki: (deprecated) | 126 | LSL_String llGetInventoryName(int type, int number); |
183 | void llMakeExplosion(); | 127 | LSL_Integer llGetInventoryNumber(int type); |
184 | //wiki: (deprecated) | 128 | LSL_Integer llGetInventoryPermMask(string item, int mask); |
185 | void llMakeFountain(); | 129 | LSL_Integer llGetInventoryType(string name); |
186 | //wiki: (deprecated) | 130 | LSL_Key llGetKey(); |
187 | void llMakeSmoke(); | 131 | LSL_Key llGetLandOwnerAt(LSL_Vector pos); |
188 | //wiki: (deprecated) | 132 | LSL_Key llGetLinkKey(int linknum); |
189 | void llMakeFire(); | 133 | LSL_String llGetLinkName(int linknum); |
190 | //wiki: llRezObject(string inventory, vector pos, vector rel, rotation rot, integer param) | 134 | LSL_Integer llGetLinkNumber(); |
191 | void llRezObject(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param); | 135 | LSL_Integer llGetListEntryType(LSL_List src, int index); |
192 | //wiki: llLookAt(vector target, double strength, double damping) | 136 | LSL_Integer llGetListLength(LSL_List src); |
193 | void llLookAt(LSL_Types.Vector3 target, double strength, double damping); | 137 | LSL_Vector llGetLocalPos(); |
194 | //wiki: llStopLookAt() | 138 | LSL_Rotation llGetLocalRot(); |
195 | void llStopLookAt(); | 139 | LSL_Float llGetMass(); |
196 | //wiki: llSetTimerEvent(double sec) | 140 | void llGetNextEmail(string address, string subject); |
197 | void llSetTimerEvent(double sec); | 141 | LSL_String llGetNotecardLine(string name, int line); |
198 | //wiki: llSleep(double sec) | 142 | LSL_Key llGetNumberOfNotecardLines(string name); |
199 | void llSleep(double sec); | 143 | LSL_Integer llGetNumberOfPrims(); |
200 | //wiki: LSL_Types.LSLFloat llGetMass() | 144 | LSL_Integer llGetNumberOfSides(); |
201 | LSL_Types.LSLFloat llGetMass(); | 145 | LSL_String llGetObjectDesc(); |
202 | //wiki: llCollisionFilter(string name, key id, integer accept) | 146 | LSL_List llGetObjectDetails(string id, LSL_List args); |
203 | void llCollisionFilter(string name, string id, int accept); | 147 | LSL_Float llGetObjectMass(string id); |
204 | //wiki: llTakeControls(integer controls, integer accept, integer pass_on) | 148 | LSL_String llGetObjectName(); |
205 | void llTakeControls(int controls, int accept, int pass_on); | 149 | LSL_Integer llGetObjectPermMask(int mask); |
206 | //wiki: llReleaseControls() | 150 | LSL_Integer llGetObjectPrimCount(string object_id); |
207 | void llReleaseControls(); | 151 | LSL_Vector llGetOmega(); |
208 | //wiki: llAttachToAvatar(integer attachment) | 152 | LSL_Key llGetOwner(); |
209 | void llAttachToAvatar(int attachment); | 153 | LSL_Key llGetOwnerKey(string id); |
210 | //wiki: llDetachFromAvatar() | 154 | LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param); |
211 | void llDetachFromAvatar(); | 155 | LSL_Integer llGetParcelFlags(LSL_Vector pos); |
212 | //wiki: (deprecated) llTakeCamera(key avatar) | 156 | LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide); |
213 | void llTakeCamera(string avatar); | 157 | LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide); |
214 | //wiki: (deprecated) llReleaseCamera(key avatar) | 158 | LSL_List llGetParcelPrimOwners(LSL_Vector pos); |
215 | void llReleaseCamera(string avatar); | 159 | LSL_Integer llGetPermissions(); |
216 | //wiki: key llGetOwner() | 160 | LSL_Key llGetPermissionsKey(); |
217 | LSL_Types.LSLString llGetOwner(); | 161 | LSL_Vector llGetPos(); |
218 | //wiki: llInstantMessage(key user, string message) | 162 | LSL_List llGetPrimitiveParams(LSL_List rules); |
219 | void llInstantMessage(string user, string message); | 163 | LSL_Integer llGetRegionAgentCount(); |
220 | //wiki: llEmail(string address, string subject, string message) | 164 | LSL_Vector llGetRegionCorner(); |
221 | void llEmail(string address, string subject, string message); | 165 | LSL_Integer llGetRegionFlags(); |
222 | //wiki: llGetNextEmail(string address, string subject) | 166 | LSL_Float llGetRegionFPS(); |
223 | void llGetNextEmail(string address, string subject); | 167 | LSL_String llGetRegionName(); |
224 | //wiki: key llGetKey() | 168 | LSL_Float llGetRegionTimeDilation(); |
225 | LSL_Types.LSLString llGetKey(); | 169 | LSL_Vector llGetRootPosition(); |
226 | //wiki: llSetBuoyancy(double buoyancy) | 170 | LSL_Rotation llGetRootRotation(); |
227 | void llSetBuoyancy(double buoyancy); | 171 | LSL_Rotation llGetRot(); |
228 | //wiki: llSetHoverHeight(double height, integer water, double tau) | 172 | LSL_Vector llGetScale(); |
229 | void llSetHoverHeight(double height, int water, double tau); | 173 | LSL_String llGetScriptName(); |
230 | //wiki: llStopHover | 174 | LSL_Integer llGetScriptState(string name); |
231 | void llStopHover(); | 175 | LSL_String llGetSimulatorHostname(); |
232 | //wiki: llMinEventDelay(double delay) | 176 | LSL_Integer llGetStartParameter(); |
233 | void llMinEventDelay(double delay); | 177 | LSL_Integer llGetStatus(int status); |
234 | //wiki: (deprecated) llSoundPreload() | 178 | LSL_String llGetSubString(string src, int start, int end); |
235 | void llSoundPreload(); | 179 | LSL_Vector llGetSunDirection(); |
236 | //wiki: llRotLookAt(rotation target, double strength, double damping) | 180 | LSL_String llGetTexture(int face); |
237 | void llRotLookAt(LSL_Types.Quaternion target, double strength, double damping); | 181 | LSL_Vector llGetTextureOffset(int face); |
238 | //wiki: integer llStringLength(string str) | 182 | LSL_Float llGetTextureRot(int side); |
239 | LSL_Types.LSLInteger llStringLength(string str); | 183 | LSL_Vector llGetTextureScale(int side); |
240 | //wiki: llStartAnimation(string anim) | 184 | LSL_Float llGetTime(); |
241 | void llStartAnimation(string anim); | 185 | LSL_Float llGetTimeOfDay(); |
242 | //wiki: llStopAnimation(string anim) | 186 | LSL_String llGetTimestamp(); |
243 | void llStopAnimation(string anim); | 187 | LSL_Vector llGetTorque(); |
244 | //wiki: (deprecated) llPointAt | 188 | LSL_Integer llGetUnixTime(); |
245 | void llPointAt(); | 189 | LSL_Vector llGetVel(); |
246 | //wiki: (deprecated) llStopPointAt | 190 | LSL_Float llGetWallclock(); |
247 | void llStopPointAt(); | 191 | void llGiveInventory(string destination, string inventory); |
248 | //wiki: llTargetOmega(vector axis, double spinrate, double gain) | 192 | void llGiveInventoryList(string destination, string category, LSL_List inventory); |
249 | void llTargetOmega(LSL_Types.Vector3 axis, double spinrate, double gain); | 193 | LSL_Integer llGiveMoney(string destination, int amount); |
250 | //wiki: integer llGetStartParameter() | 194 | void llGodLikeRezObject(string inventory, LSL_Vector pos); |
251 | LSL_Types.LSLInteger llGetStartParameter(); | 195 | LSL_Float llGround(LSL_Vector offset); |
252 | //wiki: llGodLikeRezObject(key inventory, vector pos) | 196 | LSL_Vector llGroundContour(LSL_Vector offset); |
253 | void llGodLikeRezObject(string inventory, LSL_Types.Vector3 pos); | 197 | LSL_Vector llGroundNormal(LSL_Vector offset); |
254 | //wiki: llRequestPermissions(key agent, integer perm) | 198 | void llGroundRepel(double height, int water, double tau); |
255 | void llRequestPermissions(string agent, int perm); | 199 | LSL_Vector llGroundSlope(LSL_Vector offset); |
256 | //wiki: key llGetPermissionsKey() | 200 | LSL_String llHTTPRequest(string url, LSL_List parameters, string body); |
257 | LSL_Types.LSLString llGetPermissionsKey(); | 201 | LSL_String llInsertString(string dst, int position, string src); |
258 | //wiki: integer llGetPermissions() | 202 | void llInstantMessage(string user, string message); |
259 | LSL_Types.LSLInteger llGetPermissions(); | 203 | LSL_String llIntegerToBase64(int number); |
260 | //wiki integer llGetLinkNumber() | 204 | LSL_String llKey2Name(string id); |
261 | LSL_Types.LSLInteger llGetLinkNumber(); | 205 | LSL_String llList2CSV(LSL_List src); |
262 | //wiki: llSetLinkColor(integer linknumber, vector color, integer face) | 206 | LSL_Float llList2Float(LSL_List src, int index); |
263 | void llSetLinkColor(int linknumber, LSL_Types.Vector3 color, int face); | 207 | LSL_Integer llList2Integer(LSL_List src, int index); |
264 | //wiki: llCreateLink(key target, integer parent) | 208 | LSL_Key llList2Key(LSL_List src, int index); |
265 | void llCreateLink(string target, int parent); | 209 | LSL_List llList2List(LSL_List src, int start, int end); |
266 | //wiki: llBreakLink(integer linknum) | 210 | LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride); |
267 | void llBreakLink(int linknum); | 211 | LSL_Rotation llList2Rot(LSL_List src, int index); |
268 | //wiki: llBreakAllLinks() | 212 | LSL_String llList2String(LSL_List src, int index); |
269 | void llBreakAllLinks(); | 213 | LSL_Vector llList2Vector(LSL_List src, int index); |
270 | //wiki: key llGetLinkKey(integer linknum) | 214 | LSL_Integer llListen(int channelID, string name, string ID, string msg); |
271 | LSL_Types.LSLString llGetLinkKey(int linknum); | 215 | void llListenControl(int number, int active); |
272 | //wiki: llGetLinkName(integer linknum) | 216 | void llListenRemove(int number); |
273 | LSL_Types.LSLString llGetLinkName(int linknum); | 217 | LSL_Integer llListFindList(LSL_List src, LSL_List test); |
274 | //wiki: integer llGetInventoryNumber(integer type) | 218 | LSL_List llListInsertList(LSL_List dest, LSL_List src, int start); |
275 | LSL_Types.LSLInteger llGetInventoryNumber(int type); | 219 | LSL_List llListRandomize(LSL_List src, int stride); |
276 | //wiki: LSL_Types.LSLString llGetInventoryName(integer type, integer number) | 220 | LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end); |
277 | LSL_Types.LSLString llGetInventoryName(int type, int number); | 221 | LSL_List llListSort(LSL_List src, int stride, int ascending); |
278 | //wiki: llSetScriptState(string name, integer run) | 222 | LSL_Float llListStatistics(int operation, LSL_List src); |
279 | void llSetScriptState(string name, int run); | 223 | void llLoadURL(string avatar_id, string message, string url); |
280 | //wiki: LSL_Types.LSLFloat llGetEnergy() | 224 | LSL_Float llLog(double val); |
281 | LSL_Types.LSLFloat llGetEnergy(); | 225 | LSL_Float llLog10(double val); |
282 | //wiki: llGiveInventory(key destination, string inventory) | 226 | void llLookAt(LSL_Vector target, double strength, double damping); |
283 | void llGiveInventory(string destination, string inventory); | 227 | void llLoopSound(string sound, double volume); |
284 | //wiki: llRemoveInventory(string item) | 228 | void llLoopSoundMaster(string sound, double volume); |
285 | void llRemoveInventory(string item); | 229 | void llLoopSoundSlave(string sound, double volume); |
286 | //wiki: llSetText(string text, vector color, double alpha) | 230 | void llMakeExplosion(); |
287 | void llSetText(string text, LSL_Types.Vector3 color, double alpha); | 231 | void llMakeFire(); |
288 | //wiki: LSL_Types.LSLFloat llWater(vector offset) | 232 | void llMakeFountain(); |
289 | LSL_Types.LSLFloat llWater(LSL_Types.Vector3 offset); | 233 | void llMakeSmoke(); |
290 | //wiki: llPassTouches(integer pass) | 234 | void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at); |
291 | void llPassTouches(int pass); | 235 | LSL_String llMD5String(string src, int nonce); |
292 | //wiki: key llRequestAgentData(key id, integer data) | 236 | void llMessageLinked(int linknum, int num, string str, string id); |
293 | LSL_Types.LSLString llRequestAgentData(string id, int data); | 237 | void llMinEventDelay(double delay); |
294 | //wiki: key llRequestInventoryData(string name) | 238 | void llModifyLand(int action, int brush); |
295 | LSL_Types.LSLString llRequestInventoryData(string name); | 239 | LSL_Integer llModPow(int a, int b, int c); |
296 | //wiki: llSetDamage(double damage) | 240 | void llMoveToTarget(LSL_Vector target, double tau); |
297 | void llSetDamage(double damage); | 241 | void llOffsetTexture(double u, double v, int face); |
298 | //wiki: llTeleportAgentHome(key agent) | 242 | void llOpenRemoteDataChannel(); |
299 | void llTeleportAgentHome(string agent); | 243 | LSL_Integer llOverMyLand(string id); |
300 | //wiki: llModifyLand(integer action, integer brush) | 244 | void llOwnerSay(string msg); |
301 | void llModifyLand(int action, int brush); | 245 | void llParcelMediaCommandList(LSL_List commandList); |
302 | //wiki: llCollisionSound(string impact_sound, double impact_volume) | 246 | LSL_List llParcelMediaQuery(LSL_List aList); |
303 | void llCollisionSound(string impact_sound, double impact_volume); | 247 | LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers); |
304 | //wiki: llCollisionSprite(string impact_sprite) | 248 | LSL_List llParseStringKeepNulls(string src, LSL_List seperators, LSL_List spacers); |
305 | void llCollisionSprite(string impact_sprite); | 249 | void llParticleSystem(LSL_List rules); |
306 | //wiki: LSL_Types.LSLString llGetAnimation(key id) | 250 | void llPassCollisions(int pass); |
307 | LSL_Types.LSLString llGetAnimation(string id); | 251 | void llPassTouches(int pass); |
308 | //wiki: llResetScript() | 252 | void llPlaySound(string sound, double volume); |
309 | void llResetScript(); | 253 | void llPlaySoundSlave(string sound, double volume); |
310 | //wiki: llMessageLinked(integer linknum, integer num, string str, key id) | 254 | void llPointAt(); |
311 | void llMessageLinked(int linknum, int num, string str, string id); | 255 | LSL_Float llPow(double fbase, double fexponent); |
312 | //wiki: llPushObject(key target, vector impulse, vector ang_impulse, integer local) | 256 | void llPreloadSound(string sound); |
313 | void llPushObject(string target, LSL_Types.Vector3 impulse, LSL_Types.Vector3 ang_impulse, int local); | 257 | void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local); |
314 | //wiki: llPassCollisions(integer pass) | 258 | void llRefreshPrimURL(); |
315 | void llPassCollisions(int pass); | 259 | void llRegionSay(int channelID, string text); |
316 | //wiki: LSL_Types.LSLString llGetScriptName() | 260 | void llReleaseCamera(string avatar); |
317 | LSL_Types.LSLString llGetScriptName(); | 261 | void llReleaseControls(); |
318 | //wiki: integer llGetNumberOfSides() | 262 | void llRemoteDataReply(string channel, string message_id, string sdata, int idata); |
319 | LSL_Types.LSLInteger llGetNumberOfSides(); | 263 | void llRemoteDataSetRegion(); |
320 | //wiki: rotation llAxisAngle2Rot(vector axis, double angle) | 264 | void llRemoteLoadScript(); |
321 | LSL_Types.Quaternion llAxisAngle2Rot(LSL_Types.Vector3 axis, double angle); | 265 | void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param); |
322 | //wiki: vector llRot2Axis(rotation rot) | 266 | void llRemoveFromLandBanList(string avatar); |
323 | LSL_Types.Vector3 llRot2Axis(LSL_Types.Quaternion rot); | 267 | void llRemoveFromLandPassList(string avatar); |
324 | //wiki: LSL_Types.LSLFloat llRot2Angle(rotation rot); | 268 | void llRemoveInventory(string item); |
325 | LSL_Types.LSLFloat llRot2Angle(LSL_Types.Quaternion rot); | 269 | void llRemoveVehicleFlags(int flags); |
326 | //wiki: LSL_Types.LSLFloat llAcos(double val) | 270 | LSL_Key llRequestAgentData(string id, int data); |
327 | LSL_Types.LSLFloat llAcos(double val); | 271 | LSL_Key llRequestInventoryData(string name); |
328 | //wiki: LSL_Types.LSLFloat llAsin(double val) | 272 | void llRequestPermissions(string agent, int perm); |
329 | LSL_Types.LSLFloat llAsin(double val); | 273 | LSL_Key llRequestSimulatorData(string simulator, int data); |
330 | //wiki: LSL_Types.LSLFloat llAngleBetween(rotation a, rotation b) | 274 | void llResetLandBanList(); |
331 | LSL_Types.LSLFloat llAngleBetween(LSL_Types.Quaternion a, LSL_Types.Quaternion b); | 275 | void llResetLandPassList(); |
332 | //wiki: LSL_Types.LSLString llGetInventoryKey(string name) | 276 | void llResetOtherScript(string name); |
333 | LSL_Types.LSLString llGetInventoryKey(string name); | 277 | void llResetScript(); |
334 | //wiki: llAllowInventoryDrop(integer add) | 278 | void llResetTime(); |
335 | void llAllowInventoryDrop(int add); | 279 | void llRezAtRoot(string inventory, LSL_Vector position, LSL_Vector velocity, LSL_Rotation rot, int param); |
336 | //wiki: vector llGetSunDirection() | 280 | void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param); |
337 | LSL_Types.Vector3 llGetSunDirection(); | 281 | LSL_Float llRot2Angle(LSL_Rotation rot); |
338 | //wiki: vector llGetTextureOffset(integer face) | 282 | LSL_Vector llRot2Axis(LSL_Rotation rot); |
339 | LSL_Types.Vector3 llGetTextureOffset(int face); | 283 | LSL_Vector llRot2Euler(LSL_Rotation r); |
340 | //wiki: vector llGetTextureScale(integer side) | 284 | LSL_Vector llRot2Fwd(LSL_Rotation r); |
341 | LSL_Types.Vector3 llGetTextureScale(int side); | 285 | LSL_Vector llRot2Left(LSL_Rotation r); |
342 | //wiki: LSL_Types.LSLFloat llGetTextureRot(integer side) | 286 | LSL_Vector llRot2Up(LSL_Rotation r); |
343 | LSL_Types.LSLFloat llGetTextureRot(int side); | 287 | void llRotateTexture(double rotation, int face); |
344 | //wiki: integer llSubStringIndex(string source, string pattern) | 288 | LSL_Rotation llRotBetween(LSL_Vector start, LSL_Vector end); |
345 | LSL_Types.LSLInteger llSubStringIndex(string source, string pattern); | 289 | void llRotLookAt(LSL_Rotation target, double strength, double damping); |
346 | //wiki: key llGetOwnerKey(key id) | 290 | LSL_Integer llRotTarget(LSL_Rotation rot, double error); |
347 | LSL_Types.LSLString llGetOwnerKey(string id); | 291 | void llRotTargetRemove(int number); |
348 | //wiki: vector llGetCenterOfMass() | 292 | LSL_Integer llRound(double f); |
349 | LSL_Types.Vector3 llGetCenterOfMass(); | 293 | LSL_Integer llSameGroup(string agent); |
350 | //wiki: list llListSort(list src, integer stride, integer ascending) | 294 | void llSay(int channelID, string text); |
351 | LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending); | 295 | void llScaleTexture(double u, double v, int face); |
352 | //integer llGetListLength(list src) | 296 | LSL_Integer llScriptDanger(LSL_Vector pos); |
353 | LSL_Types.LSLInteger llGetListLength(LSL_Types.list src); | 297 | LSL_Key llSendRemoteData(string channel, string dest, int idata, string sdata); |
354 | //wiki: integer llList2Integer(list src, integer index) | 298 | void llSensor(string name, string id, int type, double range, double arc); |
355 | LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index); | 299 | void llSensorRemove(); |
356 | //wiki: LSL_Types.LSLFloat llList2double(list src, integer index) | 300 | void llSensorRepeat(string name, string id, int type, double range, double arc, double rate); |
357 | LSL_Types.LSLFloat llList2Float(LSL_Types.list src, int index); | 301 | void llSetAlpha(double alpha, int face); |
358 | //wiki: LSL_Types.LSLString llList2String(list src, integer index) | 302 | void llSetBuoyancy(double buoyancy); |
359 | LSL_Types.LSLString llList2String(LSL_Types.list src, int index); | 303 | void llSetCameraAtOffset(LSL_Vector offset); |
360 | //wiki: key llList2Key(list src, integer index) | 304 | void llSetCameraEyeOffset(LSL_Vector offset); |
361 | LSL_Types.LSLString llList2Key(LSL_Types.list src, int index); | 305 | void llSetCameraParams(LSL_List rules); |
362 | //wiki: vector llList2Vector(list src, integer index) | 306 | void llSetClickAction(int action); |
363 | LSL_Types.Vector3 llList2Vector(LSL_Types.list src, int index); | 307 | void llSetColor(LSL_Vector color, int face); |
364 | //wiki rotation llList2Rot(list src, integer index) | 308 | void llSetDamage(double damage); |
365 | LSL_Types.Quaternion llList2Rot(LSL_Types.list src, int index); | 309 | void llSetForce(LSL_Vector force, int local); |
366 | //wiki: list llList2List(list src, integer start, integer end) | 310 | void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local); |
367 | LSL_Types.list llList2List(LSL_Types.list src, int start, int end); | 311 | void llSetHoverHeight(double height, int water, double tau); |
368 | //wiki: llDeleteSubList(list src, integer start, integer end) | 312 | void llSetInventoryPermMask(string item, int mask, int value); |
369 | LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end); | 313 | void llSetLinkAlpha(int linknumber, double alpha, int face); |
370 | //wiki: integer llGetListEntryType(list src, integer index) | 314 | void llSetLinkColor(int linknumber, LSL_Vector color, int face); |
371 | LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index); | 315 | void llSetLinkPrimitiveParams(int linknumber, LSL_List rules); |
372 | //wiki: LSL_Types.LSLString llList2CSV(list src) | 316 | void llSetLinkTexture(int linknumber, string texture, int face); |
373 | LSL_Types.LSLString llList2CSV(LSL_Types.list src); | 317 | void llSetLocalRot(LSL_Rotation rot); |
374 | //wiki: list llCSV2List(string src) | 318 | void llSetObjectDesc(string desc); |
375 | LSL_Types.list llCSV2List(string src); | 319 | void llSetObjectName(string name); |
376 | //wiki: list llListRandomize(list src, integer stride) | 320 | void llSetObjectPermMask(int mask, int value); |
377 | LSL_Types.list llListRandomize(LSL_Types.list src, int stride); | 321 | void llSetParcelMusicURL(string url); |
378 | //wiki: list llList2ListStrided(list src, integer start, integer end, integer stride) | 322 | void llSetPayPrice(int price, LSL_List quick_pay_buttons); |
379 | LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride); | 323 | void llSetPos(LSL_Vector pos); |
380 | //wiki: vector llGetRegionCorner() | 324 | void llSetPrimitiveParams(LSL_List rules); |
381 | LSL_Types.Vector3 llGetRegionCorner(); | 325 | void llSetPrimURL(); |
382 | //wiki: list llListInsertList(list dest, list src, integer start) | 326 | void llSetRemoteScriptAccessPin(int pin); |
383 | LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int start); | 327 | void llSetRot(LSL_Rotation rot); |
384 | //wiki: integer llListFindList(list src, list test) | 328 | void llSetScale(LSL_Vector scale); |
385 | LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test); | 329 | void llSetScriptState(string name, int run); |
386 | //wiki: LSL_Types.LSLString llGetObjectName() | 330 | void llSetSitText(string text); |
387 | LSL_Types.LSLString llGetObjectName(); | 331 | void llSetSoundQueueing(int queue); |
388 | //wiki: llSetObjectName(string name) | 332 | void llSetSoundRadius(double radius); |
389 | void llSetObjectName(string name); | 333 | void llSetStatus(int status, int value); |
390 | //wiki: LSL_Types.LSLString llGetDate() | 334 | void llSetText(string text, LSL_Vector color, double alpha); |
391 | LSL_Types.LSLString llGetDate(); | 335 | void llSetTexture(string texture, int face); |
392 | //wiki: integer llEdgeOfWorld(vector pos, vector dir) | 336 | void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate); |
393 | LSL_Types.LSLInteger llEdgeOfWorld(LSL_Types.Vector3 pos, LSL_Types.Vector3 dir); | 337 | void llSetTimerEvent(double sec); |
394 | //wiki: integer llGetAgentInfo(key id) | 338 | void llSetTorque(LSL_Vector torque, int local); |
395 | LSL_Types.LSLInteger llGetAgentInfo(string id); | 339 | void llSetTouchText(string text); |
396 | //wiki: llAdjustSoundVolume(double volume) | 340 | void llSetVehicleFlags(int flags); |
397 | void llAdjustSoundVolume(double volume); | 341 | void llSetVehicleFloatParam(int param, float value); |
398 | //wiki: llSetSoundQueueing(integer queue) | 342 | void llSetVehicleRotationParam(int param, LSL_Rotation rot); |
399 | void llSetSoundQueueing(int queue); | 343 | void llSetVehicleType(int type); |
400 | //wiki: llSetSoundRadius(double radius) | 344 | void llSetVehicleVectorParam(int param, LSL_Vector vec); |
401 | void llSetSoundRadius(double radius); | 345 | void llShout(int channelID, string text); |
402 | //wiki: LSL_Types.LSLString llKey2Name(key id) | 346 | LSL_Float llSin(double f); |
403 | LSL_Types.LSLString llKey2Name(string id); | 347 | void llSitTarget(LSL_Vector offset, LSL_Rotation rot); |
404 | //wiki: llSetTextureAnim(integer mode, integer face, integer sizex, integer sizey, double start, double length, double rate) | 348 | void llSleep(double sec); |
405 | void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate); | 349 | void llSound(); |
406 | //wiki: llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west) | 350 | void llSoundPreload(); |
407 | void llTriggerSoundLimited(string sound, double volume, LSL_Types.Vector3 top_north_east, | 351 | LSL_Float llSqrt(double f); |
408 | LSL_Types.Vector3 bottom_south_west); | 352 | void llStartAnimation(string anim); |
409 | 353 | void llStopAnimation(string anim); | |
410 | //wiki: llEjectFromLand(key pest) | 354 | void llStopHover(); |
411 | void llEjectFromLand(string pest); | 355 | void llStopLookAt(); |
412 | LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers); | 356 | void llStopMoveToTarget(); |
413 | //wiki: integer llOverMyLand(key id) | 357 | void llStopPointAt(); |
414 | LSL_Types.LSLInteger llOverMyLand(string id); | 358 | void llStopSound(); |
415 | //wiki: key llGetLandOwnerAt(vector pos) | 359 | LSL_Integer llStringLength(string str); |
416 | LSL_Types.LSLString llGetLandOwnerAt(LSL_Types.Vector3 pos); | 360 | LSL_String llStringToBase64(string str); |
417 | //wiki: key llGetNotecardLine(string name, integer line) | 361 | LSL_String llStringTrim(string src, int type); |
418 | LSL_Types.LSLString llGetNotecardLine(string name, int line); | 362 | LSL_Integer llSubStringIndex(string source, string pattern); |
419 | //wiki: vector llGetAgentSize(key id) | 363 | void llTakeCamera(string avatar); |
420 | LSL_Types.Vector3 llGetAgentSize(string id); | 364 | void llTakeControls(int controls, int accept, int pass_on); |
421 | //wiki: integer llSameGroup(key agent) | 365 | LSL_Float llTan(double f); |
422 | LSL_Types.LSLInteger llSameGroup(string agent); | 366 | LSL_Integer llTarget(LSL_Vector position, double range); |
423 | //wiki: llUnSit(key id) | 367 | void llTargetOmega(LSL_Vector axis, double spinrate, double gain); |
424 | void llUnSit(string id); | 368 | void llTargetRemove(int number); |
425 | //wiki: vector llGroundSlope(vector offset) | 369 | void llTeleportAgentHome(string agent); |
426 | LSL_Types.Vector3 llGroundSlope(LSL_Types.Vector3 offset); | 370 | void llTextBox(string avatar, string message, int chat_channel); |
427 | //wiki: vector llGroundNormal(vector offset) | 371 | LSL_String llToLower(string source); |
428 | LSL_Types.Vector3 llGroundNormal(LSL_Types.Vector3 offset); | 372 | LSL_String llToUpper(string source); |
429 | //wiki: vector llGroundContour(vector offset) | 373 | void llTriggerSound(string sound, double volume); |
430 | LSL_Types.Vector3 llGroundContour(LSL_Types.Vector3 offset); | 374 | void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, LSL_Vector bottom_south_west); |
431 | //wiki: integer llGetAttached() | 375 | LSL_String llUnescapeURL(string url); |
432 | LSL_Types.LSLInteger llGetAttached(); | 376 | void llUnSit(string id); |
433 | //wiki: integer llGetFreeMemory() | 377 | LSL_Float llVecDist(LSL_Vector a, LSL_Vector b); |
434 | LSL_Types.LSLInteger llGetFreeMemory(); | 378 | LSL_Float llVecMag(LSL_Vector v); |
435 | //wiki: LSL_Types.LSLString llGetRegionName() | 379 | LSL_Vector llVecNorm(LSL_Vector v); |
436 | LSL_Types.LSLString llGetRegionName(); | 380 | void llVolumeDetect(int detect); |
437 | //wiki: LSL_Types.LSLFloat llGetRegionTimeDilation() | 381 | LSL_Float llWater(LSL_Vector offset); |
438 | LSL_Types.LSLFloat llGetRegionTimeDilation(); | 382 | void llWhisper(int channelID, string text); |
439 | //wiki: LSL_Types.LSLFloat llGetRegionFPS() | 383 | LSL_Vector llWind(LSL_Vector offset); |
440 | LSL_Types.LSLFloat llGetRegionFPS(); | 384 | void llXorBase64Strings(); |
441 | //wiki: llParticleSystem(List<Object> rules | 385 | LSL_String llXorBase64StringsCorrect(string str1, string str2); |
442 | void llParticleSystem(LSL_Types.list rules); | ||
443 | //wiki: llGroundRepel(double height, integer water, double tau) | ||
444 | void llGroundRepel(double height, int water, double tau); | ||
445 | //wiki: llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | ||
446 | void llGiveInventoryList(string destination, string category, LSL_Types.list inventory); | ||
447 | //wiki: llSetVehicleType(integer type) | ||
448 | void llSetVehicleType(int type); | ||
449 | //wiki: llSetVehicledoubleParam(integer param, double value) | ||
450 | void llSetVehicledoubleParam(int param, double value); | ||
451 | // wiki: llSetVehicleFloatParam(integer param, float value) | ||
452 | void llSetVehicleFloatParam(int param, float value); | ||
453 | //wiki: llSetVehicleVectorParam(integer param, vector vec) | ||
454 | void llSetVehicleVectorParam(int param, LSL_Types.Vector3 vec); | ||
455 | //wiki: llSetVehicleRotationParam(integer param, rotation rot) | ||
456 | void llSetVehicleRotationParam(int param, LSL_Types.Quaternion rot); | ||
457 | //wiki: llSetVehicleFlags(integer flags) | ||
458 | void llSetVehicleFlags(int flags); | ||
459 | //wiki: llRemoveVehicleFlags(integer flags) | ||
460 | void llRemoveVehicleFlags(int flags); | ||
461 | //wiki: llSitTarget(vector offset, rotation rot) | ||
462 | void llSitTarget(LSL_Types.Vector3 offset, LSL_Types.Quaternion rot); | ||
463 | //wiki key llAvatarOnSitTarget() | ||
464 | LSL_Types.LSLString llAvatarOnSitTarget(); | ||
465 | //wiki: llAddToLandPassList(key avatar, double hours) | ||
466 | void llAddToLandPassList(string avatar, double hours); | ||
467 | //wiki: llSetTouchText(string text) | ||
468 | void llSetTouchText(string text); | ||
469 | //wiki: llSetSitText(string text) | ||
470 | void llSetSitText(string text); | ||
471 | //wiki: llSetCameraEyeOffset(vector offset) | ||
472 | void llSetCameraEyeOffset(LSL_Types.Vector3 offset); | ||
473 | //wiki: llSeteCameraAtOffset(vector offset) | ||
474 | void llSetCameraAtOffset(LSL_Types.Vector3 offset); | ||
475 | // | ||
476 | LSL_Types.LSLString llDumpList2String(LSL_Types.list src, string seperator); | ||
477 | //wiki: integer llScriptDanger(vector pos) | ||
478 | LSL_Types.LSLInteger llScriptDanger(LSL_Types.Vector3 pos); | ||
479 | //wiki: llDialog(key avatar, string message, list buttons, integer chat_channel) | ||
480 | void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel); | ||
481 | //wiki: llVolumeDetect(integer detect) | ||
482 | void llVolumeDetect(int detect); | ||
483 | //wiki: llResetOtherScript(string name) | ||
484 | void llResetOtherScript(string name); | ||
485 | //wiki: integer llGetScriptState(string name) | ||
486 | LSL_Types.LSLInteger llGetScriptState(string name); | ||
487 | //wiki: (deprecated) | ||
488 | void llRemoteLoadScript(); | ||
489 | //wiki: llSetRemoteScriptAccessPin(integer pin) | ||
490 | void llSetRemoteScriptAccessPin(int pin); | ||
491 | //wiki: llRemoteLoadScriptPin(key target, string name, integer pin, integer running, integer start_param) | ||
492 | void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param); | ||
493 | //wiki: llOpenRemoteDataChannel() | ||
494 | void llOpenRemoteDataChannel(); | ||
495 | //wiki: key llSendRemoteData(key channel, string dest, integer idata, string sdata) | ||
496 | LSL_Types.LSLString llSendRemoteData(string channel, string dest, int idata, string sdata); | ||
497 | //wiki: llRemoteDataReply(key channel, key message_id, string sdata, integer idata) | ||
498 | void llRemoteDataReply(string channel, string message_id, string sdata, int idata); | ||
499 | //wiki: llCloseRemoteDataChannel(key channel) | ||
500 | void llCloseRemoteDataChannel(string channel); | ||
501 | //wiki: LSL_Types.LSLString llMD5String(string src, integer nonce) | ||
502 | LSL_Types.LSLString llMD5String(string src, int nonce); | ||
503 | //wiki: llSetPrimitiveParams(list rules) | ||
504 | void llSetPrimitiveParams(LSL_Types.list rules); | ||
505 | //wiki: llSetLinkPrimitiveParams(integer linknumber, list rules) | ||
506 | void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules); | ||
507 | //wiki: LSL_Types.LSLString llStringToBase64(string str) | ||
508 | LSL_Types.LSLString llStringToBase64(string str); | ||
509 | //wiki: LSL_Types.LSLString llBase64ToString(string str) | ||
510 | LSL_Types.LSLString llBase64ToString(string str); | ||
511 | //wiki: (deprecated) | ||
512 | void llXorBase64Strings(); | ||
513 | //wiki: llRemoteDataSetRegion() | ||
514 | void llRemoteDataSetRegion(); | ||
515 | //wiki: LSL_Types.LSLFloat llLog10(double val) | ||
516 | LSL_Types.LSLFloat llLog10(double val); | ||
517 | //wiki: LSL_Types.LSLFloat llLog(double val) | ||
518 | LSL_Types.LSLFloat llLog(double val); | ||
519 | //wiki: list llGetAnimationList(key id) | ||
520 | LSL_Types.list llGetAnimationList(string id); | ||
521 | //wiki: llSetParcelMusicURL(string url) | ||
522 | void llSetParcelMusicURL(string url); | ||
523 | //wiki: vector llGetRootPosition() | ||
524 | LSL_Types.Vector3 llGetRootPosition(); | ||
525 | //wiki: rotation llGetRootRotation() | ||
526 | LSL_Types.Quaternion llGetRootRotation(); | ||
527 | //wiki: LSL_Types.LSLString llGetObjectDesc() | ||
528 | LSL_Types.LSLString llGetObjectDesc(); | ||
529 | //wiki: llSetObjectDesc(string desc) | ||
530 | void llSetObjectDesc(string desc); | ||
531 | //wiki: key llGetCreator() | ||
532 | LSL_Types.LSLString llGetCreator(); | ||
533 | //wiki: LSL_Types.LSLString llGetTimestamp() | ||
534 | LSL_Types.LSLString llGetTimestamp(); | ||
535 | //wiki: llSetLinkAlpha(integer linknumber, double alpha, integer face) | ||
536 | void llSetLinkAlpha(int linknumber, double alpha, int face); | ||
537 | //wiki: integer llGetNumberOfPrims() | ||
538 | LSL_Types.LSLInteger llGetNumberOfPrims(); | ||
539 | //wiki: key llGetNumberOfNotecardLines(string name) | ||
540 | LSL_Types.LSLString llGetNumberOfNotecardLines(string name); | ||
541 | //wiki: list llGetBoundingBox(key object) | ||
542 | LSL_Types.list llGetBoundingBox(string obj); | ||
543 | //wiki: vector llGetGeometricCenter() | ||
544 | LSL_Types.Vector3 llGetGeometricCenter(); | ||
545 | //wiki: list llGetPrimitiveParams(list rules) | ||
546 | LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules); | ||
547 | //wiki: LSL_Types.LSLString llIntegerToBase64(integer number) | ||
548 | LSL_Types.LSLString llIntegerToBase64(int number); | ||
549 | //wiki integer llBase64ToInteger(string str) | ||
550 | LSL_Types.LSLInteger llBase64ToInteger(string str); | ||
551 | //wiki: LSL_Types.LSLFloat llGetGMTclock() | ||
552 | LSL_Types.LSLFloat llGetGMTclock(); | ||
553 | //wiki: LSL_Types.LSLString llGetSimulatorHostname() | ||
554 | LSL_Types.LSLString llGetSimulatorHostname(); | ||
555 | //llSetLocalRot(rotation rot) | ||
556 | void llSetLocalRot(LSL_Types.Quaternion rot); | ||
557 | //wiki: list llParseStringKeepNulls(string src, list separators, list spacers) | ||
558 | LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list seperators, LSL_Types.list spacers); | ||
559 | //wiki: llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, integer param) | ||
560 | void llRezAtRoot(string inventory, LSL_Types.Vector3 position, LSL_Types.Vector3 velocity, | ||
561 | LSL_Types.Quaternion rot, int param); | ||
562 | |||
563 | //wiki: integer llGetObjectPermMask(integer mask) | ||
564 | LSL_Types.LSLInteger llGetObjectPermMask(int mask); | ||
565 | //wiki: llSetObjectPermMask(integer mask, integer value) | ||
566 | void llSetObjectPermMask(int mask, int value); | ||
567 | //wiki integer llGetInventoryPermMask(string item, integer mask) | ||
568 | LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask); | ||
569 | //wiki: llSetInventoryPermMask(string item, integer mask, integer value) | ||
570 | void llSetInventoryPermMask(string item, int mask, int value); | ||
571 | //wiki: key llGetInventoryCreator(string item) | ||
572 | LSL_Types.LSLString llGetInventoryCreator(string item); | ||
573 | //wiki: llOwnerSay(string msg) | ||
574 | void llOwnerSay(string msg); | ||
575 | //wiki: key llRequestSimulatorData(string simulator, integer data) | ||
576 | LSL_Types.LSLString llRequestSimulatorData(string simulator, int data); | ||
577 | //wiki: llForceMouselook(integer mouselook) | ||
578 | void llForceMouselook(int mouselook); | ||
579 | //wiki: LSL_Types.LSLFloat llGetObjectMass(key id) | ||
580 | LSL_Types.LSLFloat llGetObjectMass(string id); | ||
581 | LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end); | ||
582 | //wiki: llLoadURL(key avatar_id, string message, string url) | ||
583 | void llLoadURL(string avatar_id, string message, string url); | ||
584 | //wiki: llParcelMediaCommandList(list commandList) | ||
585 | void llParcelMediaCommandList(LSL_Types.list commandList); | ||
586 | LSL_Types.list llParcelMediaQuery(LSL_Types.list aList); | ||
587 | //wiki integer llModPow(integer a, integer b, integer c) | ||
588 | LSL_Types.LSLInteger llModPow(int a, int b, int c); | ||
589 | //wiki: integer llGetInventoryType(string name) | ||
590 | LSL_Types.LSLInteger llGetInventoryType(string name); | ||
591 | //wiki: llSetPayPrice(integer price, list quick_pay_buttons) | ||
592 | void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons); | ||
593 | //wiki: vector llGetCameraPos() | ||
594 | LSL_Types.Vector3 llGetCameraPos(); | ||
595 | //wiki rotation llGetCameraRot() | ||
596 | LSL_Types.Quaternion llGetCameraRot(); | ||
597 | //wiki: (deprecated) | ||
598 | void llSetPrimURL(); | ||
599 | //wiki: (deprecated) | ||
600 | void llRefreshPrimURL(); | ||
601 | //wiki: LSL_Types.LSLString llEscapeURL(string url) | ||
602 | LSL_Types.LSLString llEscapeURL(string url); | ||
603 | //wiki: LSL_Types.LSLString llUnescapeURL(string url) | ||
604 | LSL_Types.LSLString llUnescapeURL(string url); | ||
605 | //wiki: llMapDestination(string simname, vector pos, vector look_at) | ||
606 | void llMapDestination(string simname, LSL_Types.Vector3 pos, LSL_Types.Vector3 look_at); | ||
607 | //wiki: llAddToLandBanList(key avatar, double hours) | ||
608 | void llAddToLandBanList(string avatar, double hours); | ||
609 | //wiki: llRemoveFromLandPassList(key avatar) | ||
610 | void llRemoveFromLandPassList(string avatar); | ||
611 | //wiki: llRemoveFromLandBanList(key avatar) | ||
612 | void llRemoveFromLandBanList(string avatar); | ||
613 | //wiki: llSetCameraParams(list rules) | ||
614 | void llSetCameraParams(LSL_Types.list rules); | ||
615 | //wiki: llClearCameraParams() | ||
616 | void llClearCameraParams(); | ||
617 | //wiki: LSL_Types.LSLFloat llListStatistics(integer operation, list src) | ||
618 | LSL_Types.LSLFloat llListStatistics(int operation, LSL_Types.list src); | ||
619 | //wiki: integer llGetUnixTime() | ||
620 | LSL_Types.LSLInteger llGetUnixTime(); | ||
621 | //wiki: integer llGetParcelFlags(vector pos) | ||
622 | LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos); | ||
623 | //wiki: integer llGetRegionFlags() | ||
624 | LSL_Types.LSLInteger llGetRegionFlags(); | ||
625 | //wiki: LSL_Types.LSLString llXorBase64StringsCorrect(string str1, string str2) | ||
626 | LSL_Types.LSLString llXorBase64StringsCorrect(string str1, string str2); | ||
627 | LSL_Types.LSLString llHTTPRequest(string url, LSL_Types.list parameters, string body); | ||
628 | //wiki: llResetLandBanList() | ||
629 | void llResetLandBanList(); | ||
630 | //wiki: llResetLandPassList() | ||
631 | void llResetLandPassList(); | ||
632 | //wiki: integer llGetParcelPrimCount(vector pos, integer category, integer sim_wide) | ||
633 | LSL_Types.LSLInteger llGetParcelPrimCount(LSL_Types.Vector3 pos, int category, int sim_wide); | ||
634 | //wiki: list llGetParcelPrimOwners(vector pos) | ||
635 | LSL_Types.list llGetParcelPrimOwners(LSL_Types.Vector3 pos); | ||
636 | //wiki: integer llGetObjectPrimCount(key object_id) | ||
637 | LSL_Types.LSLInteger llGetObjectPrimCount(string object_id); | ||
638 | //wiki: integer llGetParcelMaxPrims(vector pos, integer sim_wide) | ||
639 | LSL_Types.LSLInteger llGetParcelMaxPrims(LSL_Types.Vector3 pos, int sim_wide); | ||
640 | //wiki: llGetParcelDetails(vector pos, list params) | ||
641 | LSL_Types.list llGetParcelDetails(LSL_Types.Vector3 pos, LSL_Types.list param); | ||
642 | //wiki: llSetLinkTexture(integer linknumber, string texture, integer face) | ||
643 | void llSetLinkTexture(int linknumber, string texture, int face); | ||
644 | //wiki: LSL_Types.LSLString llStringTrim(string src, int type) | ||
645 | LSL_Types.LSLString llStringTrim(string src, int type); | ||
646 | //wiki: LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | ||
647 | LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args); | ||
648 | } | 386 | } |
649 | } | 387 | } |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs index 5f0a1bc..a23e731 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs | |||
@@ -33,10 +33,14 @@ using System.Collections; | |||
33 | using System.Collections.Generic; | 33 | using System.Collections.Generic; |
34 | using OpenSim.Region.ScriptEngine.Interfaces; | 34 | using OpenSim.Region.ScriptEngine.Interfaces; |
35 | using OpenSim.Region.ScriptEngine.Shared.Api.Interfaces; | 35 | using OpenSim.Region.ScriptEngine.Shared.Api.Interfaces; |
36 | using integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; | 36 | |
37 | using key = System.String; | 37 | using LSL_Float = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat; |
38 | using vector = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Vector3; | 38 | using LSL_Integer = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLInteger; |
39 | using rotation = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Quaternion; | 39 | using LSL_Key = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; |
40 | using LSL_List = OpenSim.Region.ScriptEngine.Shared.LSL_Types.list; | ||
41 | using LSL_Rotation = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Quaternion; | ||
42 | using LSL_String = OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString; | ||
43 | using LSL_Vector = OpenSim.Region.ScriptEngine.Shared.LSL_Types.Vector3; | ||
40 | 44 | ||
41 | namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | 45 | namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase |
42 | { | 46 | { |
@@ -60,214 +64,249 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
60 | // | 64 | // |
61 | // Script functions | 65 | // Script functions |
62 | // | 66 | // |
63 | public void llSay(int channelID, string text) | 67 | public LSL_Integer llAbs(int i) |
64 | { | 68 | { |
65 | m_LSL_Functions.llSay(channelID, text); | 69 | return m_LSL_Functions.llAbs(i); |
66 | } | 70 | } |
67 | 71 | ||
68 | public double llSin(double f) | 72 | public LSL_Float llAcos(double val) |
69 | { | 73 | { |
70 | return m_LSL_Functions.llSin(f); | 74 | return m_LSL_Functions.llAcos(val); |
71 | } | 75 | } |
72 | 76 | ||
73 | public double llCos(double f) | 77 | public void llAddToLandBanList(string avatar, double hours) |
74 | { | 78 | { |
75 | return m_LSL_Functions.llCos(f); | 79 | m_LSL_Functions.llAddToLandBanList(avatar, hours); |
76 | } | 80 | } |
77 | 81 | ||
78 | public double llTan(double f) | 82 | public void llAddToLandPassList(string avatar, double hours) |
79 | { | 83 | { |
80 | return m_LSL_Functions.llTan(f); | 84 | m_LSL_Functions.llAddToLandPassList(avatar, hours); |
81 | } | 85 | } |
82 | 86 | ||
83 | public double llAtan2(double x, double y) | 87 | public void llAdjustSoundVolume(double volume) |
84 | { | 88 | { |
85 | return m_LSL_Functions.llAtan2(x, y); | 89 | m_LSL_Functions.llAdjustSoundVolume(volume); |
86 | } | 90 | } |
87 | 91 | ||
88 | public double llSqrt(double f) | 92 | public void llAllowInventoryDrop(int add) |
89 | { | 93 | { |
90 | return m_LSL_Functions.llSqrt(f); | 94 | m_LSL_Functions.llAllowInventoryDrop(add); |
91 | } | 95 | } |
92 | 96 | ||
93 | public double llPow(double fbase, double fexponent) | 97 | public LSL_Float llAngleBetween(LSL_Rotation a, LSL_Rotation b) |
94 | { | 98 | { |
95 | return m_LSL_Functions.llPow(fbase, fexponent); | 99 | return m_LSL_Functions.llAngleBetween(a, b); |
96 | } | 100 | } |
97 | 101 | ||
98 | public LSL_Types.LSLInteger llAbs(int i) | 102 | public void llApplyImpulse(LSL_Vector force, int local) |
99 | { | 103 | { |
100 | return m_LSL_Functions.llAbs(i); | 104 | m_LSL_Functions.llApplyImpulse(force, local); |
101 | } | 105 | } |
102 | 106 | ||
103 | public double llFabs(double f) | 107 | public void llApplyRotationalImpulse(LSL_Vector force, int local) |
104 | { | 108 | { |
105 | return m_LSL_Functions.llFabs(f); | 109 | m_LSL_Functions.llApplyRotationalImpulse(force, local); |
106 | } | 110 | } |
107 | 111 | ||
108 | public double llFrand(double mag) | 112 | public LSL_Float llAsin(double val) |
109 | { | 113 | { |
110 | return m_LSL_Functions.llFrand(mag); | 114 | return m_LSL_Functions.llAsin(val); |
111 | } | 115 | } |
112 | 116 | ||
113 | public LSL_Types.LSLInteger llFloor(double f) | 117 | public LSL_Float llAtan2(double x, double y) |
114 | { | 118 | { |
115 | return m_LSL_Functions.llFloor(f); | 119 | return m_LSL_Functions.llAtan2(x, y); |
116 | } | 120 | } |
117 | 121 | ||
118 | public LSL_Types.LSLInteger llCeil(double f) | 122 | public void llAttachToAvatar(int attachment) |
119 | { | 123 | { |
120 | return m_LSL_Functions.llCeil(f); | 124 | m_LSL_Functions.llAttachToAvatar(attachment); |
121 | } | 125 | } |
122 | 126 | ||
123 | public LSL_Types.LSLInteger llRound(double f) | 127 | public LSL_Key llAvatarOnSitTarget() |
124 | { | 128 | { |
125 | return m_LSL_Functions.llRound(f); | 129 | return m_LSL_Functions.llAvatarOnSitTarget(); |
126 | } | 130 | } |
127 | 131 | ||
128 | public double llVecMag(vector v) | 132 | public LSL_Rotation llAxes2Rot(LSL_Vector fwd, LSL_Vector left, LSL_Vector up) |
129 | { | 133 | { |
130 | return m_LSL_Functions.llVecMag(v); | 134 | return m_LSL_Functions.llAxes2Rot(fwd, left, up); |
131 | } | 135 | } |
132 | 136 | ||
133 | public vector llVecNorm(vector v) | 137 | public LSL_Rotation llAxisAngle2Rot(LSL_Vector axis, double angle) |
134 | { | 138 | { |
135 | return m_LSL_Functions.llVecNorm(v); | 139 | return m_LSL_Functions.llAxisAngle2Rot(axis, angle); |
136 | } | 140 | } |
137 | 141 | ||
138 | public double llVecDist(vector a, vector b) | 142 | public LSL_Integer llBase64ToInteger(string str) |
139 | { | 143 | { |
140 | return m_LSL_Functions.llVecDist(a, b); | 144 | return m_LSL_Functions.llBase64ToInteger(str); |
141 | } | 145 | } |
142 | 146 | ||
143 | public vector llRot2Euler(rotation r) | 147 | public LSL_String llBase64ToString(string str) |
144 | { | 148 | { |
145 | return m_LSL_Functions.llRot2Euler(r); | 149 | return m_LSL_Functions.llBase64ToString(str); |
146 | } | 150 | } |
147 | 151 | ||
148 | public rotation llEuler2Rot(vector v) | 152 | public void llBreakAllLinks() |
149 | { | 153 | { |
150 | return m_LSL_Functions.llEuler2Rot(v); | 154 | m_LSL_Functions.llBreakAllLinks(); |
151 | } | 155 | } |
152 | 156 | ||
153 | public rotation llAxes2Rot(vector fwd, vector left, vector up) | 157 | public void llBreakLink(int linknum) |
154 | { | 158 | { |
155 | return m_LSL_Functions.llAxes2Rot(fwd, left, up); | 159 | m_LSL_Functions.llBreakLink(linknum); |
156 | } | 160 | } |
157 | 161 | ||
158 | public vector llRot2Fwd(rotation r) | 162 | public LSL_Integer llCeil(double f) |
159 | { | 163 | { |
160 | return m_LSL_Functions.llRot2Fwd(r); | 164 | return m_LSL_Functions.llCeil(f); |
161 | } | 165 | } |
162 | 166 | ||
163 | public vector llRot2Left(rotation r) | 167 | public void llClearCameraParams() |
164 | { | 168 | { |
165 | return m_LSL_Functions.llRot2Left(r); | 169 | m_LSL_Functions.llClearCameraParams(); |
166 | } | 170 | } |
167 | 171 | ||
168 | public vector llRot2Up(rotation r) | 172 | public void llCloseRemoteDataChannel(string channel) |
169 | { | 173 | { |
170 | return m_LSL_Functions.llRot2Up(r); | 174 | m_LSL_Functions.llCloseRemoteDataChannel(channel); |
171 | } | 175 | } |
172 | 176 | ||
173 | public rotation llRotBetween(vector start, vector end) | 177 | public LSL_Float llCloud(LSL_Vector offset) |
174 | { | 178 | { |
175 | return m_LSL_Functions.llRotBetween(start, end); | 179 | return m_LSL_Functions.llCloud(offset); |
176 | } | 180 | } |
177 | 181 | ||
178 | public void llWhisper(int channelID, string text) | 182 | public void llCollisionFilter(string name, string id, int accept) |
179 | { | 183 | { |
180 | m_LSL_Functions.llWhisper(channelID, text); | 184 | m_LSL_Functions.llCollisionFilter(name, id, accept); |
181 | } | 185 | } |
182 | 186 | ||
183 | public void llShout(int channelID, string text) | 187 | public void llCollisionSound(string impact_sound, double impact_volume) |
184 | { | 188 | { |
185 | m_LSL_Functions.llShout(channelID, text); | 189 | m_LSL_Functions.llCollisionSound(impact_sound, impact_volume); |
186 | } | 190 | } |
187 | 191 | ||
188 | public void llRegionSay(int channelID, string text) | 192 | public void llCollisionSprite(string impact_sprite) |
189 | { | 193 | { |
190 | m_LSL_Functions.llRegionSay(channelID, text); | 194 | m_LSL_Functions.llCollisionSprite(impact_sprite); |
191 | } | 195 | } |
192 | 196 | ||
193 | public LSL_Types.LSLInteger llListen(int channelID, string name, string ID, string msg) | 197 | public LSL_Float llCos(double f) |
194 | { | 198 | { |
195 | return m_LSL_Functions.llListen(channelID, name, ID, msg); | 199 | return m_LSL_Functions.llCos(f); |
196 | } | 200 | } |
197 | 201 | ||
198 | public void llListenControl(int number, int active) | 202 | public void llCreateLink(string target, int parent) |
199 | { | 203 | { |
200 | m_LSL_Functions.llListenControl(number, active); | 204 | m_LSL_Functions.llCreateLink(target, parent); |
201 | } | 205 | } |
202 | 206 | ||
203 | public void llListenRemove(int number) | 207 | public LSL_List llCSV2List(string src) |
204 | { | 208 | { |
205 | m_LSL_Functions.llListenRemove(number); | 209 | return m_LSL_Functions.llCSV2List(src); |
206 | } | 210 | } |
207 | 211 | ||
208 | public void llSensor(string name, string id, int type, double range, double arc) | 212 | public LSL_List llDeleteSubList(LSL_List src, int start, int end) |
209 | { | 213 | { |
210 | m_LSL_Functions.llSensor(name, id, type, range, arc); | 214 | return m_LSL_Functions.llDeleteSubList(src, start, end); |
211 | } | 215 | } |
212 | 216 | ||
213 | public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate) | 217 | public LSL_String llDeleteSubString(string src, int start, int end) |
214 | { | 218 | { |
215 | m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate); | 219 | return m_LSL_Functions.llDeleteSubString(src, start, end); |
216 | } | 220 | } |
217 | 221 | ||
218 | public void llSensorRemove() | 222 | public void llDetachFromAvatar() |
219 | { | 223 | { |
220 | m_LSL_Functions.llSensorRemove(); | 224 | m_LSL_Functions.llDetachFromAvatar(); |
221 | } | 225 | } |
222 | 226 | ||
223 | public string llDetectedName(int number) | 227 | public LSL_Vector llDetectedGrab(int number) |
224 | { | 228 | { |
225 | return m_LSL_Functions.llDetectedName(number); | 229 | return m_LSL_Functions.llDetectedGrab(number); |
230 | } | ||
231 | |||
232 | public LSL_Integer llDetectedGroup(int number) | ||
233 | { | ||
234 | return m_LSL_Functions.llDetectedGroup(number); | ||
226 | } | 235 | } |
227 | 236 | ||
228 | public string llDetectedKey(int number) | 237 | public LSL_Key llDetectedKey(int number) |
229 | { | 238 | { |
230 | return m_LSL_Functions.llDetectedKey(number); | 239 | return m_LSL_Functions.llDetectedKey(number); |
231 | } | 240 | } |
232 | 241 | ||
233 | public string llDetectedOwner(int number) | 242 | public LSL_Integer llDetectedLinkNumber(int number) |
243 | { | ||
244 | return m_LSL_Functions.llDetectedLinkNumber(number); | ||
245 | } | ||
246 | |||
247 | public LSL_String llDetectedName(int number) | ||
248 | { | ||
249 | return m_LSL_Functions.llDetectedName(number); | ||
250 | } | ||
251 | |||
252 | public LSL_Key llDetectedOwner(int number) | ||
234 | { | 253 | { |
235 | return m_LSL_Functions.llDetectedOwner(number); | 254 | return m_LSL_Functions.llDetectedOwner(number); |
236 | } | 255 | } |
237 | 256 | ||
238 | public LSL_Types.LSLInteger llDetectedType(int number) | 257 | public LSL_Vector llDetectedPos(int number) |
258 | { | ||
259 | return m_LSL_Functions.llDetectedPos(number); | ||
260 | } | ||
261 | |||
262 | public LSL_Rotation llDetectedRot(int number) | ||
263 | { | ||
264 | return m_LSL_Functions.llDetectedRot(number); | ||
265 | } | ||
266 | |||
267 | public LSL_Integer llDetectedType(int number) | ||
239 | { | 268 | { |
240 | return m_LSL_Functions.llDetectedType(number); | 269 | return m_LSL_Functions.llDetectedType(number); |
241 | } | 270 | } |
242 | 271 | ||
243 | public vector llDetectedPos(int number) | 272 | public LSL_Vector llDetectedTouchBinormal(int index) |
244 | { | 273 | { |
245 | return m_LSL_Functions.llDetectedPos(number); | 274 | return m_LSL_Functions.llDetectedTouchBinormal(index); |
246 | } | 275 | } |
247 | 276 | ||
248 | public vector llDetectedVel(int number) | 277 | public LSL_Integer llDetectedTouchFace(int index) |
249 | { | 278 | { |
250 | return m_LSL_Functions.llDetectedVel(number); | 279 | return m_LSL_Functions.llDetectedTouchFace(index); |
251 | } | 280 | } |
252 | 281 | ||
253 | public vector llDetectedGrab(int number) | 282 | public LSL_Vector llDetectedTouchNormal(int index) |
254 | { | 283 | { |
255 | return m_LSL_Functions.llDetectedGrab(number); | 284 | return m_LSL_Functions.llDetectedTouchNormal(index); |
256 | } | 285 | } |
257 | 286 | ||
258 | public rotation llDetectedRot(int number) | 287 | public LSL_Vector llDetectedTouchPos(int index) |
259 | { | 288 | { |
260 | return m_LSL_Functions.llDetectedRot(number); | 289 | return m_LSL_Functions.llDetectedTouchPos(index); |
261 | } | 290 | } |
262 | 291 | ||
263 | public LSL_Types.LSLInteger llDetectedGroup(int number) | 292 | public LSL_Vector llDetectedTouchST(int index) |
264 | { | 293 | { |
265 | return m_LSL_Functions.llDetectedGroup(number); | 294 | return m_LSL_Functions.llDetectedTouchST(index); |
266 | } | 295 | } |
267 | 296 | ||
268 | public LSL_Types.LSLInteger llDetectedLinkNumber(int number) | 297 | public LSL_Vector llDetectedTouchUV(int index) |
269 | { | 298 | { |
270 | return m_LSL_Functions.llDetectedLinkNumber(number); | 299 | return m_LSL_Functions.llDetectedTouchUV(index); |
300 | } | ||
301 | |||
302 | public LSL_Vector llDetectedVel(int number) | ||
303 | { | ||
304 | return m_LSL_Functions.llDetectedVel(number); | ||
305 | } | ||
306 | |||
307 | public void llDialog(string avatar, string message, LSL_List buttons, int chat_channel) | ||
308 | { | ||
309 | m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel); | ||
271 | } | 310 | } |
272 | 311 | ||
273 | public void llDie() | 312 | public void llDie() |
@@ -275,1133 +314,1139 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
275 | m_LSL_Functions.llDie(); | 314 | m_LSL_Functions.llDie(); |
276 | } | 315 | } |
277 | 316 | ||
278 | public double llGround(vector offset) | 317 | public LSL_String llDumpList2String(LSL_List src, string seperator) |
279 | { | 318 | { |
280 | return m_LSL_Functions.llGround(offset); | 319 | return m_LSL_Functions.llDumpList2String(src, seperator); |
281 | } | 320 | } |
282 | 321 | ||
283 | public double llCloud(vector offset) | 322 | public LSL_Integer llEdgeOfWorld(LSL_Vector pos, LSL_Vector dir) |
284 | { | 323 | { |
285 | return m_LSL_Functions.llCloud(offset); | 324 | return m_LSL_Functions.llEdgeOfWorld(pos, dir); |
286 | } | 325 | } |
287 | 326 | ||
288 | public vector llWind(vector offset) | 327 | public void llEjectFromLand(string pest) |
289 | { | 328 | { |
290 | return m_LSL_Functions.llWind(offset); | 329 | m_LSL_Functions.llEjectFromLand(pest); |
291 | } | 330 | } |
292 | 331 | ||
293 | public void llSetStatus(int status, int value) | 332 | public void llEmail(string address, string subject, string message) |
294 | { | 333 | { |
295 | m_LSL_Functions.llSetStatus(status, value); | 334 | m_LSL_Functions.llEmail(address, subject, message); |
296 | } | 335 | } |
297 | 336 | ||
298 | public LSL_Types.LSLInteger llGetStatus(int status) | 337 | public LSL_String llEscapeURL(string url) |
299 | { | 338 | { |
300 | return m_LSL_Functions.llGetStatus(status); | 339 | return m_LSL_Functions.llEscapeURL(url); |
301 | } | 340 | } |
302 | 341 | ||
303 | public void llSetScale(vector scale) | 342 | public LSL_Rotation llEuler2Rot(LSL_Vector v) |
304 | { | 343 | { |
305 | m_LSL_Functions.llSetScale(scale); | 344 | return m_LSL_Functions.llEuler2Rot(v); |
306 | } | 345 | } |
307 | 346 | ||
308 | public vector llGetScale() | 347 | public LSL_Float llFabs(double f) |
309 | { | 348 | { |
310 | return m_LSL_Functions.llGetScale(); | 349 | return m_LSL_Functions.llFabs(f); |
311 | } | 350 | } |
312 | 351 | ||
313 | public void llSetColor(vector color, int face) | 352 | public LSL_Integer llFloor(double f) |
314 | { | 353 | { |
315 | m_LSL_Functions.llSetColor(color, face); | 354 | return m_LSL_Functions.llFloor(f); |
316 | } | 355 | } |
317 | 356 | ||
318 | public double llGetAlpha(int face) | 357 | public void llForceMouselook(int mouselook) |
319 | { | 358 | { |
320 | return m_LSL_Functions.llGetAlpha(face); | 359 | m_LSL_Functions.llForceMouselook(mouselook); |
321 | } | 360 | } |
322 | 361 | ||
323 | public void llSetAlpha(double alpha, int face) | 362 | public LSL_Float llFrand(double mag) |
324 | { | 363 | { |
325 | m_LSL_Functions.llSetAlpha(alpha, face); | 364 | return m_LSL_Functions.llFrand(mag); |
326 | } | 365 | } |
327 | 366 | ||
328 | public vector llGetColor(int face) | 367 | public LSL_Vector llGetAccel() |
329 | { | 368 | { |
330 | return m_LSL_Functions.llGetColor(face); | 369 | return m_LSL_Functions.llGetAccel(); |
331 | } | 370 | } |
332 | 371 | ||
333 | public void llSetTexture(string texture, int face) | 372 | public LSL_Integer llGetAgentInfo(string id) |
334 | { | 373 | { |
335 | m_LSL_Functions.llSetTexture(texture, face); | 374 | return m_LSL_Functions.llGetAgentInfo(id); |
336 | } | 375 | } |
337 | 376 | ||
338 | public void llScaleTexture(double u, double v, int face) | 377 | public LSL_Vector llGetAgentSize(string id) |
339 | { | 378 | { |
340 | m_LSL_Functions.llScaleTexture(u, v, face); | 379 | return m_LSL_Functions.llGetAgentSize(id); |
341 | } | 380 | } |
342 | 381 | ||
343 | public void llOffsetTexture(double u, double v, int face) | 382 | public LSL_Float llGetAlpha(int face) |
344 | { | 383 | { |
345 | m_LSL_Functions.llOffsetTexture(u, v, face); | 384 | return m_LSL_Functions.llGetAlpha(face); |
346 | } | 385 | } |
347 | 386 | ||
348 | public void llRotateTexture(double rotation, int face) | 387 | public LSL_Float llGetAndResetTime() |
349 | { | 388 | { |
350 | m_LSL_Functions.llRotateTexture(rotation, face); | 389 | return m_LSL_Functions.llGetAndResetTime(); |
351 | } | 390 | } |
352 | 391 | ||
353 | public string llGetTexture(int face) | 392 | public LSL_String llGetAnimation(string id) |
354 | { | 393 | { |
355 | return m_LSL_Functions.llGetTexture(face); | 394 | return m_LSL_Functions.llGetAnimation(id); |
356 | } | 395 | } |
357 | 396 | ||
358 | public void llSetPos(vector pos) | 397 | public LSL_List llGetAnimationList(string id) |
359 | { | 398 | { |
360 | m_LSL_Functions.llSetPos(pos); | 399 | return m_LSL_Functions.llGetAnimationList(id); |
361 | } | 400 | } |
362 | 401 | ||
363 | public vector llGetPos() | 402 | public LSL_Integer llGetAttached() |
364 | { | 403 | { |
365 | return m_LSL_Functions.llGetPos(); | 404 | return m_LSL_Functions.llGetAttached(); |
366 | } | 405 | } |
367 | 406 | ||
368 | public vector llGetLocalPos() | 407 | public LSL_List llGetBoundingBox(string obj) |
369 | { | 408 | { |
370 | return m_LSL_Functions.llGetLocalPos(); | 409 | return m_LSL_Functions.llGetBoundingBox(obj); |
371 | } | 410 | } |
372 | 411 | ||
373 | public void llSetRot(rotation rot) | 412 | public LSL_Vector llGetCameraPos() |
374 | { | 413 | { |
375 | m_LSL_Functions.llSetRot(rot); | 414 | return m_LSL_Functions.llGetCameraPos(); |
376 | } | 415 | } |
377 | 416 | ||
378 | public rotation llGetRot() | 417 | public LSL_Rotation llGetCameraRot() |
379 | { | 418 | { |
380 | return m_LSL_Functions.llGetRot(); | 419 | return m_LSL_Functions.llGetCameraRot(); |
381 | } | 420 | } |
382 | 421 | ||
383 | public rotation llGetLocalRot() | 422 | public LSL_Vector llGetCenterOfMass() |
384 | { | 423 | { |
385 | return m_LSL_Functions.llGetLocalRot(); | 424 | return m_LSL_Functions.llGetCenterOfMass(); |
386 | } | 425 | } |
387 | 426 | ||
388 | public void llSetForce(vector force, int local) | 427 | public LSL_Vector llGetColor(int face) |
389 | { | 428 | { |
390 | m_LSL_Functions.llSetForce(force, local); | 429 | return m_LSL_Functions.llGetColor(face); |
391 | } | 430 | } |
392 | 431 | ||
393 | public vector llGetForce() | 432 | public LSL_String llGetCreator() |
394 | { | 433 | { |
395 | return m_LSL_Functions.llGetForce(); | 434 | return m_LSL_Functions.llGetCreator(); |
396 | } | 435 | } |
397 | 436 | ||
398 | public LSL_Types.LSLInteger llTarget(vector position, double range) | 437 | public LSL_String llGetDate() |
399 | { | 438 | { |
400 | return m_LSL_Functions.llTarget(position, range); | 439 | return m_LSL_Functions.llGetDate(); |
401 | } | 440 | } |
402 | 441 | ||
403 | public void llTargetRemove(int number) | 442 | public LSL_Float llGetEnergy() |
404 | { | 443 | { |
405 | m_LSL_Functions.llTargetRemove(number); | 444 | return m_LSL_Functions.llGetEnergy(); |
406 | } | 445 | } |
407 | 446 | ||
408 | public LSL_Types.LSLInteger llRotTarget(rotation rot, double error) | 447 | public LSL_Vector llGetForce() |
409 | { | 448 | { |
410 | return m_LSL_Functions.llRotTarget(rot, error); | 449 | return m_LSL_Functions.llGetForce(); |
411 | } | 450 | } |
412 | 451 | ||
413 | public void llRotTargetRemove(int number) | 452 | public LSL_Integer llGetFreeMemory() |
414 | { | 453 | { |
415 | m_LSL_Functions.llRotTargetRemove(number); | 454 | return m_LSL_Functions.llGetFreeMemory(); |
416 | } | 455 | } |
417 | 456 | ||
418 | public void llMoveToTarget(vector target, double tau) | 457 | public LSL_Vector llGetGeometricCenter() |
419 | { | 458 | { |
420 | m_LSL_Functions.llMoveToTarget(target, tau); | 459 | return m_LSL_Functions.llGetGeometricCenter(); |
421 | } | 460 | } |
422 | 461 | ||
423 | public void llStopMoveToTarget() | 462 | public LSL_Float llGetGMTclock() |
424 | { | 463 | { |
425 | m_LSL_Functions.llStopMoveToTarget(); | 464 | return m_LSL_Functions.llGetGMTclock(); |
426 | } | 465 | } |
427 | 466 | ||
428 | public void llApplyImpulse(vector force, int local) | 467 | public LSL_Key llGetInventoryCreator(string item) |
429 | { | 468 | { |
430 | m_LSL_Functions.llApplyImpulse(force, local); | 469 | return m_LSL_Functions.llGetInventoryCreator(item); |
431 | } | 470 | } |
432 | 471 | ||
433 | public void llApplyRotationalImpulse(vector force, int local) | 472 | public LSL_Key llGetInventoryKey(string name) |
434 | { | 473 | { |
435 | m_LSL_Functions.llApplyRotationalImpulse(force, local); | 474 | return m_LSL_Functions.llGetInventoryKey(name); |
436 | } | 475 | } |
437 | 476 | ||
438 | public void llSetTorque(vector torque, int local) | 477 | public LSL_String llGetInventoryName(int type, int number) |
439 | { | 478 | { |
440 | m_LSL_Functions.llSetTorque(torque, local); | 479 | return m_LSL_Functions.llGetInventoryName(type, number); |
441 | } | 480 | } |
442 | 481 | ||
443 | public vector llGetTorque() | 482 | public LSL_Integer llGetInventoryNumber(int type) |
444 | { | 483 | { |
445 | return m_LSL_Functions.llGetTorque(); | 484 | return m_LSL_Functions.llGetInventoryNumber(type); |
446 | } | 485 | } |
447 | 486 | ||
448 | public void llSetForceAndTorque(vector force, vector torque, int local) | 487 | public LSL_Integer llGetInventoryPermMask(string item, int mask) |
449 | { | 488 | { |
450 | m_LSL_Functions.llSetForceAndTorque(force, torque, local); | 489 | return m_LSL_Functions.llGetInventoryPermMask(item, mask); |
451 | } | 490 | } |
452 | 491 | ||
453 | public vector llGetVel() | 492 | public LSL_Integer llGetInventoryType(string name) |
454 | { | 493 | { |
455 | return m_LSL_Functions.llGetVel(); | 494 | return m_LSL_Functions.llGetInventoryType(name); |
456 | } | 495 | } |
457 | 496 | ||
458 | public vector llGetAccel() | 497 | public LSL_Key llGetKey() |
459 | { | 498 | { |
460 | return m_LSL_Functions.llGetAccel(); | 499 | return m_LSL_Functions.llGetKey(); |
461 | } | 500 | } |
462 | 501 | ||
463 | public vector llGetOmega() | 502 | public LSL_Key llGetLandOwnerAt(LSL_Vector pos) |
464 | { | 503 | { |
465 | return m_LSL_Functions.llGetOmega(); | 504 | return m_LSL_Functions.llGetLandOwnerAt(pos); |
466 | } | 505 | } |
467 | 506 | ||
468 | public double llGetTimeOfDay() | 507 | public LSL_Key llGetLinkKey(int linknum) |
469 | { | 508 | { |
470 | return m_LSL_Functions.llGetTimeOfDay(); | 509 | return m_LSL_Functions.llGetLinkKey(linknum); |
471 | } | 510 | } |
472 | 511 | ||
473 | public double llGetWallclock() | 512 | public LSL_String llGetLinkName(int linknum) |
474 | { | 513 | { |
475 | return m_LSL_Functions.llGetWallclock(); | 514 | return m_LSL_Functions.llGetLinkName(linknum); |
476 | } | 515 | } |
477 | 516 | ||
478 | public double llGetTime() | 517 | public LSL_Integer llGetLinkNumber() |
479 | { | 518 | { |
480 | return m_LSL_Functions.llGetTime(); | 519 | return m_LSL_Functions.llGetLinkNumber(); |
481 | } | 520 | } |
482 | 521 | ||
483 | public void llResetTime() | 522 | public LSL_Integer llGetListEntryType(LSL_List src, int index) |
484 | { | 523 | { |
485 | m_LSL_Functions.llResetTime(); | 524 | return m_LSL_Functions.llGetListEntryType(src, index); |
486 | } | 525 | } |
487 | 526 | ||
488 | public double llGetAndResetTime() | 527 | public LSL_Integer llGetListLength(LSL_List src) |
489 | { | 528 | { |
490 | return m_LSL_Functions.llGetAndResetTime(); | 529 | return m_LSL_Functions.llGetListLength(src); |
491 | } | 530 | } |
492 | 531 | ||
493 | public void llSound() | 532 | public LSL_Vector llGetLocalPos() |
494 | { | 533 | { |
495 | m_LSL_Functions.llSound(); | 534 | return m_LSL_Functions.llGetLocalPos(); |
496 | } | 535 | } |
497 | 536 | ||
498 | public void llPlaySound(string sound, double volume) | 537 | public LSL_Rotation llGetLocalRot() |
499 | { | 538 | { |
500 | m_LSL_Functions.llPlaySound(sound, volume); | 539 | return m_LSL_Functions.llGetLocalRot(); |
501 | } | 540 | } |
502 | 541 | ||
503 | public void llLoopSound(string sound, double volume) | 542 | public LSL_Float llGetMass() |
504 | { | 543 | { |
505 | m_LSL_Functions.llLoopSound(sound, volume); | 544 | return m_LSL_Functions.llGetMass(); |
506 | } | 545 | } |
507 | 546 | ||
508 | public void llLoopSoundMaster(string sound, double volume) | 547 | public void llGetNextEmail(string address, string subject) |
509 | { | 548 | { |
510 | m_LSL_Functions.llLoopSoundMaster(sound, volume); | 549 | m_LSL_Functions.llGetNextEmail(address, subject); |
511 | } | 550 | } |
512 | 551 | ||
513 | public void llLoopSoundSlave(string sound, double volume) | 552 | public LSL_String llGetNotecardLine(string name, int line) |
514 | { | 553 | { |
515 | m_LSL_Functions.llLoopSoundSlave(sound, volume); | 554 | return m_LSL_Functions.llGetNotecardLine(name, line); |
516 | } | 555 | } |
517 | 556 | ||
518 | public void llPlaySoundSlave(string sound, double volume) | 557 | public LSL_Key llGetNumberOfNotecardLines(string name) |
519 | { | 558 | { |
520 | m_LSL_Functions.llPlaySoundSlave(sound, volume); | 559 | return m_LSL_Functions.llGetNumberOfNotecardLines(name); |
521 | } | 560 | } |
522 | 561 | ||
523 | public void llTriggerSound(string sound, double volume) | 562 | public LSL_Integer llGetNumberOfPrims() |
524 | { | 563 | { |
525 | m_LSL_Functions.llTriggerSound(sound, volume); | 564 | return m_LSL_Functions.llGetNumberOfPrims(); |
526 | } | 565 | } |
527 | 566 | ||
528 | public void llStopSound() | 567 | public LSL_Integer llGetNumberOfSides() |
529 | { | 568 | { |
530 | m_LSL_Functions.llStopSound(); | 569 | return m_LSL_Functions.llGetNumberOfSides(); |
531 | } | 570 | } |
532 | 571 | ||
533 | public void llPreloadSound(string sound) | 572 | public LSL_String llGetObjectDesc() |
534 | { | 573 | { |
535 | m_LSL_Functions.llPreloadSound(sound); | 574 | return m_LSL_Functions.llGetObjectDesc(); |
536 | } | 575 | } |
537 | 576 | ||
538 | public string llGetSubString(string src, int start, int end) | 577 | public LSL_List llGetObjectDetails(string id, LSL_List args) |
539 | { | 578 | { |
540 | return m_LSL_Functions.llGetSubString(src, start, end); | 579 | return m_LSL_Functions.llGetObjectDetails(id, args); |
541 | } | 580 | } |
542 | 581 | ||
543 | public string llDeleteSubString(string src, int start, int end) | 582 | public LSL_Float llGetObjectMass(string id) |
544 | { | 583 | { |
545 | return m_LSL_Functions.llDeleteSubString(src, start, end); | 584 | return m_LSL_Functions.llGetObjectMass(id); |
546 | } | 585 | } |
547 | 586 | ||
548 | public string llInsertString(string dst, int position, string src) | 587 | public LSL_String llGetObjectName() |
549 | { | 588 | { |
550 | return m_LSL_Functions.llInsertString(dst, position, src); | 589 | return m_LSL_Functions.llGetObjectName(); |
551 | } | 590 | } |
552 | 591 | ||
553 | public string llToUpper(string source) | 592 | public LSL_Integer llGetObjectPermMask(int mask) |
554 | { | 593 | { |
555 | return m_LSL_Functions.llToUpper(source); | 594 | return m_LSL_Functions.llGetObjectPermMask(mask); |
556 | } | 595 | } |
557 | 596 | ||
558 | public string llToLower(string source) | 597 | public LSL_Integer llGetObjectPrimCount(string object_id) |
559 | { | 598 | { |
560 | return m_LSL_Functions.llToLower(source); | 599 | return m_LSL_Functions.llGetObjectPrimCount(object_id); |
561 | } | 600 | } |
562 | 601 | ||
563 | public LSL_Types.LSLInteger llGiveMoney(string destination, int amount) | 602 | public LSL_Vector llGetOmega() |
564 | { | 603 | { |
565 | return m_LSL_Functions.llGiveMoney(destination, amount); | 604 | return m_LSL_Functions.llGetOmega(); |
566 | } | 605 | } |
567 | 606 | ||
568 | public void llMakeExplosion() | 607 | public LSL_Key llGetOwner() |
569 | { | 608 | { |
570 | m_LSL_Functions.llMakeExplosion(); | 609 | return m_LSL_Functions.llGetOwner(); |
571 | } | 610 | } |
572 | 611 | ||
573 | public void llMakeFountain() | 612 | public LSL_Key llGetOwnerKey(string id) |
574 | { | 613 | { |
575 | m_LSL_Functions.llMakeFountain(); | 614 | return m_LSL_Functions.llGetOwnerKey(id); |
576 | } | 615 | } |
577 | 616 | ||
578 | public void llMakeSmoke() | 617 | public LSL_List llGetParcelDetails(LSL_Vector pos, LSL_List param) |
579 | { | 618 | { |
580 | m_LSL_Functions.llMakeSmoke(); | 619 | return m_LSL_Functions.llGetParcelDetails(pos, param); |
581 | } | 620 | } |
582 | 621 | ||
583 | public void llMakeFire() | 622 | public LSL_Integer llGetParcelFlags(LSL_Vector pos) |
584 | { | 623 | { |
585 | m_LSL_Functions.llMakeFire(); | 624 | return m_LSL_Functions.llGetParcelFlags(pos); |
586 | } | 625 | } |
587 | 626 | ||
588 | public void llRezObject(string inventory, vector pos, vector vel, rotation rot, int param) | 627 | public LSL_Integer llGetParcelMaxPrims(LSL_Vector pos, int sim_wide) |
589 | { | 628 | { |
590 | m_LSL_Functions.llRezObject(inventory, pos, vel, rot, param); | 629 | return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); |
591 | } | 630 | } |
592 | 631 | ||
593 | public void llLookAt(vector target, double strength, double damping) | 632 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) |
594 | { | 633 | { |
595 | m_LSL_Functions.llLookAt(target, strength, damping); | 634 | return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); |
596 | } | 635 | } |
597 | 636 | ||
598 | public void llStopLookAt() | 637 | public LSL_List llGetParcelPrimOwners(LSL_Vector pos) |
599 | { | 638 | { |
600 | m_LSL_Functions.llStopLookAt(); | 639 | return m_LSL_Functions.llGetParcelPrimOwners(pos); |
601 | } | 640 | } |
602 | 641 | ||
603 | public void llSetTimerEvent(double sec) | 642 | public LSL_Integer llGetPermissions() |
604 | { | 643 | { |
605 | m_LSL_Functions.llSetTimerEvent(sec); | 644 | return m_LSL_Functions.llGetPermissions(); |
606 | } | 645 | } |
607 | 646 | ||
608 | public void llSleep(double sec) | 647 | public LSL_Key llGetPermissionsKey() |
609 | { | 648 | { |
610 | m_LSL_Functions.llSleep(sec); | 649 | return m_LSL_Functions.llGetPermissionsKey(); |
611 | } | 650 | } |
612 | 651 | ||
613 | public double llGetMass() | 652 | public LSL_Vector llGetPos() |
614 | { | 653 | { |
615 | return m_LSL_Functions.llGetMass(); | 654 | return m_LSL_Functions.llGetPos(); |
616 | } | 655 | } |
617 | 656 | ||
618 | public void llCollisionFilter(string name, string id, int accept) | 657 | public LSL_List llGetPrimitiveParams(LSL_List rules) |
619 | { | 658 | { |
620 | m_LSL_Functions.llCollisionFilter(name, id, accept); | 659 | return m_LSL_Functions.llGetPrimitiveParams(rules); |
621 | } | 660 | } |
622 | 661 | ||
623 | public void llTakeControls(int controls, int accept, int pass_on) | 662 | public LSL_Integer llGetRegionAgentCount() |
624 | { | 663 | { |
625 | m_LSL_Functions.llTakeControls(controls, accept, pass_on); | 664 | return m_LSL_Functions.llGetRegionAgentCount(); |
626 | } | 665 | } |
627 | 666 | ||
628 | public void llReleaseControls() | 667 | public LSL_Vector llGetRegionCorner() |
629 | { | 668 | { |
630 | m_LSL_Functions.llReleaseControls(); | 669 | return m_LSL_Functions.llGetRegionCorner(); |
631 | } | 670 | } |
632 | 671 | ||
633 | public void llAttachToAvatar(int attachment) | 672 | public LSL_Integer llGetRegionFlags() |
634 | { | 673 | { |
635 | m_LSL_Functions.llAttachToAvatar(attachment); | 674 | return m_LSL_Functions.llGetRegionFlags(); |
636 | } | 675 | } |
637 | 676 | ||
638 | public void llDetachFromAvatar() | 677 | public LSL_Float llGetRegionFPS() |
639 | { | 678 | { |
640 | m_LSL_Functions.llDetachFromAvatar(); | 679 | return m_LSL_Functions.llGetRegionFPS(); |
641 | } | 680 | } |
642 | 681 | ||
643 | public void llTakeCamera(string avatar) | 682 | public LSL_String llGetRegionName() |
644 | { | 683 | { |
645 | m_LSL_Functions.llTakeCamera(avatar); | 684 | return m_LSL_Functions.llGetRegionName(); |
646 | } | 685 | } |
647 | 686 | ||
648 | public void llReleaseCamera(string avatar) | 687 | public LSL_Float llGetRegionTimeDilation() |
649 | { | 688 | { |
650 | m_LSL_Functions.llReleaseCamera(avatar); | 689 | return m_LSL_Functions.llGetRegionTimeDilation(); |
651 | } | 690 | } |
652 | 691 | ||
653 | public string llGetOwner() | 692 | public LSL_Vector llGetRootPosition() |
654 | { | 693 | { |
655 | return m_LSL_Functions.llGetOwner(); | 694 | return m_LSL_Functions.llGetRootPosition(); |
656 | } | 695 | } |
657 | 696 | ||
658 | public void llInstantMessage(string user, string message) | 697 | public LSL_Rotation llGetRootRotation() |
659 | { | 698 | { |
660 | m_LSL_Functions.llInstantMessage(user, message); | 699 | return m_LSL_Functions.llGetRootRotation(); |
661 | } | 700 | } |
662 | 701 | ||
663 | public void llEmail(string address, string subject, string message) | 702 | public LSL_Rotation llGetRot() |
664 | { | 703 | { |
665 | m_LSL_Functions.llEmail(address, subject, message); | 704 | return m_LSL_Functions.llGetRot(); |
666 | } | 705 | } |
667 | 706 | ||
668 | public void llGetNextEmail(string address, string subject) | 707 | public LSL_Vector llGetScale() |
669 | { | 708 | { |
670 | m_LSL_Functions.llGetNextEmail(address, subject); | 709 | return m_LSL_Functions.llGetScale(); |
671 | } | 710 | } |
672 | 711 | ||
673 | public string llGetKey() | 712 | public LSL_String llGetScriptName() |
674 | { | 713 | { |
675 | return m_LSL_Functions.llGetKey(); | 714 | return m_LSL_Functions.llGetScriptName(); |
676 | } | 715 | } |
677 | 716 | ||
678 | public void llSetBuoyancy(double buoyancy) | 717 | public LSL_Integer llGetScriptState(string name) |
679 | { | 718 | { |
680 | m_LSL_Functions.llSetBuoyancy(buoyancy); | 719 | return m_LSL_Functions.llGetScriptState(name); |
681 | } | 720 | } |
682 | 721 | ||
683 | public void llSetHoverHeight(double height, int water, double tau) | 722 | public LSL_String llGetSimulatorHostname() |
684 | { | 723 | { |
685 | m_LSL_Functions.llSetHoverHeight(height, water, tau); | 724 | return m_LSL_Functions.llGetSimulatorHostname(); |
686 | } | 725 | } |
687 | 726 | ||
688 | public void llStopHover() | 727 | public LSL_Integer llGetStartParameter() |
689 | { | 728 | { |
690 | m_LSL_Functions.llStopHover(); | 729 | return m_LSL_Functions.llGetStartParameter(); |
691 | } | 730 | } |
692 | 731 | ||
693 | public void llMinEventDelay(double delay) | 732 | public LSL_Integer llGetStatus(int status) |
694 | { | 733 | { |
695 | m_LSL_Functions.llMinEventDelay(delay); | 734 | return m_LSL_Functions.llGetStatus(status); |
696 | } | 735 | } |
697 | 736 | ||
698 | public void llSoundPreload() | 737 | public LSL_String llGetSubString(string src, int start, int end) |
699 | { | 738 | { |
700 | m_LSL_Functions.llSoundPreload(); | 739 | return m_LSL_Functions.llGetSubString(src, start, end); |
701 | } | 740 | } |
702 | 741 | ||
703 | public void llRotLookAt(rotation target, double strength, double damping) | 742 | public LSL_Vector llGetSunDirection() |
704 | { | 743 | { |
705 | m_LSL_Functions.llRotLookAt(target, strength, damping); | 744 | return m_LSL_Functions.llGetSunDirection(); |
706 | } | 745 | } |
707 | 746 | ||
708 | public LSL_Types.LSLInteger llStringLength(string str) | 747 | public LSL_String llGetTexture(int face) |
709 | { | 748 | { |
710 | return m_LSL_Functions.llStringLength(str); | 749 | return m_LSL_Functions.llGetTexture(face); |
711 | } | 750 | } |
712 | 751 | ||
713 | public void llStartAnimation(string anim) | 752 | public LSL_Vector llGetTextureOffset(int face) |
714 | { | 753 | { |
715 | m_LSL_Functions.llStartAnimation(anim); | 754 | return m_LSL_Functions.llGetTextureOffset(face); |
716 | } | 755 | } |
717 | 756 | ||
718 | public void llStopAnimation(string anim) | 757 | public LSL_Float llGetTextureRot(int side) |
719 | { | 758 | { |
720 | m_LSL_Functions.llStopAnimation(anim); | 759 | return m_LSL_Functions.llGetTextureRot(side); |
721 | } | 760 | } |
722 | 761 | ||
723 | public void llPointAt() | 762 | public LSL_Vector llGetTextureScale(int side) |
724 | { | 763 | { |
725 | m_LSL_Functions.llPointAt(); | 764 | return m_LSL_Functions.llGetTextureScale(side); |
726 | } | 765 | } |
727 | 766 | ||
728 | public void llStopPointAt() | 767 | public LSL_Float llGetTime() |
729 | { | 768 | { |
730 | m_LSL_Functions.llStopPointAt(); | 769 | return m_LSL_Functions.llGetTime(); |
731 | } | 770 | } |
732 | 771 | ||
733 | public void llTargetOmega(vector axis, double spinrate, double gain) | 772 | public LSL_Float llGetTimeOfDay() |
734 | { | 773 | { |
735 | m_LSL_Functions.llTargetOmega(axis, spinrate, gain); | 774 | return m_LSL_Functions.llGetTimeOfDay(); |
736 | } | 775 | } |
737 | 776 | ||
738 | public LSL_Types.LSLInteger llGetStartParameter() | 777 | public LSL_String llGetTimestamp() |
739 | { | 778 | { |
740 | return m_LSL_Functions.llGetStartParameter(); | 779 | return m_LSL_Functions.llGetTimestamp(); |
741 | } | 780 | } |
742 | 781 | ||
743 | public void llGodLikeRezObject(string inventory, vector pos) | 782 | public LSL_Vector llGetTorque() |
744 | { | 783 | { |
745 | m_LSL_Functions.llGodLikeRezObject(inventory, pos); | 784 | return m_LSL_Functions.llGetTorque(); |
746 | } | 785 | } |
747 | 786 | ||
748 | public void llRequestPermissions(string agent, int perm) | 787 | public LSL_Integer llGetUnixTime() |
749 | { | 788 | { |
750 | m_LSL_Functions.llRequestPermissions(agent, perm); | 789 | return m_LSL_Functions.llGetUnixTime(); |
751 | } | 790 | } |
752 | 791 | ||
753 | public string llGetPermissionsKey() | 792 | public LSL_Vector llGetVel() |
754 | { | 793 | { |
755 | return m_LSL_Functions.llGetPermissionsKey(); | 794 | return m_LSL_Functions.llGetVel(); |
756 | } | 795 | } |
757 | 796 | ||
758 | public LSL_Types.LSLInteger llGetPermissions() | 797 | public LSL_Float llGetWallclock() |
759 | { | 798 | { |
760 | return m_LSL_Functions.llGetPermissions(); | 799 | return m_LSL_Functions.llGetWallclock(); |
761 | } | 800 | } |
762 | 801 | ||
763 | public LSL_Types.LSLInteger llGetLinkNumber() | 802 | public void llGiveInventory(string destination, string inventory) |
764 | { | 803 | { |
765 | return m_LSL_Functions.llGetLinkNumber(); | 804 | m_LSL_Functions.llGiveInventory(destination, inventory); |
766 | } | 805 | } |
767 | 806 | ||
768 | public void llSetLinkColor(int linknumber, vector color, int face) | 807 | public void llGiveInventoryList(string destination, string category, LSL_List inventory) |
769 | { | 808 | { |
770 | m_LSL_Functions.llSetLinkColor(linknumber, color, face); | 809 | m_LSL_Functions.llGiveInventoryList(destination, category, inventory); |
771 | } | 810 | } |
772 | 811 | ||
773 | public void llCreateLink(string target, int parent) | 812 | public LSL_Integer llGiveMoney(string destination, int amount) |
774 | { | 813 | { |
775 | m_LSL_Functions.llCreateLink(target, parent); | 814 | return m_LSL_Functions.llGiveMoney(destination, amount); |
776 | } | 815 | } |
777 | 816 | ||
778 | public void llBreakLink(int linknum) | 817 | public void llGodLikeRezObject(string inventory, LSL_Vector pos) |
779 | { | 818 | { |
780 | m_LSL_Functions.llBreakLink(linknum); | 819 | m_LSL_Functions.llGodLikeRezObject(inventory, pos); |
781 | } | 820 | } |
782 | 821 | ||
783 | public void llBreakAllLinks() | 822 | public LSL_Float llGround(LSL_Vector offset) |
784 | { | 823 | { |
785 | m_LSL_Functions.llBreakAllLinks(); | 824 | return m_LSL_Functions.llGround(offset); |
786 | } | 825 | } |
787 | 826 | ||
788 | public string llGetLinkKey(int linknum) | 827 | public LSL_Vector llGroundContour(LSL_Vector offset) |
789 | { | 828 | { |
790 | return m_LSL_Functions.llGetLinkKey(linknum); | 829 | return m_LSL_Functions.llGroundContour(offset); |
791 | } | 830 | } |
792 | 831 | ||
793 | public string llGetLinkName(int linknum) | 832 | public LSL_Vector llGroundNormal(LSL_Vector offset) |
794 | { | 833 | { |
795 | return m_LSL_Functions.llGetLinkName(linknum); | 834 | return m_LSL_Functions.llGroundNormal(offset); |
796 | } | 835 | } |
797 | 836 | ||
798 | public LSL_Types.LSLInteger llGetInventoryNumber(int type) | 837 | public void llGroundRepel(double height, int water, double tau) |
799 | { | 838 | { |
800 | return m_LSL_Functions.llGetInventoryNumber(type); | 839 | m_LSL_Functions.llGroundRepel(height, water, tau); |
801 | } | 840 | } |
802 | 841 | ||
803 | public string llGetInventoryName(int type, int number) | 842 | public LSL_Vector llGroundSlope(LSL_Vector offset) |
804 | { | 843 | { |
805 | return m_LSL_Functions.llGetInventoryName(type, number); | 844 | return m_LSL_Functions.llGroundSlope(offset); |
806 | } | 845 | } |
807 | 846 | ||
808 | public void llSetScriptState(string name, int run) | 847 | public LSL_String llHTTPRequest(string url, LSL_List parameters, string body) |
809 | { | 848 | { |
810 | m_LSL_Functions.llSetScriptState(name, run); | 849 | return m_LSL_Functions.llHTTPRequest(url, parameters, body); |
811 | } | 850 | } |
812 | 851 | ||
813 | public double llGetEnergy() | 852 | public LSL_String llInsertString(string dst, int position, string src) |
814 | { | 853 | { |
815 | return m_LSL_Functions.llGetEnergy(); | 854 | return m_LSL_Functions.llInsertString(dst, position, src); |
816 | } | 855 | } |
817 | 856 | ||
818 | public void llGiveInventory(string destination, string inventory) | 857 | public void llInstantMessage(string user, string message) |
819 | { | 858 | { |
820 | m_LSL_Functions.llGiveInventory(destination, inventory); | 859 | m_LSL_Functions.llInstantMessage(user, message); |
821 | } | 860 | } |
822 | 861 | ||
823 | public void llRemoveInventory(string item) | 862 | public LSL_String llIntegerToBase64(int number) |
824 | { | 863 | { |
825 | m_LSL_Functions.llRemoveInventory(item); | 864 | return m_LSL_Functions.llIntegerToBase64(number); |
826 | } | 865 | } |
827 | 866 | ||
828 | public void llSetText(string text, vector color, double alpha) | 867 | public LSL_String llKey2Name(string id) |
829 | { | 868 | { |
830 | m_LSL_Functions.llSetText(text, color, alpha); | 869 | return m_LSL_Functions.llKey2Name(id); |
831 | } | 870 | } |
832 | 871 | ||
833 | public double llWater(vector offset) | 872 | public LSL_String llList2CSV(LSL_List src) |
834 | { | 873 | { |
835 | return m_LSL_Functions.llWater(offset); | 874 | return m_LSL_Functions.llList2CSV(src); |
836 | } | 875 | } |
837 | 876 | ||
838 | public void llPassTouches(int pass) | 877 | public LSL_Float llList2Float(LSL_List src, int index) |
839 | { | 878 | { |
840 | m_LSL_Functions.llPassTouches(pass); | 879 | return m_LSL_Functions.llList2Float(src, index); |
841 | } | 880 | } |
842 | 881 | ||
843 | public string llRequestAgentData(string id, int data) | 882 | public LSL_Integer llList2Integer(LSL_List src, int index) |
844 | { | 883 | { |
845 | return m_LSL_Functions.llRequestAgentData(id, data); | 884 | return m_LSL_Functions.llList2Integer(src, index); |
846 | } | 885 | } |
847 | 886 | ||
848 | public string llRequestInventoryData(string name) | 887 | public LSL_Key llList2Key(LSL_List src, int index) |
849 | { | 888 | { |
850 | return m_LSL_Functions.llRequestInventoryData(name); | 889 | return m_LSL_Functions.llList2Key(src, index); |
851 | } | 890 | } |
852 | 891 | ||
853 | public void llSetDamage(double damage) | 892 | public LSL_List llList2List(LSL_List src, int start, int end) |
854 | { | 893 | { |
855 | m_LSL_Functions.llSetDamage(damage); | 894 | return m_LSL_Functions.llList2List(src, start, end); |
856 | } | 895 | } |
857 | 896 | ||
858 | public void llTeleportAgentHome(string agent) | 897 | public LSL_List llList2ListStrided(LSL_List src, int start, int end, int stride) |
859 | { | 898 | { |
860 | m_LSL_Functions.llTeleportAgentHome(agent); | 899 | return m_LSL_Functions.llList2ListStrided(src, start, end, stride); |
861 | } | 900 | } |
862 | 901 | ||
863 | public void llModifyLand(int action, int brush) | 902 | public LSL_Rotation llList2Rot(LSL_List src, int index) |
864 | { | 903 | { |
865 | m_LSL_Functions.llModifyLand(action, brush); | 904 | return m_LSL_Functions.llList2Rot(src, index); |
866 | } | 905 | } |
867 | 906 | ||
868 | public void llCollisionSound(string impact_sound, double impact_volume) | 907 | public LSL_String llList2String(LSL_List src, int index) |
869 | { | 908 | { |
870 | m_LSL_Functions.llCollisionSound(impact_sound, impact_volume); | 909 | return m_LSL_Functions.llList2String(src, index); |
871 | } | 910 | } |
872 | 911 | ||
873 | public void llCollisionSprite(string impact_sprite) | 912 | public LSL_Vector llList2Vector(LSL_List src, int index) |
874 | { | 913 | { |
875 | m_LSL_Functions.llCollisionSprite(impact_sprite); | 914 | return m_LSL_Functions.llList2Vector(src, index); |
876 | } | 915 | } |
877 | 916 | ||
878 | public string llGetAnimation(string id) | 917 | public LSL_Integer llListen(int channelID, string name, string ID, string msg) |
879 | { | 918 | { |
880 | return m_LSL_Functions.llGetAnimation(id); | 919 | return m_LSL_Functions.llListen(channelID, name, ID, msg); |
881 | } | 920 | } |
882 | 921 | ||
883 | public void llResetScript() | 922 | public void llListenControl(int number, int active) |
884 | { | 923 | { |
885 | m_LSL_Functions.llResetScript(); | 924 | m_LSL_Functions.llListenControl(number, active); |
886 | } | 925 | } |
887 | 926 | ||
888 | public void llMessageLinked(int linknum, int num, string str, string id) | 927 | public void llListenRemove(int number) |
889 | { | 928 | { |
890 | m_LSL_Functions.llMessageLinked(linknum, num, str, id); | 929 | m_LSL_Functions.llListenRemove(number); |
891 | } | 930 | } |
892 | 931 | ||
893 | public void llPushObject(string target, vector impulse, vector ang_impulse, int local) | 932 | public LSL_Integer llListFindList(LSL_List src, LSL_List test) |
894 | { | 933 | { |
895 | m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local); | 934 | return m_LSL_Functions.llListFindList(src, test); |
896 | } | 935 | } |
897 | 936 | ||
898 | public void llPassCollisions(int pass) | 937 | public LSL_List llListInsertList(LSL_List dest, LSL_List src, int start) |
899 | { | 938 | { |
900 | m_LSL_Functions.llPassCollisions(pass); | 939 | return m_LSL_Functions.llListInsertList(dest, src, start); |
901 | } | 940 | } |
902 | 941 | ||
903 | public string llGetScriptName() | 942 | public LSL_List llListRandomize(LSL_List src, int stride) |
904 | { | 943 | { |
905 | return m_LSL_Functions.llGetScriptName(); | 944 | return m_LSL_Functions.llListRandomize(src, stride); |
906 | } | 945 | } |
907 | 946 | ||
908 | public LSL_Types.LSLInteger llGetNumberOfSides() | 947 | public LSL_List llListReplaceList(LSL_List dest, LSL_List src, int start, int end) |
909 | { | 948 | { |
910 | return m_LSL_Functions.llGetNumberOfSides(); | 949 | return m_LSL_Functions.llListReplaceList(dest, src, start, end); |
911 | } | 950 | } |
912 | 951 | ||
913 | public rotation llAxisAngle2Rot(vector axis, double angle) | 952 | public LSL_List llListSort(LSL_List src, int stride, int ascending) |
914 | { | 953 | { |
915 | return m_LSL_Functions.llAxisAngle2Rot(axis, angle); | 954 | return m_LSL_Functions.llListSort(src, stride, ascending); |
916 | } | 955 | } |
917 | 956 | ||
918 | public vector llRot2Axis(rotation rot) | 957 | public LSL_Float llListStatistics(int operation, LSL_List src) |
919 | { | 958 | { |
920 | return m_LSL_Functions.llRot2Axis(rot); | 959 | return m_LSL_Functions.llListStatistics(operation, src); |
960 | } | ||
961 | |||
962 | public void llLoadURL(string avatar_id, string message, string url) | ||
963 | { | ||
964 | m_LSL_Functions.llLoadURL(avatar_id, message, url); | ||
921 | } | 965 | } |
922 | 966 | ||
923 | public double llRot2Angle(rotation rot) | 967 | public LSL_Float llLog(double val) |
924 | { | 968 | { |
925 | return m_LSL_Functions.llRot2Angle(rot); | 969 | return m_LSL_Functions.llLog(val); |
926 | } | 970 | } |
927 | 971 | ||
928 | public double llAcos(double val) | 972 | public LSL_Float llLog10(double val) |
929 | { | 973 | { |
930 | return m_LSL_Functions.llAcos(val); | 974 | return m_LSL_Functions.llLog10(val); |
931 | } | 975 | } |
932 | 976 | ||
933 | public double llAsin(double val) | 977 | public void llLookAt(LSL_Vector target, double strength, double damping) |
934 | { | 978 | { |
935 | return m_LSL_Functions.llAsin(val); | 979 | m_LSL_Functions.llLookAt(target, strength, damping); |
936 | } | 980 | } |
937 | 981 | ||
938 | public double llAngleBetween(rotation a, rotation b) | 982 | public void llLoopSound(string sound, double volume) |
939 | { | 983 | { |
940 | return m_LSL_Functions.llAngleBetween(a, b); | 984 | m_LSL_Functions.llLoopSound(sound, volume); |
941 | } | 985 | } |
942 | 986 | ||
943 | public string llGetInventoryKey(string name) | 987 | public void llLoopSoundMaster(string sound, double volume) |
944 | { | 988 | { |
945 | return m_LSL_Functions.llGetInventoryKey(name); | 989 | m_LSL_Functions.llLoopSoundMaster(sound, volume); |
946 | } | 990 | } |
947 | 991 | ||
948 | public void llAllowInventoryDrop(int add) | 992 | public void llLoopSoundSlave(string sound, double volume) |
949 | { | 993 | { |
950 | m_LSL_Functions.llAllowInventoryDrop(add); | 994 | m_LSL_Functions.llLoopSoundSlave(sound, volume); |
951 | } | 995 | } |
952 | 996 | ||
953 | public vector llGetSunDirection() | 997 | public void llMakeExplosion() |
954 | { | 998 | { |
955 | return m_LSL_Functions.llGetSunDirection(); | 999 | m_LSL_Functions.llMakeExplosion(); |
956 | } | 1000 | } |
957 | 1001 | ||
958 | public vector llGetTextureOffset(int face) | 1002 | public void llMakeFire() |
959 | { | 1003 | { |
960 | return m_LSL_Functions.llGetTextureOffset(face); | 1004 | m_LSL_Functions.llMakeFire(); |
961 | } | 1005 | } |
962 | 1006 | ||
963 | public vector llGetTextureScale(int side) | 1007 | public void llMakeFountain() |
964 | { | 1008 | { |
965 | return m_LSL_Functions.llGetTextureScale(side); | 1009 | m_LSL_Functions.llMakeFountain(); |
966 | } | 1010 | } |
967 | 1011 | ||
968 | public double llGetTextureRot(int side) | 1012 | public void llMakeSmoke() |
969 | { | 1013 | { |
970 | return m_LSL_Functions.llGetTextureRot(side); | 1014 | m_LSL_Functions.llMakeSmoke(); |
971 | } | 1015 | } |
972 | 1016 | ||
973 | public LSL_Types.LSLInteger llSubStringIndex(string source, string pattern) | 1017 | public void llMapDestination(string simname, LSL_Vector pos, LSL_Vector look_at) |
974 | { | 1018 | { |
975 | return m_LSL_Functions.llSubStringIndex(source, pattern); | 1019 | m_LSL_Functions.llMapDestination(simname, pos, look_at); |
976 | } | 1020 | } |
977 | 1021 | ||
978 | public string llGetOwnerKey(string id) | 1022 | public LSL_String llMD5String(string src, int nonce) |
979 | { | 1023 | { |
980 | return m_LSL_Functions.llGetOwnerKey(id); | 1024 | return m_LSL_Functions.llMD5String(src, nonce); |
981 | } | 1025 | } |
982 | 1026 | ||
983 | public vector llGetCenterOfMass() | 1027 | public void llMessageLinked(int linknum, int num, string str, string id) |
984 | { | 1028 | { |
985 | return m_LSL_Functions.llGetCenterOfMass(); | 1029 | m_LSL_Functions.llMessageLinked(linknum, num, str, id); |
986 | } | 1030 | } |
987 | 1031 | ||
988 | public LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending) | 1032 | public void llMinEventDelay(double delay) |
989 | { | 1033 | { |
990 | return m_LSL_Functions.llListSort(src, stride, ascending); | 1034 | m_LSL_Functions.llMinEventDelay(delay); |
991 | } | 1035 | } |
992 | 1036 | ||
993 | public LSL_Types.LSLInteger llGetListLength(LSL_Types.list src) | 1037 | public void llModifyLand(int action, int brush) |
994 | { | 1038 | { |
995 | return m_LSL_Functions.llGetListLength(src); | 1039 | m_LSL_Functions.llModifyLand(action, brush); |
996 | } | 1040 | } |
997 | 1041 | ||
998 | public LSL_Types.LSLInteger llList2Integer(LSL_Types.list src, int index) | 1042 | public LSL_Integer llModPow(int a, int b, int c) |
999 | { | 1043 | { |
1000 | return m_LSL_Functions.llList2Integer(src, index); | 1044 | return m_LSL_Functions.llModPow(a, b, c); |
1001 | } | 1045 | } |
1002 | 1046 | ||
1003 | public string llList2String(LSL_Types.list src, int index) | 1047 | public void llMoveToTarget(LSL_Vector target, double tau) |
1004 | { | 1048 | { |
1005 | return m_LSL_Functions.llList2String(src, index); | 1049 | m_LSL_Functions.llMoveToTarget(target, tau); |
1006 | } | 1050 | } |
1007 | 1051 | ||
1008 | public string llList2Key(LSL_Types.list src, int index) | 1052 | public void llOffsetTexture(double u, double v, int face) |
1009 | { | 1053 | { |
1010 | return m_LSL_Functions.llList2Key(src, index); | 1054 | m_LSL_Functions.llOffsetTexture(u, v, face); |
1011 | } | 1055 | } |
1012 | 1056 | ||
1013 | public vector llList2Vector(LSL_Types.list src, int index) | 1057 | public void llOpenRemoteDataChannel() |
1014 | { | 1058 | { |
1015 | return m_LSL_Functions.llList2Vector(src, index); | 1059 | m_LSL_Functions.llOpenRemoteDataChannel(); |
1016 | } | 1060 | } |
1017 | 1061 | ||
1018 | public rotation llList2Rot(LSL_Types.list src, int index) | 1062 | public LSL_Integer llOverMyLand(string id) |
1019 | { | 1063 | { |
1020 | return m_LSL_Functions.llList2Rot(src, index); | 1064 | return m_LSL_Functions.llOverMyLand(id); |
1021 | } | 1065 | } |
1022 | 1066 | ||
1023 | public LSL_Types.list llList2List(LSL_Types.list src, int start, int end) | 1067 | public void llOwnerSay(string msg) |
1024 | { | 1068 | { |
1025 | return m_LSL_Functions.llList2List(src, start, end); | 1069 | m_LSL_Functions.llOwnerSay(msg); |
1026 | } | 1070 | } |
1027 | 1071 | ||
1028 | public LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end) | 1072 | public void llParcelMediaCommandList(LSL_List commandList) |
1029 | { | 1073 | { |
1030 | return m_LSL_Functions.llDeleteSubList(src, start, end); | 1074 | m_LSL_Functions.llParcelMediaCommandList(commandList); |
1031 | } | 1075 | } |
1032 | 1076 | ||
1033 | public LSL_Types.LSLInteger llGetListEntryType(LSL_Types.list src, int index) | 1077 | public LSL_List llParcelMediaQuery(LSL_List aList) |
1034 | { | 1078 | { |
1035 | return m_LSL_Functions.llGetListEntryType(src, index); | 1079 | return m_LSL_Functions.llParcelMediaQuery(aList); |
1036 | } | 1080 | } |
1037 | 1081 | ||
1038 | public string llList2CSV(LSL_Types.list src) | 1082 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List spacers) |
1039 | { | 1083 | { |
1040 | return m_LSL_Functions.llList2CSV(src); | 1084 | return m_LSL_Functions.llParseString2List(str, separators, spacers); |
1041 | } | 1085 | } |
1042 | 1086 | ||
1043 | public LSL_Types.list llCSV2List(string src) | 1087 | public LSL_List llParseStringKeepNulls(string src, LSL_List seperators, LSL_List spacers) |
1044 | { | 1088 | { |
1045 | return m_LSL_Functions.llCSV2List(src); | 1089 | return m_LSL_Functions.llParseStringKeepNulls(src, seperators, spacers); |
1046 | } | 1090 | } |
1047 | 1091 | ||
1048 | public LSL_Types.list llListRandomize(LSL_Types.list src, int stride) | 1092 | public void llParticleSystem(LSL_List rules) |
1049 | { | 1093 | { |
1050 | return m_LSL_Functions.llListRandomize(src, stride); | 1094 | m_LSL_Functions.llParticleSystem(rules); |
1051 | } | 1095 | } |
1052 | 1096 | ||
1053 | public LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride) | 1097 | public void llPassCollisions(int pass) |
1054 | { | 1098 | { |
1055 | return m_LSL_Functions.llList2ListStrided(src, start, end, stride); | 1099 | m_LSL_Functions.llPassCollisions(pass); |
1056 | } | 1100 | } |
1057 | 1101 | ||
1058 | public vector llGetRegionCorner() | 1102 | public void llPassTouches(int pass) |
1059 | { | 1103 | { |
1060 | return m_LSL_Functions.llGetRegionCorner(); | 1104 | m_LSL_Functions.llPassTouches(pass); |
1061 | } | 1105 | } |
1062 | 1106 | ||
1063 | public LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int start) | 1107 | public void llPlaySound(string sound, double volume) |
1064 | { | 1108 | { |
1065 | return m_LSL_Functions.llListInsertList(dest, src, start); | 1109 | m_LSL_Functions.llPlaySound(sound, volume); |
1066 | } | 1110 | } |
1067 | 1111 | ||
1068 | public LSL_Types.LSLInteger llListFindList(LSL_Types.list src, LSL_Types.list test) | 1112 | public void llPlaySoundSlave(string sound, double volume) |
1069 | { | 1113 | { |
1070 | return m_LSL_Functions.llListFindList(src, test); | 1114 | m_LSL_Functions.llPlaySoundSlave(sound, volume); |
1071 | } | 1115 | } |
1072 | 1116 | ||
1073 | public string llGetObjectName() | 1117 | public void llPointAt() |
1074 | { | 1118 | { |
1075 | return m_LSL_Functions.llGetObjectName(); | 1119 | m_LSL_Functions.llPointAt(); |
1076 | } | 1120 | } |
1077 | 1121 | ||
1078 | public void llSetObjectName(string name) | 1122 | public LSL_Float llPow(double fbase, double fexponent) |
1079 | { | 1123 | { |
1080 | m_LSL_Functions.llSetObjectName(name); | 1124 | return m_LSL_Functions.llPow(fbase, fexponent); |
1081 | } | 1125 | } |
1082 | 1126 | ||
1083 | public string llGetDate() | 1127 | public void llPreloadSound(string sound) |
1084 | { | 1128 | { |
1085 | return m_LSL_Functions.llGetDate(); | 1129 | m_LSL_Functions.llPreloadSound(sound); |
1086 | } | 1130 | } |
1087 | 1131 | ||
1088 | public LSL_Types.LSLInteger llEdgeOfWorld(vector pos, vector dir) | 1132 | public void llPushObject(string target, LSL_Vector impulse, LSL_Vector ang_impulse, int local) |
1089 | { | 1133 | { |
1090 | return m_LSL_Functions.llEdgeOfWorld(pos, dir); | 1134 | m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local); |
1091 | } | 1135 | } |
1092 | 1136 | ||
1093 | public LSL_Types.LSLInteger llGetAgentInfo(string id) | 1137 | public void llRefreshPrimURL() |
1094 | { | 1138 | { |
1095 | return m_LSL_Functions.llGetAgentInfo(id); | 1139 | m_LSL_Functions.llRefreshPrimURL(); |
1096 | } | 1140 | } |
1097 | 1141 | ||
1098 | public void llAdjustSoundVolume(double volume) | 1142 | public void llRegionSay(int channelID, string text) |
1099 | { | 1143 | { |
1100 | m_LSL_Functions.llAdjustSoundVolume(volume); | 1144 | m_LSL_Functions.llRegionSay(channelID, text); |
1101 | } | 1145 | } |
1102 | 1146 | ||
1103 | public void llSetSoundQueueing(int queue) | 1147 | public void llReleaseCamera(string avatar) |
1104 | { | 1148 | { |
1105 | m_LSL_Functions.llSetSoundQueueing(queue); | 1149 | m_LSL_Functions.llReleaseCamera(avatar); |
1106 | } | 1150 | } |
1107 | 1151 | ||
1108 | public void llSetSoundRadius(double radius) | 1152 | public void llReleaseControls() |
1109 | { | 1153 | { |
1110 | m_LSL_Functions.llSetSoundRadius(radius); | 1154 | m_LSL_Functions.llReleaseControls(); |
1111 | } | 1155 | } |
1112 | 1156 | ||
1113 | public string llKey2Name(string id) | 1157 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) |
1114 | { | 1158 | { |
1115 | return m_LSL_Functions.llKey2Name(id); | 1159 | m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); |
1116 | } | 1160 | } |
1117 | 1161 | ||
1118 | public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate) | 1162 | public void llRemoteDataSetRegion() |
1119 | { | 1163 | { |
1120 | m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate); | 1164 | m_LSL_Functions.llRemoteDataSetRegion(); |
1121 | } | 1165 | } |
1122 | 1166 | ||
1123 | public void llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west) | 1167 | public void llRemoteLoadScript() |
1124 | { | 1168 | { |
1125 | m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west); | 1169 | m_LSL_Functions.llRemoteLoadScript(); |
1126 | } | 1170 | } |
1127 | 1171 | ||
1128 | public void llEjectFromLand(string pest) | 1172 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) |
1129 | { | 1173 | { |
1130 | m_LSL_Functions.llEjectFromLand(pest); | 1174 | m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); |
1131 | } | 1175 | } |
1132 | 1176 | ||
1133 | public LSL_Types.list llParseString2List(string str, LSL_Types.list separators, LSL_Types.list spacers) | 1177 | public void llRemoveFromLandBanList(string avatar) |
1134 | { | 1178 | { |
1135 | return m_LSL_Functions.llParseString2List(str,separators,spacers); | 1179 | m_LSL_Functions.llRemoveFromLandBanList(avatar); |
1136 | } | 1180 | } |
1137 | 1181 | ||
1138 | public LSL_Types.LSLInteger llOverMyLand(string id) | 1182 | public void llRemoveFromLandPassList(string avatar) |
1139 | { | 1183 | { |
1140 | return m_LSL_Functions.llOverMyLand(id); | 1184 | m_LSL_Functions.llRemoveFromLandPassList(avatar); |
1141 | } | 1185 | } |
1142 | 1186 | ||
1143 | public string llGetLandOwnerAt(vector pos) | 1187 | public void llRemoveInventory(string item) |
1144 | { | 1188 | { |
1145 | return m_LSL_Functions.llGetLandOwnerAt(pos); | 1189 | m_LSL_Functions.llRemoveInventory(item); |
1146 | } | 1190 | } |
1147 | 1191 | ||
1148 | public string llGetNotecardLine(string name, int line) | 1192 | public void llRemoveVehicleFlags(int flags) |
1149 | { | 1193 | { |
1150 | return m_LSL_Functions.llGetNotecardLine(name, line); | 1194 | m_LSL_Functions.llRemoveVehicleFlags(flags); |
1151 | } | 1195 | } |
1152 | 1196 | ||
1153 | public vector llGetAgentSize(string id) | 1197 | public LSL_Key llRequestAgentData(string id, int data) |
1154 | { | 1198 | { |
1155 | return m_LSL_Functions.llGetAgentSize(id); | 1199 | return m_LSL_Functions.llRequestAgentData(id, data); |
1156 | } | 1200 | } |
1157 | 1201 | ||
1158 | public LSL_Types.LSLInteger llSameGroup(string agent) | 1202 | public LSL_Key llRequestInventoryData(string name) |
1159 | { | 1203 | { |
1160 | return m_LSL_Functions.llSameGroup(agent); | 1204 | return m_LSL_Functions.llRequestInventoryData(name); |
1161 | } | 1205 | } |
1162 | 1206 | ||
1163 | public void llUnSit(string id) | 1207 | public void llRequestPermissions(string agent, int perm) |
1164 | { | 1208 | { |
1165 | m_LSL_Functions.llUnSit(id); | 1209 | m_LSL_Functions.llRequestPermissions(agent, perm); |
1166 | } | 1210 | } |
1167 | 1211 | ||
1168 | public vector llGroundSlope(vector offset) | 1212 | public LSL_Key llRequestSimulatorData(string simulator, int data) |
1169 | { | 1213 | { |
1170 | return m_LSL_Functions.llGroundSlope(offset); | 1214 | return m_LSL_Functions.llRequestSimulatorData(simulator, data); |
1171 | } | 1215 | } |
1172 | 1216 | ||
1173 | public vector llGroundNormal(vector offset) | 1217 | public void llResetLandBanList() |
1174 | { | 1218 | { |
1175 | return m_LSL_Functions.llGroundNormal(offset); | 1219 | m_LSL_Functions.llResetLandBanList(); |
1176 | } | 1220 | } |
1177 | 1221 | ||
1178 | public vector llGroundContour(vector offset) | 1222 | public void llResetLandPassList() |
1179 | { | 1223 | { |
1180 | return m_LSL_Functions.llGroundContour(offset); | 1224 | m_LSL_Functions.llResetLandPassList(); |
1181 | } | 1225 | } |
1182 | 1226 | ||
1183 | public LSL_Types.LSLInteger llGetAttached() | 1227 | public void llResetOtherScript(string name) |
1184 | { | 1228 | { |
1185 | return m_LSL_Functions.llGetAttached(); | 1229 | m_LSL_Functions.llResetOtherScript(name); |
1186 | } | 1230 | } |
1187 | 1231 | ||
1188 | public LSL_Types.LSLInteger llGetFreeMemory() | 1232 | public void llResetScript() |
1189 | { | 1233 | { |
1190 | return m_LSL_Functions.llGetFreeMemory(); | 1234 | m_LSL_Functions.llResetScript(); |
1191 | } | 1235 | } |
1192 | 1236 | ||
1193 | public string llGetRegionName() | 1237 | public void llResetTime() |
1194 | { | 1238 | { |
1195 | return m_LSL_Functions.llGetRegionName(); | 1239 | m_LSL_Functions.llResetTime(); |
1196 | } | 1240 | } |
1197 | 1241 | ||
1198 | public double llGetRegionTimeDilation() | 1242 | public void llRezAtRoot(string inventory, LSL_Vector position, LSL_Vector velocity, LSL_Rotation rot, int param) |
1199 | { | 1243 | { |
1200 | return m_LSL_Functions.llGetRegionTimeDilation(); | 1244 | m_LSL_Functions.llRezAtRoot(inventory, position, velocity, rot, param); |
1201 | } | 1245 | } |
1202 | 1246 | ||
1203 | public double llGetRegionFPS() | 1247 | public void llRezObject(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
1204 | { | 1248 | { |
1205 | return m_LSL_Functions.llGetRegionFPS(); | 1249 | m_LSL_Functions.llRezObject(inventory, pos, vel, rot, param); |
1206 | } | 1250 | } |
1207 | 1251 | ||
1208 | public void llParticleSystem(LSL_Types.list rules) | 1252 | public LSL_Float llRot2Angle(LSL_Rotation rot) |
1209 | { | 1253 | { |
1210 | m_LSL_Functions.llParticleSystem(rules); | 1254 | return m_LSL_Functions.llRot2Angle(rot); |
1211 | } | 1255 | } |
1212 | 1256 | ||
1213 | public void llGroundRepel(double height, int water, double tau) | 1257 | public LSL_Vector llRot2Axis(LSL_Rotation rot) |
1214 | { | 1258 | { |
1215 | m_LSL_Functions.llGroundRepel(height, water, tau); | 1259 | return m_LSL_Functions.llRot2Axis(rot); |
1216 | } | 1260 | } |
1217 | 1261 | ||
1218 | public void llGiveInventoryList(string destination, string category, LSL_Types.list inventory) | 1262 | public LSL_Vector llRot2Euler(LSL_Rotation r) |
1219 | { | 1263 | { |
1220 | m_LSL_Functions.llGiveInventoryList(destination, category, inventory); | 1264 | return m_LSL_Functions.llRot2Euler(r); |
1221 | } | 1265 | } |
1222 | 1266 | ||
1223 | public void llSetVehicleType(int type) | 1267 | public LSL_Vector llRot2Fwd(LSL_Rotation r) |
1224 | { | 1268 | { |
1225 | m_LSL_Functions.llSetVehicleType(type); | 1269 | return m_LSL_Functions.llRot2Fwd(r); |
1226 | } | 1270 | } |
1227 | 1271 | ||
1228 | public void llSetVehicledoubleParam(int param, double value) | 1272 | public LSL_Vector llRot2Left(LSL_Rotation r) |
1229 | { | 1273 | { |
1230 | m_LSL_Functions.llSetVehicledoubleParam(param, value); | 1274 | return m_LSL_Functions.llRot2Left(r); |
1231 | } | 1275 | } |
1232 | 1276 | ||
1233 | public void llSetVehicleFloatParam(int param, float value) | 1277 | public LSL_Vector llRot2Up(LSL_Rotation r) |
1234 | { | 1278 | { |
1235 | m_LSL_Functions.llSetVehicleFloatParam(param, value); | 1279 | return m_LSL_Functions.llRot2Up(r); |
1236 | } | 1280 | } |
1237 | 1281 | ||
1238 | public void llSetVehicleVectorParam(int param, vector vec) | 1282 | public void llRotateTexture(double rotation, int face) |
1239 | { | 1283 | { |
1240 | m_LSL_Functions.llSetVehicleVectorParam(param, vec); | 1284 | m_LSL_Functions.llRotateTexture(rotation, face); |
1241 | } | 1285 | } |
1242 | 1286 | ||
1243 | public void llSetVehicleRotationParam(int param, rotation rot) | 1287 | public LSL_Rotation llRotBetween(LSL_Vector start, LSL_Vector end) |
1244 | { | 1288 | { |
1245 | m_LSL_Functions.llSetVehicleRotationParam(param, rot); | 1289 | return m_LSL_Functions.llRotBetween(start, end); |
1246 | } | 1290 | } |
1247 | 1291 | ||
1248 | public void llSetVehicleFlags(int flags) | 1292 | public void llRotLookAt(LSL_Rotation target, double strength, double damping) |
1249 | { | 1293 | { |
1250 | m_LSL_Functions.llSetVehicleFlags(flags); | 1294 | m_LSL_Functions.llRotLookAt(target, strength, damping); |
1251 | } | 1295 | } |
1252 | 1296 | ||
1253 | public void llRemoveVehicleFlags(int flags) | 1297 | public LSL_Integer llRotTarget(LSL_Rotation rot, double error) |
1254 | { | 1298 | { |
1255 | m_LSL_Functions.llRemoveVehicleFlags(flags); | 1299 | return m_LSL_Functions.llRotTarget(rot, error); |
1256 | } | 1300 | } |
1257 | 1301 | ||
1258 | public void llSitTarget(vector offset, rotation rot) | 1302 | public void llRotTargetRemove(int number) |
1259 | { | 1303 | { |
1260 | m_LSL_Functions.llSitTarget(offset, rot); | 1304 | m_LSL_Functions.llRotTargetRemove(number); |
1261 | } | 1305 | } |
1262 | 1306 | ||
1263 | public string llAvatarOnSitTarget() | 1307 | public LSL_Integer llRound(double f) |
1264 | { | 1308 | { |
1265 | return m_LSL_Functions.llAvatarOnSitTarget(); | 1309 | return m_LSL_Functions.llRound(f); |
1266 | } | 1310 | } |
1267 | 1311 | ||
1268 | public void llAddToLandPassList(string avatar, double hours) | 1312 | public LSL_Integer llSameGroup(string agent) |
1269 | { | 1313 | { |
1270 | m_LSL_Functions.llAddToLandPassList(avatar, hours); | 1314 | return m_LSL_Functions.llSameGroup(agent); |
1271 | } | 1315 | } |
1272 | 1316 | ||
1273 | public void llSetTouchText(string text) | 1317 | public void llSay(int channelID, string text) |
1274 | { | 1318 | { |
1275 | m_LSL_Functions.llSetTouchText(text); | 1319 | m_LSL_Functions.llSay(channelID, text); |
1276 | } | 1320 | } |
1277 | 1321 | ||
1278 | public void llSetSitText(string text) | 1322 | public void llScaleTexture(double u, double v, int face) |
1279 | { | 1323 | { |
1280 | m_LSL_Functions.llSetSitText(text); | 1324 | m_LSL_Functions.llScaleTexture(u, v, face); |
1281 | } | 1325 | } |
1282 | 1326 | ||
1283 | public void llSetCameraEyeOffset(vector offset) | 1327 | public LSL_Integer llScriptDanger(LSL_Vector pos) |
1284 | { | 1328 | { |
1285 | m_LSL_Functions.llSetCameraEyeOffset(offset); | 1329 | return m_LSL_Functions.llScriptDanger(pos); |
1286 | } | 1330 | } |
1287 | 1331 | ||
1288 | public void llSetCameraAtOffset(vector offset) | 1332 | public LSL_Key llSendRemoteData(string channel, string dest, int idata, string sdata) |
1289 | { | 1333 | { |
1290 | m_LSL_Functions.llSetCameraAtOffset(offset); | 1334 | return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); |
1291 | } | 1335 | } |
1292 | 1336 | ||
1293 | public string llDumpList2String(LSL_Types.list src, string seperator) | 1337 | public void llSensor(string name, string id, int type, double range, double arc) |
1294 | { | 1338 | { |
1295 | return m_LSL_Functions.llDumpList2String(src, seperator); | 1339 | m_LSL_Functions.llSensor(name, id, type, range, arc); |
1296 | } | 1340 | } |
1297 | 1341 | ||
1298 | public LSL_Types.LSLInteger llScriptDanger(vector pos) | 1342 | public void llSensorRemove() |
1299 | { | 1343 | { |
1300 | return m_LSL_Functions.llScriptDanger(pos); | 1344 | m_LSL_Functions.llSensorRemove(); |
1301 | } | 1345 | } |
1302 | 1346 | ||
1303 | public void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel) | 1347 | public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate) |
1304 | { | 1348 | { |
1305 | m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel); | 1349 | m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate); |
1306 | } | 1350 | } |
1307 | 1351 | ||
1308 | public void llVolumeDetect(int detect) | 1352 | public void llSetAlpha(double alpha, int face) |
1309 | { | 1353 | { |
1310 | m_LSL_Functions.llVolumeDetect(detect); | 1354 | m_LSL_Functions.llSetAlpha(alpha, face); |
1311 | } | 1355 | } |
1312 | 1356 | ||
1313 | public void llResetOtherScript(string name) | 1357 | public void llSetBuoyancy(double buoyancy) |
1314 | { | 1358 | { |
1315 | m_LSL_Functions.llResetOtherScript(name); | 1359 | m_LSL_Functions.llSetBuoyancy(buoyancy); |
1316 | } | 1360 | } |
1317 | 1361 | ||
1318 | public LSL_Types.LSLInteger llGetScriptState(string name) | 1362 | public void llSetCameraAtOffset(LSL_Vector offset) |
1319 | { | 1363 | { |
1320 | return m_LSL_Functions.llGetScriptState(name); | 1364 | m_LSL_Functions.llSetCameraAtOffset(offset); |
1321 | } | 1365 | } |
1322 | 1366 | ||
1323 | public void llRemoteLoadScript() | 1367 | public void llSetCameraEyeOffset(LSL_Vector offset) |
1324 | { | 1368 | { |
1325 | m_LSL_Functions.llRemoteLoadScript(); | 1369 | m_LSL_Functions.llSetCameraEyeOffset(offset); |
1326 | } | 1370 | } |
1327 | 1371 | ||
1328 | public void llSetRemoteScriptAccessPin(int pin) | 1372 | public void llSetCameraParams(LSL_List rules) |
1329 | { | 1373 | { |
1330 | m_LSL_Functions.llSetRemoteScriptAccessPin(pin); | 1374 | m_LSL_Functions.llSetCameraParams(rules); |
1331 | } | 1375 | } |
1332 | 1376 | ||
1333 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) | 1377 | public void llSetClickAction(int action) |
1334 | { | 1378 | { |
1335 | m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); | 1379 | m_LSL_Functions.llSetClickAction(action); |
1336 | } | 1380 | } |
1337 | 1381 | ||
1338 | public void llOpenRemoteDataChannel() | 1382 | public void llSetColor(LSL_Vector color, int face) |
1339 | { | 1383 | { |
1340 | m_LSL_Functions.llOpenRemoteDataChannel(); | 1384 | m_LSL_Functions.llSetColor(color, face); |
1341 | } | 1385 | } |
1342 | 1386 | ||
1343 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) | 1387 | public void llSetDamage(double damage) |
1344 | { | 1388 | { |
1345 | return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); | 1389 | m_LSL_Functions.llSetDamage(damage); |
1346 | } | 1390 | } |
1347 | 1391 | ||
1348 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) | 1392 | public void llSetForce(LSL_Vector force, int local) |
1349 | { | 1393 | { |
1350 | m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); | 1394 | m_LSL_Functions.llSetForce(force, local); |
1351 | } | 1395 | } |
1352 | 1396 | ||
1353 | public void llCloseRemoteDataChannel(string channel) | 1397 | public void llSetForceAndTorque(LSL_Vector force, LSL_Vector torque, int local) |
1354 | { | 1398 | { |
1355 | m_LSL_Functions.llCloseRemoteDataChannel(channel); | 1399 | m_LSL_Functions.llSetForceAndTorque(force, torque, local); |
1356 | } | 1400 | } |
1357 | 1401 | ||
1358 | public string llMD5String(string src, int nonce) | 1402 | public void llSetHoverHeight(double height, int water, double tau) |
1359 | { | 1403 | { |
1360 | return m_LSL_Functions.llMD5String(src, nonce); | 1404 | m_LSL_Functions.llSetHoverHeight(height, water, tau); |
1361 | } | 1405 | } |
1362 | 1406 | ||
1363 | public void llSetPrimitiveParams(LSL_Types.list rules) | 1407 | public void llSetInventoryPermMask(string item, int mask, int value) |
1364 | { | 1408 | { |
1365 | m_LSL_Functions.llSetPrimitiveParams(rules); | 1409 | m_LSL_Functions.llSetInventoryPermMask(item, mask, value); |
1366 | } | 1410 | } |
1367 | 1411 | ||
1368 | public void llSetLinkPrimitiveParams(int linknumber, LSL_Types.list rules) | 1412 | public void llSetLinkAlpha(int linknumber, double alpha, int face) |
1369 | { | 1413 | { |
1370 | m_LSL_Functions.llSetLinkPrimitiveParams(linknumber, rules); | 1414 | m_LSL_Functions.llSetLinkAlpha(linknumber, alpha, face); |
1371 | } | 1415 | } |
1372 | public string llStringToBase64(string str) | 1416 | |
1417 | public void llSetLinkColor(int linknumber, LSL_Vector color, int face) | ||
1373 | { | 1418 | { |
1374 | return m_LSL_Functions.llStringToBase64(str); | 1419 | m_LSL_Functions.llSetLinkColor(linknumber, color, face); |
1375 | } | 1420 | } |
1376 | 1421 | ||
1377 | public string llBase64ToString(string str) | 1422 | public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules) |
1378 | { | 1423 | { |
1379 | return m_LSL_Functions.llBase64ToString(str); | 1424 | m_LSL_Functions.llSetLinkPrimitiveParams(linknumber, rules); |
1380 | } | 1425 | } |
1381 | 1426 | ||
1382 | public void llXorBase64Strings() | 1427 | public void llSetLinkTexture(int linknumber, string texture, int face) |
1383 | { | 1428 | { |
1384 | m_LSL_Functions.llXorBase64Strings(); | 1429 | m_LSL_Functions.llSetLinkTexture(linknumber, texture, face); |
1385 | } | 1430 | } |
1386 | 1431 | ||
1387 | public void llRemoteDataSetRegion() | 1432 | public void llSetLocalRot(LSL_Rotation rot) |
1388 | { | 1433 | { |
1389 | m_LSL_Functions.llRemoteDataSetRegion(); | 1434 | m_LSL_Functions.llSetLocalRot(rot); |
1390 | } | 1435 | } |
1391 | 1436 | ||
1392 | public double llLog10(double val) | 1437 | public void llSetObjectDesc(string desc) |
1393 | { | 1438 | { |
1394 | return m_LSL_Functions.llLog10(val); | 1439 | m_LSL_Functions.llSetObjectDesc(desc); |
1395 | } | 1440 | } |
1396 | 1441 | ||
1397 | public double llLog(double val) | 1442 | public void llSetObjectName(string name) |
1398 | { | 1443 | { |
1399 | return m_LSL_Functions.llLog(val); | 1444 | m_LSL_Functions.llSetObjectName(name); |
1400 | } | 1445 | } |
1401 | 1446 | ||
1402 | public LSL_Types.list llGetAnimationList(string id) | 1447 | public void llSetObjectPermMask(int mask, int value) |
1403 | { | 1448 | { |
1404 | return m_LSL_Functions.llGetAnimationList(id); | 1449 | m_LSL_Functions.llSetObjectPermMask(mask, value); |
1405 | } | 1450 | } |
1406 | 1451 | ||
1407 | public void llSetParcelMusicURL(string url) | 1452 | public void llSetParcelMusicURL(string url) |
@@ -1409,324 +1454,324 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
1409 | m_LSL_Functions.llSetParcelMusicURL(url); | 1454 | m_LSL_Functions.llSetParcelMusicURL(url); |
1410 | } | 1455 | } |
1411 | 1456 | ||
1412 | public vector llGetRootPosition() | 1457 | public void llSetPayPrice(int price, LSL_List quick_pay_buttons) |
1413 | { | 1458 | { |
1414 | return m_LSL_Functions.llGetRootPosition(); | 1459 | m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); |
1415 | } | 1460 | } |
1416 | 1461 | ||
1417 | public rotation llGetRootRotation() | 1462 | public void llSetPos(LSL_Vector pos) |
1418 | { | 1463 | { |
1419 | return m_LSL_Functions.llGetRootRotation(); | 1464 | m_LSL_Functions.llSetPos(pos); |
1420 | } | 1465 | } |
1421 | 1466 | ||
1422 | public string llGetObjectDesc() | 1467 | public void llSetPrimitiveParams(LSL_List rules) |
1423 | { | 1468 | { |
1424 | return m_LSL_Functions.llGetObjectDesc(); | 1469 | m_LSL_Functions.llSetPrimitiveParams(rules); |
1425 | } | 1470 | } |
1426 | 1471 | ||
1427 | public void llSetObjectDesc(string desc) | 1472 | public void llSetPrimURL() |
1428 | { | 1473 | { |
1429 | m_LSL_Functions.llSetObjectDesc(desc); | 1474 | m_LSL_Functions.llSetPrimURL(); |
1430 | } | 1475 | } |
1431 | 1476 | ||
1432 | public string llGetCreator() | 1477 | public void llSetRemoteScriptAccessPin(int pin) |
1433 | { | 1478 | { |
1434 | return m_LSL_Functions.llGetCreator(); | 1479 | m_LSL_Functions.llSetRemoteScriptAccessPin(pin); |
1435 | } | 1480 | } |
1436 | 1481 | ||
1437 | public string llGetTimestamp() | 1482 | public void llSetRot(LSL_Rotation rot) |
1438 | { | 1483 | { |
1439 | return m_LSL_Functions.llGetTimestamp(); | 1484 | m_LSL_Functions.llSetRot(rot); |
1440 | } | 1485 | } |
1441 | 1486 | ||
1442 | public void llSetLinkAlpha(int linknumber, double alpha, int face) | 1487 | public void llSetScale(LSL_Vector scale) |
1443 | { | 1488 | { |
1444 | m_LSL_Functions.llSetLinkAlpha(linknumber, alpha, face); | 1489 | m_LSL_Functions.llSetScale(scale); |
1445 | } | 1490 | } |
1446 | 1491 | ||
1447 | public LSL_Types.LSLInteger llGetNumberOfPrims() | 1492 | public void llSetScriptState(string name, int run) |
1448 | { | 1493 | { |
1449 | return m_LSL_Functions.llGetNumberOfPrims(); | 1494 | m_LSL_Functions.llSetScriptState(name, run); |
1450 | } | 1495 | } |
1451 | 1496 | ||
1452 | public string llGetNumberOfNotecardLines(string name) | 1497 | public void llSetSitText(string text) |
1453 | { | 1498 | { |
1454 | return m_LSL_Functions.llGetNumberOfNotecardLines(name); | 1499 | m_LSL_Functions.llSetSitText(text); |
1455 | } | 1500 | } |
1456 | 1501 | ||
1457 | public LSL_Types.list llGetBoundingBox(string obj) | 1502 | public void llSetSoundQueueing(int queue) |
1458 | { | 1503 | { |
1459 | return m_LSL_Functions.llGetBoundingBox(obj); | 1504 | m_LSL_Functions.llSetSoundQueueing(queue); |
1460 | } | 1505 | } |
1461 | 1506 | ||
1462 | public vector llGetGeometricCenter() | 1507 | public void llSetSoundRadius(double radius) |
1463 | { | 1508 | { |
1464 | return m_LSL_Functions.llGetGeometricCenter(); | 1509 | m_LSL_Functions.llSetSoundRadius(radius); |
1465 | } | 1510 | } |
1466 | 1511 | ||
1467 | public LSL_Types.list llGetPrimitiveParams(LSL_Types.list rules) | 1512 | public void llSetStatus(int status, int value) |
1468 | { | 1513 | { |
1469 | return m_LSL_Functions.llGetPrimitiveParams(rules); | 1514 | m_LSL_Functions.llSetStatus(status, value); |
1470 | } | 1515 | } |
1471 | 1516 | ||
1472 | public string llIntegerToBase64(int number) | 1517 | public void llSetText(string text, LSL_Vector color, double alpha) |
1473 | { | 1518 | { |
1474 | return m_LSL_Functions.llIntegerToBase64(number); | 1519 | m_LSL_Functions.llSetText(text, color, alpha); |
1475 | } | 1520 | } |
1476 | 1521 | ||
1477 | public LSL_Types.LSLInteger llBase64ToInteger(string str) | 1522 | public void llSetTexture(string texture, int face) |
1478 | { | 1523 | { |
1479 | return m_LSL_Functions.llBase64ToInteger(str); | 1524 | m_LSL_Functions.llSetTexture(texture, face); |
1480 | } | 1525 | } |
1481 | 1526 | ||
1482 | public double llGetGMTclock() | 1527 | public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate) |
1483 | { | 1528 | { |
1484 | return m_LSL_Functions.llGetGMTclock(); | 1529 | m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate); |
1485 | } | 1530 | } |
1486 | 1531 | ||
1487 | public string llGetSimulatorHostname() | 1532 | public void llSetTimerEvent(double sec) |
1488 | { | 1533 | { |
1489 | return m_LSL_Functions.llGetSimulatorHostname(); | 1534 | m_LSL_Functions.llSetTimerEvent(sec); |
1490 | } | 1535 | } |
1491 | 1536 | ||
1492 | public void llSetLocalRot(rotation rot) | 1537 | public void llSetTorque(LSL_Vector torque, int local) |
1493 | { | 1538 | { |
1494 | m_LSL_Functions.llSetLocalRot(rot); | 1539 | m_LSL_Functions.llSetTorque(torque, local); |
1495 | } | 1540 | } |
1496 | 1541 | ||
1497 | public LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list seperators, LSL_Types.list spacers) | 1542 | public void llSetTouchText(string text) |
1498 | { | 1543 | { |
1499 | return m_LSL_Functions.llParseStringKeepNulls(src, seperators, spacers); | 1544 | m_LSL_Functions.llSetTouchText(text); |
1500 | } | 1545 | } |
1501 | 1546 | ||
1502 | public void llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, int param) | 1547 | public void llSetVehicleFlags(int flags) |
1503 | { | 1548 | { |
1504 | m_LSL_Functions.llRezAtRoot(inventory, position, velocity, rot, param); | 1549 | m_LSL_Functions.llSetVehicleFlags(flags); |
1505 | } | 1550 | } |
1506 | 1551 | ||
1507 | public LSL_Types.LSLInteger llGetObjectPermMask(int mask) | 1552 | public void llSetVehicleFloatParam(int param, float value) |
1508 | { | 1553 | { |
1509 | return m_LSL_Functions.llGetObjectPermMask(mask); | 1554 | m_LSL_Functions.llSetVehicleFloatParam(param, value); |
1510 | } | 1555 | } |
1511 | 1556 | ||
1512 | public void llSetObjectPermMask(int mask, int value) | 1557 | public void llSetVehicleRotationParam(int param, LSL_Rotation rot) |
1513 | { | 1558 | { |
1514 | m_LSL_Functions.llSetObjectPermMask(mask, value); | 1559 | m_LSL_Functions.llSetVehicleRotationParam(param, rot); |
1515 | } | 1560 | } |
1516 | 1561 | ||
1517 | public LSL_Types.LSLInteger llGetInventoryPermMask(string item, int mask) | 1562 | public void llSetVehicleType(int type) |
1518 | { | 1563 | { |
1519 | return m_LSL_Functions.llGetInventoryPermMask(item, mask); | 1564 | m_LSL_Functions.llSetVehicleType(type); |
1520 | } | 1565 | } |
1521 | 1566 | ||
1522 | public void llSetInventoryPermMask(string item, int mask, int value) | 1567 | public void llSetVehicleVectorParam(int param, LSL_Vector vec) |
1523 | { | 1568 | { |
1524 | m_LSL_Functions.llSetInventoryPermMask(item, mask, value); | 1569 | m_LSL_Functions.llSetVehicleVectorParam(param, vec); |
1525 | } | 1570 | } |
1526 | 1571 | ||
1527 | public string llGetInventoryCreator(string item) | 1572 | public void llShout(int channelID, string text) |
1528 | { | 1573 | { |
1529 | return m_LSL_Functions.llGetInventoryCreator(item); | 1574 | m_LSL_Functions.llShout(channelID, text); |
1530 | } | 1575 | } |
1531 | 1576 | ||
1532 | public void llOwnerSay(string msg) | 1577 | public LSL_Float llSin(double f) |
1533 | { | 1578 | { |
1534 | m_LSL_Functions.llOwnerSay(msg); | 1579 | return m_LSL_Functions.llSin(f); |
1535 | } | 1580 | } |
1536 | 1581 | ||
1537 | public string llRequestSimulatorData(string simulator, int data) | 1582 | public void llSitTarget(LSL_Vector offset, LSL_Rotation rot) |
1538 | { | 1583 | { |
1539 | return m_LSL_Functions.llRequestSimulatorData(simulator, data); | 1584 | m_LSL_Functions.llSitTarget(offset, rot); |
1540 | } | 1585 | } |
1541 | 1586 | ||
1542 | public void llForceMouselook(int mouselook) | 1587 | public void llSleep(double sec) |
1543 | { | 1588 | { |
1544 | m_LSL_Functions.llForceMouselook(mouselook); | 1589 | m_LSL_Functions.llSleep(sec); |
1545 | } | 1590 | } |
1546 | 1591 | ||
1547 | public double llGetObjectMass(string id) | 1592 | public void llSound() |
1548 | { | 1593 | { |
1549 | return m_LSL_Functions.llGetObjectMass(id); | 1594 | m_LSL_Functions.llSound(); |
1550 | } | 1595 | } |
1551 | 1596 | ||
1552 | public LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end) | 1597 | public void llSoundPreload() |
1553 | { | 1598 | { |
1554 | return m_LSL_Functions.llListReplaceList(dest, src, start, end); | 1599 | m_LSL_Functions.llSoundPreload(); |
1555 | } | 1600 | } |
1556 | 1601 | ||
1557 | public void llLoadURL(string avatar_id, string message, string url) | 1602 | public LSL_Float llSqrt(double f) |
1558 | { | 1603 | { |
1559 | m_LSL_Functions.llLoadURL(avatar_id, message, url); | 1604 | return m_LSL_Functions.llSqrt(f); |
1560 | } | 1605 | } |
1561 | 1606 | ||
1562 | public void llParcelMediaCommandList(LSL_Types.list commandList) | 1607 | public void llStartAnimation(string anim) |
1563 | { | 1608 | { |
1564 | m_LSL_Functions.llParcelMediaCommandList(commandList); | 1609 | m_LSL_Functions.llStartAnimation(anim); |
1565 | } | 1610 | } |
1566 | 1611 | ||
1567 | public LSL_Types.list llParcelMediaQuery(LSL_Types.list aList) | 1612 | public void llStopAnimation(string anim) |
1568 | { | 1613 | { |
1569 | return m_LSL_Functions.llParcelMediaQuery(aList); | 1614 | m_LSL_Functions.llStopAnimation(anim); |
1570 | } | 1615 | } |
1571 | 1616 | ||
1572 | public LSL_Types.LSLInteger llModPow(int a, int b, int c) | 1617 | public void llStopHover() |
1573 | { | 1618 | { |
1574 | return m_LSL_Functions.llModPow(a, b, c); | 1619 | m_LSL_Functions.llStopHover(); |
1575 | } | 1620 | } |
1576 | 1621 | ||
1577 | public LSL_Types.LSLInteger llGetInventoryType(string name) | 1622 | public void llStopLookAt() |
1578 | { | 1623 | { |
1579 | return m_LSL_Functions.llGetInventoryType(name); | 1624 | m_LSL_Functions.llStopLookAt(); |
1580 | } | 1625 | } |
1581 | 1626 | ||
1582 | public void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons) | 1627 | public void llStopMoveToTarget() |
1583 | { | 1628 | { |
1584 | m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); | 1629 | m_LSL_Functions.llStopMoveToTarget(); |
1585 | } | 1630 | } |
1586 | 1631 | ||
1587 | public vector llGetCameraPos() | 1632 | public void llStopPointAt() |
1588 | { | 1633 | { |
1589 | return m_LSL_Functions.llGetCameraPos(); | 1634 | m_LSL_Functions.llStopPointAt(); |
1590 | } | 1635 | } |
1591 | 1636 | ||
1592 | public rotation llGetCameraRot() | 1637 | public void llStopSound() |
1593 | { | 1638 | { |
1594 | return m_LSL_Functions.llGetCameraRot(); | 1639 | m_LSL_Functions.llStopSound(); |
1595 | } | 1640 | } |
1596 | 1641 | ||
1597 | public void llSetPrimURL() | 1642 | public LSL_Integer llStringLength(string str) |
1598 | { | 1643 | { |
1599 | m_LSL_Functions.llSetPrimURL(); | 1644 | return m_LSL_Functions.llStringLength(str); |
1600 | } | 1645 | } |
1601 | 1646 | ||
1602 | public void llRefreshPrimURL() | 1647 | public LSL_String llStringToBase64(string str) |
1603 | { | 1648 | { |
1604 | m_LSL_Functions.llRefreshPrimURL(); | 1649 | return m_LSL_Functions.llStringToBase64(str); |
1605 | } | 1650 | } |
1606 | 1651 | ||
1607 | public string llEscapeURL(string url) | 1652 | public LSL_String llStringTrim(string src, int type) |
1608 | { | 1653 | { |
1609 | return m_LSL_Functions.llEscapeURL(url); | 1654 | return m_LSL_Functions.llStringTrim(src, type); |
1610 | } | 1655 | } |
1611 | 1656 | ||
1612 | public string llUnescapeURL(string url) | 1657 | public LSL_Integer llSubStringIndex(string source, string pattern) |
1613 | { | 1658 | { |
1614 | return m_LSL_Functions.llUnescapeURL(url); | 1659 | return m_LSL_Functions.llSubStringIndex(source, pattern); |
1615 | } | 1660 | } |
1616 | 1661 | ||
1617 | public void llMapDestination(string simname, vector pos, vector look_at) | 1662 | public void llTakeCamera(string avatar) |
1618 | { | 1663 | { |
1619 | m_LSL_Functions.llMapDestination(simname, pos, look_at); | 1664 | m_LSL_Functions.llTakeCamera(avatar); |
1620 | } | 1665 | } |
1621 | 1666 | ||
1622 | public void llAddToLandBanList(string avatar, double hours) | 1667 | public void llTakeControls(int controls, int accept, int pass_on) |
1623 | { | 1668 | { |
1624 | m_LSL_Functions.llAddToLandBanList(avatar, hours); | 1669 | m_LSL_Functions.llTakeControls(controls, accept, pass_on); |
1625 | } | 1670 | } |
1626 | 1671 | ||
1627 | public void llRemoveFromLandPassList(string avatar) | 1672 | public LSL_Float llTan(double f) |
1628 | { | 1673 | { |
1629 | m_LSL_Functions.llRemoveFromLandPassList(avatar); | 1674 | return m_LSL_Functions.llTan(f); |
1630 | } | 1675 | } |
1631 | 1676 | ||
1632 | public void llRemoveFromLandBanList(string avatar) | 1677 | public LSL_Integer llTarget(LSL_Vector position, double range) |
1633 | { | 1678 | { |
1634 | m_LSL_Functions.llRemoveFromLandBanList(avatar); | 1679 | return m_LSL_Functions.llTarget(position, range); |
1635 | } | 1680 | } |
1636 | 1681 | ||
1637 | public void llSetCameraParams(LSL_Types.list rules) | 1682 | public void llTargetOmega(LSL_Vector axis, double spinrate, double gain) |
1638 | { | 1683 | { |
1639 | m_LSL_Functions.llSetCameraParams(rules); | 1684 | m_LSL_Functions.llTargetOmega(axis, spinrate, gain); |
1640 | } | 1685 | } |
1641 | 1686 | ||
1642 | public void llClearCameraParams() | 1687 | public void llTargetRemove(int number) |
1643 | { | 1688 | { |
1644 | m_LSL_Functions.llClearCameraParams(); | 1689 | m_LSL_Functions.llTargetRemove(number); |
1645 | } | 1690 | } |
1646 | 1691 | ||
1647 | public double llListStatistics(int operation, LSL_Types.list src) | 1692 | public void llTeleportAgentHome(string agent) |
1648 | { | 1693 | { |
1649 | return m_LSL_Functions.llListStatistics(operation, src); | 1694 | m_LSL_Functions.llTeleportAgentHome(agent); |
1650 | } | 1695 | } |
1651 | 1696 | ||
1652 | public LSL_Types.LSLInteger llGetUnixTime() | 1697 | public void llTextBox(string avatar, string message, int chat_channel) |
1653 | { | 1698 | { |
1654 | return m_LSL_Functions.llGetUnixTime(); | 1699 | m_LSL_Functions.llTextBox(avatar, message, chat_channel); |
1655 | } | 1700 | } |
1656 | 1701 | ||
1657 | public LSL_Types.LSLInteger llGetParcelFlags(vector pos) | 1702 | public LSL_String llToLower(string source) |
1658 | { | 1703 | { |
1659 | return m_LSL_Functions.llGetParcelFlags(pos); | 1704 | return m_LSL_Functions.llToLower(source); |
1660 | } | 1705 | } |
1661 | 1706 | ||
1662 | public LSL_Types.LSLInteger llGetRegionFlags() | 1707 | public LSL_String llToUpper(string source) |
1663 | { | 1708 | { |
1664 | return m_LSL_Functions.llGetRegionFlags(); | 1709 | return m_LSL_Functions.llToUpper(source); |
1665 | } | 1710 | } |
1666 | 1711 | ||
1667 | public string llXorBase64StringsCorrect(string str1, string str2) | 1712 | public void llTriggerSound(string sound, double volume) |
1668 | { | 1713 | { |
1669 | return m_LSL_Functions.llXorBase64StringsCorrect(str1, str2); | 1714 | m_LSL_Functions.llTriggerSound(sound, volume); |
1670 | } | 1715 | } |
1671 | 1716 | ||
1672 | public string llHTTPRequest(string url, LSL_Types.list parameters, string body) | 1717 | public void llTriggerSoundLimited(string sound, double volume, LSL_Vector top_north_east, LSL_Vector bottom_south_west) |
1673 | { | 1718 | { |
1674 | return m_LSL_Functions.llHTTPRequest(url, parameters, body); | 1719 | m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west); |
1675 | } | 1720 | } |
1676 | 1721 | ||
1677 | public void llResetLandBanList() | 1722 | public LSL_String llUnescapeURL(string url) |
1678 | { | 1723 | { |
1679 | m_LSL_Functions.llResetLandBanList(); | 1724 | return m_LSL_Functions.llUnescapeURL(url); |
1680 | } | 1725 | } |
1681 | 1726 | ||
1682 | public void llResetLandPassList() | 1727 | public void llUnSit(string id) |
1683 | { | 1728 | { |
1684 | m_LSL_Functions.llResetLandPassList(); | 1729 | m_LSL_Functions.llUnSit(id); |
1685 | } | 1730 | } |
1686 | 1731 | ||
1687 | public LSL_Types.LSLInteger llGetParcelPrimCount(vector pos, int category, int sim_wide) | 1732 | public LSL_Float llVecDist(LSL_Vector a, LSL_Vector b) |
1688 | { | 1733 | { |
1689 | return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); | 1734 | return m_LSL_Functions.llVecDist(a, b); |
1690 | } | 1735 | } |
1691 | 1736 | ||
1692 | public LSL_Types.list llGetParcelPrimOwners(vector pos) | 1737 | public LSL_Float llVecMag(LSL_Vector v) |
1693 | { | 1738 | { |
1694 | return m_LSL_Functions.llGetParcelPrimOwners(pos); | 1739 | return m_LSL_Functions.llVecMag(v); |
1695 | } | 1740 | } |
1696 | 1741 | ||
1697 | public LSL_Types.LSLInteger llGetObjectPrimCount(string object_id) | 1742 | public LSL_Vector llVecNorm(LSL_Vector v) |
1698 | { | 1743 | { |
1699 | return m_LSL_Functions.llGetObjectPrimCount(object_id); | 1744 | return m_LSL_Functions.llVecNorm(v); |
1700 | } | 1745 | } |
1701 | 1746 | ||
1702 | public LSL_Types.LSLInteger llGetParcelMaxPrims(vector pos, int sim_wide) | 1747 | public void llVolumeDetect(int detect) |
1703 | { | 1748 | { |
1704 | return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); | 1749 | m_LSL_Functions.llVolumeDetect(detect); |
1705 | } | 1750 | } |
1706 | 1751 | ||
1707 | public LSL_Types.list llGetParcelDetails(vector pos, LSL_Types.list param) | 1752 | public LSL_Float llWater(LSL_Vector offset) |
1708 | { | 1753 | { |
1709 | return m_LSL_Functions.llGetParcelDetails(pos, param); | 1754 | return m_LSL_Functions.llWater(offset); |
1710 | } | 1755 | } |
1711 | 1756 | ||
1712 | public void llSetLinkTexture(int linknumber, string texture, int face) | 1757 | public void llWhisper(int channelID, string text) |
1713 | { | 1758 | { |
1714 | m_LSL_Functions.llSetLinkTexture(linknumber, texture, face); | 1759 | m_LSL_Functions.llWhisper(channelID, text); |
1715 | } | 1760 | } |
1716 | 1761 | ||
1717 | public string llStringTrim(string src, int type) | 1762 | public LSL_Vector llWind(LSL_Vector offset) |
1718 | { | 1763 | { |
1719 | return m_LSL_Functions.llStringTrim(src, type); | 1764 | return m_LSL_Functions.llWind(offset); |
1720 | } | 1765 | } |
1721 | 1766 | ||
1722 | public LSL_Types.list llGetObjectDetails(string id, LSL_Types.list args) | 1767 | public void llXorBase64Strings() |
1723 | { | 1768 | { |
1724 | return m_LSL_Functions.llGetObjectDetails(id, args); | 1769 | m_LSL_Functions.llXorBase64Strings(); |
1725 | } | 1770 | } |
1726 | 1771 | ||
1727 | public double llList2Float(LSL_Types.list src, int index) | 1772 | public LSL_String llXorBase64StringsCorrect(string str1, string str2) |
1728 | { | 1773 | { |
1729 | return m_LSL_Functions.llList2Float(src, index); | 1774 | return m_LSL_Functions.llXorBase64StringsCorrect(str1, str2); |
1730 | } | 1775 | } |
1731 | } | 1776 | } |
1732 | } | 1777 | } |
diff --git a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs index b8d72e0..5f64743 100644 --- a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs +++ b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs | |||
@@ -1238,12 +1238,12 @@ namespace OpenSim.Region.ScriptEngine.Shared | |||
1238 | 1238 | ||
1239 | static public implicit operator String(key k) | 1239 | static public implicit operator String(key k) |
1240 | { | 1240 | { |
1241 | return k.value; | 1241 | return k.value; |
1242 | } | 1242 | } |
1243 | 1243 | ||
1244 | static public implicit operator LSLString(key k) | 1244 | static public implicit operator LSLString(key k) |
1245 | { | 1245 | { |
1246 | return k.value; | 1246 | return k.value; |
1247 | } | 1247 | } |
1248 | 1248 | ||
1249 | public static bool operator ==(key k1, key k2) | 1249 | public static bool operator ==(key k1, key k2) |
@@ -1449,11 +1449,13 @@ namespace OpenSim.Region.ScriptEngine.Shared | |||
1449 | try | 1449 | try |
1450 | { | 1450 | { |
1451 | if (v.Contains("x") || v.Contains("X")) | 1451 | if (v.Contains("x") || v.Contains("X")) |
1452 | value = int.Parse(v.Substring(2), | 1452 | { |
1453 | System.Globalization.NumberStyles.HexNumber); | 1453 | value = int.Parse(v.Substring(2), System.Globalization.NumberStyles.HexNumber); |
1454 | } | ||
1454 | else | 1455 | else |
1455 | value = int.Parse(v, | 1456 | { |
1456 | System.Globalization.NumberStyles.Integer); | 1457 | value = int.Parse(v, System.Globalization.NumberStyles.Integer); |
1458 | } | ||
1457 | } | 1459 | } |
1458 | catch (OverflowException) | 1460 | catch (OverflowException) |
1459 | { | 1461 | { |
@@ -1669,12 +1671,12 @@ namespace OpenSim.Region.ScriptEngine.Shared | |||
1669 | 1671 | ||
1670 | static public explicit operator float(LSLFloat f) | 1672 | static public explicit operator float(LSLFloat f) |
1671 | { | 1673 | { |
1672 | return (float)f.value; | 1674 | return (float)f.value; |
1673 | } | 1675 | } |
1674 | 1676 | ||
1675 | static public explicit operator int(LSLFloat f) | 1677 | static public explicit operator int(LSLFloat f) |
1676 | { | 1678 | { |
1677 | return (int)f.value; | 1679 | return (int)f.value; |
1678 | } | 1680 | } |
1679 | 1681 | ||
1680 | static public explicit operator uint(LSLFloat f) | 1682 | static public explicit operator uint(LSLFloat f) |