The implementation of new flags = paramters for llGetObjectDetails - Part I Constant: integer OBJECT_CLICK_ACTION = 28; Constant: integer OBJECT_OMEGA = 29; Constant: integer OBJECT_PRIM_COUNT = 30;

Signed-off-by: Mandarinka Tasty <mandarinka.tasty@gmail.com>
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
melanie
Mandarinka Tasty 2016-11-27 22:50:11 +01:00 committed by UbitUmarov
parent 1aa4dbdb3f
commit af3f2717fd
2 changed files with 26 additions and 0 deletions

View File

@ -13758,6 +13758,20 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
case ScriptBaseClass.OBJECT_LAST_OWNER_ID: case ScriptBaseClass.OBJECT_LAST_OWNER_ID:
ret.Add(new LSL_Key(ScriptBaseClass.NULL_KEY)); ret.Add(new LSL_Key(ScriptBaseClass.NULL_KEY));
break; break;
case ScriptBaseClass.OBJECT_CLICK_ACTION:
ret.Add(new LSL_Integer(0));
break;
case ScriptBaseClass.OBJECT_OMEGA:
ret.Add(new LSL_Vector(Vector3.Zero));
break;
case ScriptBaseClass.OBJECT_PRIM_COUNT:
LSL_List AttachmentsPrimList = new LSL_List();
List<SceneObjectGroup> Attachments;
Attachments = av.GetAttachments();
foreach (SceneObjectGroup Attachment in Attachments)
AttachmentsPrimList.Add(new LSL_Integer(Attachment.PrimCount));
ret.Add(new LSL_Integer(AttachmentsPrimList.Sum()));
break;
default: default:
// Invalid or unhandled constant. // Invalid or unhandled constant.
ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL)); ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL));
@ -13930,6 +13944,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
case ScriptBaseClass.OBJECT_LAST_OWNER_ID: case ScriptBaseClass.OBJECT_LAST_OWNER_ID:
ret.Add(new LSL_Key(obj.ParentGroup.LastOwnerID.ToString())); ret.Add(new LSL_Key(obj.ParentGroup.LastOwnerID.ToString()));
break; break;
case ScriptBaseClass.OBJECT_CLICK_ACTION:
ret.Add(new LSL_Integer(obj.ClickAction));
break;
case ScriptBaseClass.OBJECT_OMEGA:
ret.Add(new LSL_Vector(obj.AngularVelocity));
break;
case ScriptBaseClass.OBJECT_PRIM_COUNT:
ret.Add(new LSL_Integer(obj.ParentGroup.PrimCount));
break;
default: default:
// Invalid or unhandled constant. // Invalid or unhandled constant.
ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL)); ret.Add(new LSL_Integer(ScriptBaseClass.OBJECT_UNKNOWN_DETAIL));

View File

@ -636,6 +636,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
public const int OBJECT_HOVER_HEIGHT = 25; public const int OBJECT_HOVER_HEIGHT = 25;
public const int OBJECT_BODY_SHAPE_TYPE = 26; public const int OBJECT_BODY_SHAPE_TYPE = 26;
public const int OBJECT_LAST_OWNER_ID = 27; public const int OBJECT_LAST_OWNER_ID = 27;
public const int OBJECT_CLICK_ACTION = 28;
public const int OBJECT_OMEGA = 29;
public const int OBJECT_PRIM_COUNT = 30;
// Pathfinding types // Pathfinding types
public const int OPT_OTHER = -1; public const int OPT_OTHER = -1;