Skip to content
lsl.devlsl.devLSL Dev

moving_start

event
Event syntax
moving_start() { … }

Triggered whenever the physical or moving object containing the script starts moving.

Triggered when task begins moving

How to use
moving_start()
{
}
  • The moving_start and moving_end events require special handling when scripting attachments.

  • After adding or editing a script you must:

  • Take off the attachment and then wear the attachment again.

  • This event is also triggered when an object is rezzed (unless, presumably, you happen to rez it in precisely the same spot it was before.)

  • This event’s behavior is undefined for non-physical movement (llSetPos, movement via build tool, etc.)

  • This event is triggered when an object initiates a new keyframed motion, or when motion is resumed via KFM_CMD_PLAY

Example 1
32 collapsed lines
//Physical Prim Movement Script
//By Nika Rugani
//With spam work around
vector pos;
float move_time = 5; //Move every 5 seconds
float increment = 5;
float power = 0.5; //The TAU
integer trigger_multiple = FALSE; // This bad boy will prevent spam of moving start event
integer trigger_slave = 1;
setPhysical(integer status_physics)
{
llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_PHYSICS, status_physics]);
}
default
{
touch_start(integer num_detected)
{
if(llGetStatus(STATUS_PHYSICS) == FALSE)
{
pos = llGetPos(); //Set the objects default position
setPhysical(TRUE);
llSetTimerEvent(move_time);
}
else
{
setPhysical(FALSE);
llSetPos(pos);
}
}
moving_start()
{
if(trigger_slave == 0)
{
llOwnerSay("YEY!! I'm Moving!");
if(trigger_multiple == FALSE)
{
trigger_slave = 1;
}
}
}
moving_end()
{
16 collapsed lines
llSetTimerEvent(move_time);
}
timer()
{
llSetTimerEvent(0);
if(llVecDist(pos, llGetPos()) > (increment-2))
{
llMoveToTarget(pos, power);
}
else
{
llMoveToTarget(pos+<0.0,0.0,increment>, power);
}
trigger_slave = 0;
}
}

From the issue templates included by the wiki article:

  • SVC-1004 (bug): Behavior of moving_start() and moving_end() is inconsistent.
Original wiki source

Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.

From the Second Life Wiki

Community documentation adapted from Moving start, by Linden Research, Inc. and contributing residents.View contributors and history.

Built from these wiki pages, as imported:

Licensed under CC BY-SA 3.0. Last wiki edit: .Formatting and links have been adapted for this site; API metadata follows the LSL definitions.