Files
LSL-Scripts/Path Cut Door/Path Cut door/Door/Script.lsl
Fred Beckhusen a1622a08da Patch Cut Door
2021-03-13 20:32:52 -06:00

69 lines
1.4 KiB
Plaintext

// :CATEGORY:Door
// :NAME:Path Cut Door
// :AUTHOR:Fred Beckhusen (Ferd Frederix)
// :KEYWORDS:
// :CREATED:2014-04-19 15:57:26
// :EDITED:2014-04-19
// :ID:1035
// :NUM:1611
// :REV:1
// :WORLD:Second Life
// :DESCRIPTION:
// A round door made by a path cut
// :CODE:
vector cut = < 0, 0.25 , 0 >;
float step = .015;
integer cycles ;
integer direction = -1;
Open ()
{
cycles = 50;
while (cycles--) {
cut.x += step;
llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_CYLINDER, PRIM_HOLE_DEFAULT, //hole_shape
cut, // cut
0.95, // hollow
< 0.0, 0.0, 0.0 >, // twist
< 1.0, 1.0, 0.0 >, // top_size
< 0.0, 0.0, 0.0 >]);
llSay(0,(string) cut);
};
// step *= -1;
}
Close()
{
cycles = 50;
while (cycles--) {
cut.x -= step;
llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_CYLINDER, PRIM_HOLE_DEFAULT, //hole_shape
cut, // cut
0.95, // hollow
< 0.0, 0.0, 0.0 >, // twist
< 1.0, 1.0, 0.0 >, // top_size
< 0.0, 0.0, 0.0 >]);
llSay(0,(string) cut);
};
// step *= -1;
}
default {
touch_start(integer total_number) {
if (direction = ! direction )
{
Open();
} else {
Close();
}
}
}