proximity.lsl 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // :SHOW:1
  2. // :CATEGORY:Fire
  3. // :NAME:Realfire by Rene
  4. // :AUTHOR:Rene10957 Resident
  5. // :KEYWORDS: light,lamp,lighting
  6. // :CREATED:2015-06-11 14:37:25
  7. // :EDITED:2015-06-12 16:41:14
  8. // :ID:1078
  9. // :NUM:1763
  10. // :REV:1.0
  11. // :WORLD:Second Life, Opensim
  12. // :DESCRIPTION:
  13. // Proximity plugin for RealFire
  14. // :CODE:
  15. //:LICENSE: CC0 (Public Domain). To the extent possible under law, Rene10957 has waived all copyright and related or neighboring rights.For more information, see http://creativecommons.org/publicdomain/zero/1.0/.
  16. // Proximity plugin for RealFire
  17. // A simple example script for creating your own plugin
  18. //
  19. // Automatically switches on when an avatar comes within 10 meters
  20. // Automatically switches off after one minute when no avatars are in range
  21. ///////////////////////////////////////////////////////////////////////////////
  22. // HOW TO USE: drop this into the same prim where the FIRE SCRIPT is located //
  23. ///////////////////////////////////////////////////////////////////////////////
  24. key owner; // object owner
  25. integer number = 10959; // number part of link message
  26. float range = 10.0; // scan range in meters
  27. float rate = 10.0; // scan rate in seconds
  28. default
  29. {
  30. state_entry()
  31. {
  32. owner = llGetOwner();
  33. llSensorRepeat("", "", AGENT_BY_USERNAME, range, PI, rate);
  34. }
  35. on_rez(integer start_param)
  36. {
  37. llResetScript();
  38. }
  39. sensor(integer total_number)
  40. {
  41. rate = 60.0;
  42. llMessageLinked(LINK_THIS, number, "on", owner);
  43. llSensorRemove();
  44. llSensorRepeat("", "", AGENT_BY_USERNAME, range, PI, rate);
  45. }
  46. no_sensor()
  47. {
  48. rate = 10.0;
  49. llMessageLinked(LINK_THIS, number, "off", owner);
  50. llSensorRemove();
  51. llSensorRepeat("", "", AGENT_BY_USERNAME, range, PI, rate);
  52. }
  53. }