Skip to content
lsl.devlsl.devLSL Dev

llSetScale

function
Function syntax
llSetScale(
  1. vector size// Target size vector.
);
Energy
10

Sets the size of the prim according to size

The components of size (x, y & z) each need to be in the range [0.01, 64.0], if they are out of the range they are rounded to the nearest endpoint.

How to use
llSetScale(ZERO_VECTOR);
  • This function only changes the size of the prim that the script is in. Not the entire object.
  • If the prim is part of a link set, rescaling will fail if the new size is too large or small to satisfy the linkability rules.
  • Does not work on physical prims.
Example 1
7 collapsed lines
//A basic door that opens and closes when an avatar collides with it.
//Not very effective, as it would be better to use llSetStatus(STATUS_PHANTOM, 1)...
//But, it works.
vector startingSize;
default {
state_entry() {
startingSize = llGetScale();
}
collision_start(integer i) {
llSetScale(<0.1, 0.1, 0.1>); //Shrink
llSetPos(llGetPos() + <0.0,0.0,10.0>); //Hide us
llSetTimerEvent(3.0);
}
timer() {
llSetTimerEvent(0.0);
llSetScale(startingSize); //Go back to normal size
llSetPos(llGetPos() - <0.0,0.0,10.0>); //And where we started
}
} //Code by Xaviar Czervik.

Curtain/Door script

For a flexible curtain or door script using llSetScale(), see http://wiki.secondlife.com/wiki/Curtain_script

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 LlSetScale, by Linden Research, Inc. and contributing residents.View contributors and history.

Imported wiki revision:

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.