Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.92 KB | None | 0 0
  1. list choices = ["Accept"];
  2. string msg = "You have been infected! Become a Zombie?";
  3.  
  4. integer channel_dialog;
  5. integer dlgHandle = -1;
  6.  
  7. list avatarList = [];
  8. list keyList = [];
  9. key keyvar;
  10.  
  11.  
  12. reset()
  13. {
  14. llSetTimerEvent(0.0);
  15. llListenRemove(dlgHandle);
  16. dlgHandle = -1;
  17. }
  18.  
  19. default
  20. {
  21. touch_start(integer total_number)
  22. {
  23. llOwnerSay("Scanning...");
  24. avatarList = [];
  25. // Look for any avatars within 10m.
  26. llSensor("", NULL_KEY, AGENT, 96.0, PI);
  27. }
  28. sensor(integer num_detected)
  29. {
  30. integer i;
  31. while((i < num_detected) && (i < 9))
  32. {
  33. if (llDetectedKey(i) != llGetOwner())
  34. {
  35. avatarList += [llDetectedName(i)];
  36. keyList += [llDetectedKey(i)];
  37. }
  38. ++i;
  39. }
  40. if (llGetListLength(avatarList) > 0)
  41. {
  42. state select;
  43. }
  44. }
  45. }
  46.  
  47. state select
  48. {
  49. state_entry()
  50. {
  51. channel_dialog = ( -1 * (integer)("0x"+llGetSubString((string)llGetKey(),-5,-1)) );
  52.  
  53. // Set up a listener to detect button clicks.
  54. dlgHandle = llListen(channel_dialog, "", llGetOwner(), "");
  55.  
  56. // Start a new timer.
  57. llSetTimerEvent(30.0);
  58.  
  59. // Add a 'Cancel' button.
  60. avatarList += ["Cancel"];
  61.  
  62. // Display the dialog.
  63. llDialog(llGetOwner(), "Please select an avatar.", avatarList, channel_dialog);
  64. }
  65.  
  66. listen(integer channel, string name, key id, string message)
  67. {
  68. if ((channel == channel_dialog) && (llListFindList(avatarList, [message]) != -1))
  69. {
  70. if (message != "Cancel")
  71. {
  72. integer count;
  73. count=llGetListLength(keyList);
  74.  
  75.  
  76. while(count>=0)
  77. {
  78.  
  79. if(llList2String(avatarList,count)==message)
  80. {
  81.  
  82. keyvar=llList2Key(keyList,count);
  83.  
  84. llListenRemove(dlgHandle);
  85. dlgHandle = llListen(channel_dialog, "", keyvar, "");
  86.  
  87. //Syntax error on listen
  88. listen(integer channel, string name, key id, string message
  89. {
  90. llDialog(keyvar, msg, choices, channel_dialog);
  91. if(message=="Accept")
  92. {
  93. llSay(0,"ACCEPTEDDDDDOMFGF"); //Is not displayed
  94. }
  95. }
  96.  
  97. }
  98. --count;
  99. }
  100.  
  101. }
  102. reset();
  103. state default;
  104. }
  105. }
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement