aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs75
1 files changed, 75 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index ea4e609..2bdf38b 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -10567,6 +10567,35 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10567 case ScriptBaseClass.OBJECT_PHYSICS_COST: 10567 case ScriptBaseClass.OBJECT_PHYSICS_COST:
10568 ret.Add(new LSL_Float(0)); 10568 ret.Add(new LSL_Float(0));
10569 break; 10569 break;
10570 case ScriptBaseClass.OBJECT_CHARACTER_TIME: // Pathfinding
10571 ret.Add(new LSL_Float(0));
10572 break;
10573 case ScriptBaseClass.OBJECT_ROOT:
10574 SceneObjectPart p = av.ParentPart;
10575 if (p != null)
10576 {
10577 ret.Add(new LSL_String(p.ParentGroup.RootPart.UUID.ToString()));
10578 }
10579 else
10580 {
10581 ret.Add(new LSL_String(id));
10582 }
10583 break;
10584 case ScriptBaseClass.OBJECT_ATTACHED_POINT:
10585 ret.Add(new LSL_Integer(0));
10586 break;
10587 case ScriptBaseClass.OBJECT_PATHFINDING_TYPE: // Pathfinding
10588 ret.Add(new LSL_Integer(ScriptBaseClass.OPT_AVATAR));
10589 break;
10590 case ScriptBaseClass.OBJECT_PHYSICS:
10591 ret.Add(new LSL_Integer(0));
10592 break;
10593 case ScriptBaseClass.OBJECT_PHANTOM:
10594 ret.Add(new LSL_Integer(0));
10595 break;
10596 case ScriptBaseClass.OBJECT_TEMP_ON_REZ:
10597 ret.Add(new LSL_Integer(0));
10598 break;
10570 default: 10599 default:
10571 // Invalid or unhandled constant. 10600 // Invalid or unhandled constant.
10572 ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL)); 10601 ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL));
@@ -10662,6 +10691,52 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10662 // The value returned in SL for normal prims looks like the prim count 10691 // The value returned in SL for normal prims looks like the prim count
10663 ret.Add(new LSL_Float(0)); 10692 ret.Add(new LSL_Float(0));
10664 break; 10693 break;
10694 case ScriptBaseClass.OBJECT_CHARACTER_TIME: // Pathfinding
10695 ret.Add(new LSL_Float(0));
10696 break;
10697 case ScriptBaseClass.OBJECT_ROOT:
10698 ret.Add(new LSL_String(obj.ParentGroup.RootPart.UUID.ToString()));
10699 break;
10700 case ScriptBaseClass.OBJECT_ATTACHED_POINT:
10701 ret.Add(new LSL_Integer(obj.ParentGroup.AttachmentPoint));
10702 break;
10703 case ScriptBaseClass.OBJECT_PATHFINDING_TYPE:
10704 byte pcode = obj.Shape.PCode;
10705 if (obj.ParentGroup.AttachmentPoint != 0
10706 || pcode == (byte)PCode.Grass
10707 || pcode == (byte)PCode.Tree
10708 || pcode == (byte)PCode.NewTree)
10709 {
10710 ret.Add(new LSL_Integer(ScriptBaseClass.OPT_OTHER));
10711 }
10712 else
10713 {
10714 ret.Add(new LSL_Integer(ScriptBaseClass.OPT_LEGACY_LINKSET));
10715 }
10716 break;
10717 case ScriptBaseClass.OBJECT_PHYSICS:
10718 if (obj.ParentGroup.AttachmentPoint != 0)
10719 {
10720 ret.Add(new LSL_Integer(0)); // Always false if attached
10721 }
10722 else
10723 {
10724 ret.Add(new LSL_Integer(obj.ParentGroup.UsesPhysics ? 1 : 0));
10725 }
10726 break;
10727 case ScriptBaseClass.OBJECT_PHANTOM:
10728 if (obj.ParentGroup.AttachmentPoint != 0)
10729 {
10730 ret.Add(new LSL_Integer(0)); // Always false if attached
10731 }
10732 else
10733 {
10734 ret.Add(new LSL_Integer(obj.ParentGroup.IsPhantom ? 1 : 0));
10735 }
10736 break;
10737 case ScriptBaseClass.OBJECT_TEMP_ON_REZ:
10738 ret.Add(new LSL_Integer(obj.ParentGroup.IsTemporary ? 1 : 0));
10739 break;
10665 default: 10740 default:
10666 // Invalid or unhandled constant. 10741 // Invalid or unhandled constant.
10667 ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL)); 10742 ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL));