Difference between revisions of "LlSetScale"

From Second Life Wiki
Jump to navigation Jump to search
m (Set floats to proper config)
Line 21: Line 21:
     }
     }
     collision_start(integer i) {
     collision_start(integer i) {
           llSetScale(<.1, .1, .1>); //Shrink
           llSetScale(<0.1, 0.1, 0.1>); //Shrink
           llSetPos(llGetPos() + <0,0,10>); //Hide us
           llSetPos(llGetPos() + <0.0,0.0,10.0>); //Hide us
           llSetTimerEvent(3);
           llSetTimerEvent(3.0);
     }
     }
     timer() {
     timer() {
           llSetTimerEvent(0);
           llSetTimerEvent(0.0);
           llSetScale(startingSize); //Go back to normal size
           llSetScale(startingSize); //Go back to normal size
           llSetPos(llGetPos() - <0,0,10>); //And where we started
           llSetPos(llGetPos() - <0.0,0.0,10.0>); //And where we started
     }
     }
} //Code by Xaviar Czervik.
} //Code by Xaviar Czervik.

Revision as of 17:53, 17 June 2009

Summary

Function: llSetScale( vector scale );
0.0 Forced Delay
10.0 Energy

Sets the scale of the prim according to scale

• vector scale

x, y & z components of scale need to be in the range [0.01, 10.0], if they are out of the range they are rounded to the nearest endpoint.

Caveats

  • This function only changes the scale of the prim that the script is in. Not the entire object.
  • Does not work in a physical prim.

Examples

<lsl> //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.

</lsl>

See Also

Functions

•  llGetScale Gets the prims size
•  llSetPrimitiveParams Sets prims attributes
•  llGetPrimitiveParams Gets prims attributes

Deep Notes

Signature

function void llSetScale( vector scale );