Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // This script will enable/disable mirrors based on
- // avatar proximity. It's licensed under the public
- // domain, but it must remain open source, so everyone
- // can freely use and change it as they need.
- // ~ Toy Wylie - 2024-06-18 - V1.0
- float DISTANCE=10.0;
- float INTERVAL=2.0;
- integer DYNAMIC=TRUE;
- integer mirrorEnabled=TRUE;
- enableMirror(integer yes)
- {
- mirrorEnabled=yes;
- llSetLinkPrimitiveParamsFast(LINK_THIS,
- [
- PRIM_REFLECTION_PROBE,
- FALSE,
- 0.0,
- 0.0,
- 0
- ]);
- llSleep(1.0);
- integer probeFlags=PRIM_REFLECTION_PROBE_BOX;
- if(mirrorEnabled)
- {
- probeFlags=
- PRIM_REFLECTION_PROBE_BOX |
- PRIM_REFLECTION_PROBE_MIRROR;
- if(DYNAMIC)
- {
- probeFlags=probeFlags |
- PRIM_REFLECTION_PROBE_DYNAMIC;
- }
- llOwnerSay("Mirror on");
- }
- else
- {
- llOwnerSay("Mirror off");
- }
- llSetLinkPrimitiveParamsFast(LINK_THIS,
- [
- PRIM_REFLECTION_PROBE,
- TRUE,
- 0.0,
- 0.0,
- probeFlags
- ]);
- }
- default
- {
- state_entry()
- {
- enableMirror(TRUE);
- llSensorRepeat("",NULL_KEY,AGENT,DISTANCE,PI,INTERVAL);
- }
- sensor(integer total_number)
- {
- if(mirrorEnabled)
- {
- return;
- }
- enableMirror(TRUE);
- }
- no_sensor()
- {
- if(!mirrorEnabled)
- {
- return;
- }
- enableMirror(FALSE);
- }
- }
- //fspreprocessor off
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement