Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.67 KB | None | 0 0
  1. integer i;
  2. integer size;
  3.  
  4. key FindName(string name)
  5. {
  6. list temp = llGetAgentList(AGENT_LIST_REGION,[]);
  7. size = llGetListLength(temp);
  8.  
  9. for(i = 0; i < size; i++)
  10. {
  11. string av = llKey2Name(llList2Key(temp,i));
  12. if(av == name)
  13. {
  14. key avkey = llList2Key(temp,i);
  15. return avkey;
  16. }
  17. }
  18. return NULL_KEY;
  19. }
  20.  
  21.  
  22.  
  23. integer channel;
  24. default
  25. {
  26. state_entry()
  27. {
  28. channel = -1911;
  29. llSay(0, "Script running");
  30. llListen(channel,"","","");
  31. }
  32.  
  33.  
  34.  
  35. listen(integer channel1, string name, key id, string message)
  36. {
  37. if(osRegexIsMatch(message,"^Move"))
  38. {
  39. list parse = llParseStringKeepNulls(message,[","],[]);
  40. string myname = llList2String(parse,1);
  41. string target = llList2String(parse,2);
  42. list splitTarget = llParseStringKeepNulls(target,[" "],[]);
  43. list splitName = llParseStringKeepNulls(myname,[" "],[]);
  44.  
  45. string firstname = llList2String(splitName,0);
  46. string lastname = llList2String(splitName,1);
  47.  
  48. string firstTarget = llList2String(splitTarget,0);
  49. string lastTarget = llList2String(splitTarget,1);
  50.  
  51.  
  52. key av1 = FindName(myname);
  53. key av2 = FindName(target);
  54. llSay(0,(string)av2);
  55. if(av2!= NULL_KEY)
  56. {
  57. list AvatarDetails = llGetObjectDetails(av2,[OBJECT_POS]);
  58. vector targetPlayer = llList2Vector(AvatarDetails,0);
  59. osNpcMoveToTarget(av1,targetPlayer,OS_NPC_NO_FLY);
  60. llSay(0,"Move to " + target + " complete");
  61. llSay(0, "Target key is, " + (string)av2);
  62. }
  63. else
  64. {
  65. llSay(0,"Null Key Detected.");
  66. llSay(0,"Cannot find " + target);
  67. }
  68. }
  69. else if(osRegexIsMatch(message,"^Say"))
  70. {
  71. llOwnerSay("Reg confirmed.");
  72. list parse = llParseStringKeepNulls(message,[","],[]);
  73. string myname = llList2String(parse,1);
  74. string toSay = llList2String(parse,2);
  75. list splitName = llParseStringKeepNulls(myname,[" "],[]);
  76.  
  77. string first = llList2String(splitName,0);
  78. string last = llList2String(splitName,1);
  79.  
  80.  
  81. llSay(0,"Name is " + myname);
  82. // llSay(0,(string)av);
  83.  
  84. // osNpcSay(av,toSay);
  85. }
  86. else if(osRegexIsMatch(message,"^Change"))
  87. {
  88. list parse = llParseStringKeepNulls(message,[","],[]);
  89. string myname = llList2String(parse,1);
  90. string target = llList2String(parse,2);
  91. list splitTarget = llParseStringKeepNulls(target,[" "],[]);
  92. list splitName = llParseStringKeepNulls(myname,[" "],[]);
  93.  
  94. string firstname = llList2String(splitName,0);
  95. string lastname = llList2String(splitName,1);
  96.  
  97. string firstTarget = llList2String(splitTarget,0);
  98. string lastTarget = llList2String(splitTarget,1);
  99.  
  100.  
  101. key av1 = FindName(myname);
  102. key av2 = FindName(target);
  103. llSay(0,(string)av2);
  104. if(av2!= NULL_KEY)
  105. {
  106. list AvatarDetails = llGetObjectDetails(av2,[OBJECT_POS]);
  107. vector targetPlayer = llList2Vector(AvatarDetails,0);
  108. osNpcMoveToTarget(av1,targetPlayer,OS_NPC_NO_FLY);
  109. }
  110. }
  111. }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement