From Second Life Wiki
Jump to: navigation, search


Function: llSetScale( vector size );

Sets the size of the prim according to size

• vector size

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


  • 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.
All Issues ~ Search JIRA for related Bugs


//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
     timer() {
          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 [[1]]

See Also


•  llGetScale Gets the prims size
•  llScaleByFactor Uniformly rescale a linkset
•  llSetPrimitiveParams Sets prims attributes
•  llGetPrimitiveParams Gets prims attributes

Deep Notes

Search JIRA for related Issues


  1. ^ The ranges in this article are written in Interval Notation.


function void llSetScale( vector size );