Grab a Primitive

31 July 2019

  • C10 - added the selection optional parameter.

28 July 2018

  • C10 - the command takes an additional parameter action that can be set to start or stop. The command now makes all other parameters optional - will be set to zero defaults.
grab (Commands)
TypeCorrade progressive command
Commandgrab
DescriptionCorrade can be made to grab a primitive in a given range touching the object using precise parameter.
Permissionsinteract
Parametersgroup, password, item, texture, surface, normal, binormal, position, face, action
Last ChangesC10 - the command takes an additional parameter action that can be set to start or stop. The command now makes all other parameters optional - will be set to zero defaults.

Corrade can be made to grab a primitive in a given range touching the object using precise parameter. Note that Corrade does not mind whether the primitive is in a link-set or an attachment. It will touch any primitive regardless of where it is.

Command Required Parameters Required Corrade Permissions Example
grab group, password, item, action interact
llInstantMessage(CORRADE,
    wasKeyValueEncode(
        [
            "command", "grab",
            "group", wasURLEscape(GROUP),
            "password", wasURLEscape(PASSWORD),
            // a primitive name or uuid
            "item", "helmet",
            // start grabbing the primitive
            "action", "start",
            // 5 meters
            "range", "5",
            "texture", wasURLEscape("<0.5, 0.2, 0.6>"),
            "surface", wasURLEscape("<0.1, 0.2, 0.5>"),
            "normal", wasURLEscape("<0.7, 0.3, 0.1>"),
            "binormal", wasURLEscape("<0.2, 0.1, 0.1>"),
            "position", wasURLEscape("<53, 154, 2689>"),
            // touch the second face
            "face", "2"
        ]
    )
);

item can be the name of an object or the UUID of an object.

Parameter Possible Value Description
item the name of an object or the UUID of an object The item to grab.
action start Start grabbing the primitive.
stop Stop grabbing the primitive.
update Update the grab action (drag).
Optional Parameter Possible Value Description
range A range in meters. The spherical distance from Corrade in which to locate the item.
texture An LSL Vector3 The texture coordinates to touch.
surface An LSL Vector3 The surface coordinates to touch.
face An integer The index of the face to touch.
position An LSL Vector3 The region coordinates of the position to touch.
normal An LSL Vector3 The surface normal of the position to touch.
binormal An LSL Vector3 The surface binomial of the position to touch.
selection attached, rezzed or all (default: all) Either attached, rezzed or all for selecting only primitives or objects attached to avatars, primitives or objects rezzed in-world or all primitives or objects respectively.

Notes

  • Contrary to the click command, the grab command will click and hold on a primitive. To cancel the operation, one will have to send another followup grab command with action set to stop.
  • If you would like to just touch a primitive then please refer to the touch command.
  • If you would like to touch a primitive precisely then please refer to the click command.

secondlife/scripted_agents/corrade/api/commands/grab.txt ยท Last modified: 2021/05/13 10:01 (external edit)

Access website using Tor Access website using i2p Wizardry and Steamworks PGP Key


For the copyright, license, warranty and privacy terms for the usage of this website please see the license, privacy, copyright and the plagiarism pages.