Light effect Bar.lsl 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. // :SHOW:1
  2. // :CATEGORY:NPC
  3. // :NAME:HyperGrid Story Nine
  4. // :AUTHOR:Ferd Frederix
  5. // :KEYWORDS:NPC, controller, cyber helmet
  6. // :CREATED:2015-11-24 20:25:33
  7. // :EDITED:2015-11-24 19:25:33
  8. // :ID:1087
  9. // :NUM:1842
  10. // :REV:1.0
  11. // :WORLD:OpenSim
  12. // :DESCRIPTION:
  13. // NPC helmet controller
  14. // Accepts a single chatted command to msake the cyber being helmet flash for a second or two.
  15. // worn by the NPC
  16. // :CODE:
  17. // TUNABLES
  18. integer debug = 1;
  19. // GLOBALS
  20. integer counter = 0;
  21. // FUNCTIONS
  22. DEBUG(string msg)
  23. {
  24. if (debug & 1)
  25. llSay(0,llGetScriptName() + ":" + msg);
  26. if (debug & 2)
  27. llSetText(msg, <1,0,0>,1.0);
  28. }
  29. Go()
  30. {
  31. llSetLinkPrimitiveParamsFast(llGetLinkNumber(),[PRIM_GLOW,ALL_SIDES,.2, PRIM_SIZE, <0.5,0.5,2>,PRIM_COLOR,ALL_SIDES,<1,1,1>,0.5 ]);
  32. llSetTimerEvent(2);
  33. }
  34. default
  35. {
  36. on_rez(integer p)
  37. {
  38. llResetScript();
  39. }
  40. changed(integer what)
  41. {
  42. if (what & CHANGED_REGION_START)
  43. {
  44. llResetScript();
  45. }
  46. }
  47. state_entry()
  48. {
  49. llSetText("", <1,0,0>,1.0);
  50. llListenRemove(listener);
  51. llSetTextureAnim(ANIM_ON | SMOOTH | LOOP , ALL_SIDES, 1, 1, 1.0, 1.0, 1.0);
  52. }
  53. link_message(integer total_number, integer Num, string text, key id)
  54. {
  55. if ( text =="BANG")
  56. Go();
  57. }
  58. timer()
  59. {
  60. llSetLinkPrimitiveParamsFast(llGetLinkNumber(),[PRIM_GLOW,ALL_SIDES,0.2, PRIM_SIZE, <0.5,0.5,2> ] );
  61. llSleep(0.25);
  62. llSetLinkPrimitiveParamsFast(llGetLinkNumber(),[PRIM_GLOW,ALL_SIDES,0.2, PRIM_SIZE, <0.4,0.4,2> ] );
  63. llSetLinkPrimitiveParamsFast(llGetLinkNumber(),[PRIM_GLOW,ALL_SIDES,0, PRIM_SIZE, <0.2,0.2,2> ] );
  64. llSleep(0.25);
  65. llSetLinkPrimitiveParamsFast(llGetLinkNumber(),[PRIM_GLOW,ALL_SIDES,0, PRIM_SIZE, <0.1,0.1,2>,PRIM_COLOR,ALL_SIDES,<1,1,1>,0 ] );
  66. llSetTimerEvent(0);
  67. }
  68. }