Advertisement
shadowfox306

name plates

Jun 23rd, 2017
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.98 KB | None | 0 0
  1. integer listener;
  2. integer faceNumberLeft = 8; // number of faces on the left side letter prim
  3. integer faceNumberRight = 3; // number of faces on the right side letter prim
  4. string left = "Left"; // name of the left side prim containing letter faces
  5. string right = "Right"; // name of the right side prim containing letter faces
  6. integer linkLeft;
  7. integer linkRight;
  8.  
  9. list managers = [ // copy user uuid's for people who should be allowed to change stall name
  10. "73cb0a6d-5812-43d2-b954-087c4dbd0744", // Teager Resident
  11. "64cfac62-1a8a-459a-ab09-0068808f8769", // Rixinshi Spire
  12. "f846f4ee-bc2c-4ad9-8ccb-6943d2cc8f5f" ]; // Darky Delacroix
  13.  
  14. string letterA = "08ae7b1b-d9f7-1080-90a3-7ca33350e3d0";
  15. string letterB = "655e935a-910f-bfed-b819-05488075d985";
  16. string letterC = "d3bc5b98-a640-f3e7-f555-3293f02d2aba";
  17. string letterD = "69f94b0a-9d4a-c634-b930-eca8718ffc7a";
  18. string letterE = "b1a98199-c54e-3862-6dde-208199da626c";
  19. string letterF = "2bbad255-d0db-a137-a84d-c1098290fd57";
  20. string letterG = "68efcc79-6452-5d7b-1d8a-eb592607b824";
  21. string letterH = "6e28dda2-e2e0-c4a1-2ebc-0f539468c6af";
  22. string letterI = "47067f59-c571-5ac4-1626-15c25eca2be0";
  23. string letterJ = "d92dacde-6dd4-7dcb-9912-1b95fe053824";
  24. string letterK = "b5941d94-c5c4-654c-7e0b-377e69db38d9";
  25. string letterL = "d33a4b99-dfe0-dd9c-3cc7-f4d7f19b5b04";
  26. string letterM = "dcf560d6-c3bf-f056-b21b-4a0d60b9f846";
  27. string letterN = "8690c769-8b9e-9bb3-a899-c1a8145a20fe";
  28. string letterO = "55e7d7a9-a14d-1951-7046-c2d590da20be";
  29. string letterP = "4127780b-376f-6da3-4743-e8fe359b9604";
  30. string letterQ = "5707dd59-f971-cd3a-26bc-0d69e1dfc9af";
  31. string letterR = "84c43718-e6bd-a511-e4f6-9d92d1141ed3";
  32. string letterS = "962b9f19-d007-8996-9d90-70af8ae429aa";
  33. string letterT = "dda98f84-5ede-be19-6847-c46127571d8a";
  34. string letterU = "f8a372c1-bf12-ff39-c259-7ed91da83436";
  35. string letterV = "a736309e-1683-c437-3305-2f56b77b5941";
  36. string letterW = "4e899bba-6fe4-385f-b5a0-1e1176a38608";
  37. string letterX = "da7aa014-c28c-897a-c5b3-2efa073cfad9";
  38. string letterY = "d8770b9e-94a2-6900-4f0e-b09dce44e4dd";
  39. string letterZ = "aff8bc7c-0850-dfff-34eb-e90fe65799ff";
  40.  
  41. integer isManager = FALSE;
  42. integer managerCount = 0;
  43. string managerUUID = "";
  44.  
  45.  
  46. default
  47. {
  48.  
  49. touch_start(integer total_number)
  50. {
  51.  
  52. managerCount = llGetListLength(managers);
  53.  
  54. if ( llDetectedKey(0) == llGetOwner()) { isManager = TRUE;}
  55. while ( managerCount > 0) {
  56. if ( llDetectedKey(0) == llList2String(managers, managerCount) ) { isManager = TRUE;}
  57. managerCount--;
  58. }
  59.  
  60.  
  61. if(isManager == TRUE) {
  62.  
  63. // See 'discussion' page for more comments on choosing a channel and possible left-open listener
  64. integer channel = -1834700001;
  65. // "" saves byte-code over NULL_KEY
  66. listener = llListen( channel, "", "", "");
  67. llTextBox(llDetectedKey(0), "Enter name to be displayed. Use letters and spaces only; no punctuation. Do not hit enter. If linked to door, WAIT FOR STALL DOOR TO CLOSE FIRST!", channel);
  68. }
  69. }
  70.  
  71.  
  72.  
  73.  
  74. listen(integer channel, string name, key id, string message)
  75. {
  76. llListenRemove(listener);
  77. llSay(0, "You wrote: " + message);
  78.  
  79.  
  80. integer p = llGetNumberOfPrims();
  81. for (; p >= 0; --p)
  82. {
  83. if (llGetLinkName(p) == left) { linkLeft = p; }
  84. else if (llGetLinkName(p) == right) { linkRight = p; }
  85. }
  86.  
  87.  
  88. integer nameLength = llStringLength(message);
  89. integer nameSpace = ( (faceNumberLeft + faceNumberRight) - (nameLength)) / 2;
  90.  
  91. /* llOwnerSay( "'" + message + "' has " +(string) nameLength + " characters.");
  92. llOwnerSay( "We will skip " + (string) nameSpace + " spaces."); */
  93.  
  94. integer i = 0; // the face number we're currently working on
  95. integer letterNumber = 0;
  96. string letter = " ";
  97.  
  98. while (nameSpace > 0) {
  99. llSetLinkPrimitiveParamsFast(3, [
  100. PRIM_TEXTURE, i, "8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  101. i++;
  102. nameSpace--;
  103. // llOwnerSay( "Space: " + (string)i);
  104. }
  105.  
  106. while (letterNumber <= nameLength ) {
  107.  
  108. if (i < faceNumberLeft) {
  109. letter = llGetSubString(message, letterNumber, letterNumber);
  110. /* llOwnerSay( "Letter: " + letter + " || NameLength: " + (string)nameLength + " || letterNumber: " + (string)letterNumber + " || Face number: " + (string)i ); */
  111. letter = llToLower(letter);
  112.  
  113.  
  114. if ( letter == "a" ) {
  115. llSetLinkPrimitiveParamsFast(linkLeft, [
  116. PRIM_TEXTURE, i, letterA, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  117. i++;}
  118. else if ( letter == "b" ) {
  119. llSetLinkPrimitiveParamsFast(linkLeft, [
  120. PRIM_TEXTURE, i, letterB, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  121. i++;}
  122. else if ( letter == "c" ) {
  123. llSetLinkPrimitiveParamsFast(linkLeft, [
  124. PRIM_TEXTURE, i, letterC, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  125. i++;}
  126. else if ( letter == "d" ) {
  127. llSetLinkPrimitiveParamsFast(linkLeft, [
  128. PRIM_TEXTURE, i, letterD, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  129. i++;}
  130. else if ( letter == "e" ) {
  131. llSetLinkPrimitiveParamsFast(linkLeft, [
  132. PRIM_TEXTURE, i, letterE, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  133. i++;}
  134. else if ( letter == "f" ) {
  135. llSetLinkPrimitiveParamsFast(linkLeft, [
  136. PRIM_TEXTURE, i, letterF, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  137. i++;}
  138. else if ( letter == "g" ) {
  139. llSetLinkPrimitiveParamsFast(linkLeft, [
  140. PRIM_TEXTURE, i, letterG, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  141. i++;}
  142. else if ( letter == "h" ) {
  143. llSetLinkPrimitiveParamsFast(linkLeft, [
  144. PRIM_TEXTURE, i, letterH, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  145. i++;}
  146. else if ( letter == "i" ) {
  147. llSetLinkPrimitiveParamsFast(linkLeft, [
  148. PRIM_TEXTURE, i, letterI, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  149. i++;}
  150. else if ( letter == "j" ) {
  151. llSetLinkPrimitiveParamsFast(linkLeft, [
  152. PRIM_TEXTURE, i, letterJ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  153. i++;}
  154. else if ( letter == "k" ) {
  155. llSetLinkPrimitiveParamsFast(linkLeft, [
  156. PRIM_TEXTURE, i, letterK, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  157. i++;}
  158. else if ( letter == "l" ) {
  159. llSetLinkPrimitiveParamsFast(linkLeft, [
  160. PRIM_TEXTURE, i, letterL, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  161. i++;}
  162. else if ( letter == "m" ) {
  163. llSetLinkPrimitiveParamsFast(linkLeft, [
  164. PRIM_TEXTURE, i, letterM, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  165. i++;}
  166. else if ( letter == "n" ) {
  167. llSetLinkPrimitiveParamsFast(linkLeft, [
  168. PRIM_TEXTURE, i, letterN, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  169. i++;}
  170. else if ( letter == "o" ) {
  171. llSetLinkPrimitiveParamsFast(linkLeft, [
  172. PRIM_TEXTURE, i, letterO, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  173. i++;}
  174. else if ( letter == "p" ) {
  175. llSetLinkPrimitiveParamsFast(linkLeft, [
  176. PRIM_TEXTURE, i, letterP, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  177. i++;}
  178. else if ( letter == "q" ) {
  179. llSetLinkPrimitiveParamsFast(linkLeft, [
  180. PRIM_TEXTURE, i, letterQ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  181. i++;}
  182. else if ( letter == "r" ) {
  183. llSetLinkPrimitiveParamsFast(linkLeft, [
  184. PRIM_TEXTURE, i, letterR, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  185. i++;}
  186. else if ( letter == "s" ) {
  187. llSetLinkPrimitiveParamsFast(linkLeft, [
  188. PRIM_TEXTURE, i, letterS, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  189. i++;}
  190. else if ( letter == "t" ) {
  191. llSetLinkPrimitiveParamsFast(linkLeft, [
  192. PRIM_TEXTURE, i, letterT, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  193. i++;}
  194. else if ( letter == "u" ) {
  195. llSetLinkPrimitiveParamsFast(linkLeft, [
  196. PRIM_TEXTURE, i, letterU, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  197. i++;}
  198. else if ( letter == "v" ) {
  199. llSetLinkPrimitiveParamsFast(linkLeft, [
  200. PRIM_TEXTURE, i, letterV, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  201. i++;}
  202. else if ( letter == "w" ) {
  203. llSetLinkPrimitiveParamsFast(linkLeft, [
  204. PRIM_TEXTURE, i, letterW, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  205. i++;}
  206. else if ( letter == "x" ) {
  207. llSetLinkPrimitiveParamsFast(linkLeft, [
  208. PRIM_TEXTURE, i, letterX, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  209. i++;}
  210. else if ( letter == "y" ) {
  211. llSetLinkPrimitiveParamsFast(linkLeft, [
  212. PRIM_TEXTURE, i, letterY, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  213. i++;}
  214. else if ( letter == "z" ) {
  215. llSetLinkPrimitiveParamsFast(linkLeft, [
  216. PRIM_TEXTURE, i, letterZ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  217. i++;}
  218. else if ( letter == " " ) {
  219. llSetLinkPrimitiveParamsFast(linkLeft, [
  220. PRIM_TEXTURE, i, "8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  221. i++;}
  222.  
  223. }
  224.  
  225. else if (i >= faceNumberLeft) {
  226. letter = llGetSubString(message, letterNumber, letterNumber);
  227. /* llOwnerSay( "Letter: " + letter + " || NameLength: " + (string)nameLength + " || letterNumber: " + (string)letterNumber + " || Face number: " + (string)i); */
  228. letter = llToLower(letter);
  229.  
  230.  
  231. if ( letter == "a" ) {
  232. llSetLinkPrimitiveParamsFast(linkRight, [
  233. PRIM_TEXTURE, (i-faceNumberLeft), letterA, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  234. i++;}
  235. else if ( letter == "b" ) {
  236. llSetLinkPrimitiveParamsFast(linkRight, [
  237. PRIM_TEXTURE, (i-faceNumberLeft), letterB, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  238. i++;}
  239. else if ( letter == "c" ) {
  240. llSetLinkPrimitiveParamsFast(linkRight, [
  241. PRIM_TEXTURE, (i-faceNumberLeft), letterC, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  242. i++;}
  243. else if ( letter == "d" ) {
  244. llSetLinkPrimitiveParamsFast(linkRight, [
  245. PRIM_TEXTURE, (i-faceNumberLeft), letterD, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  246. i++;}
  247. else if ( letter == "e" ) {
  248. llSetLinkPrimitiveParamsFast(linkRight, [
  249. PRIM_TEXTURE, (i-faceNumberLeft), letterE, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  250. i++;}
  251. else if ( letter == "f" ) {
  252. llSetLinkPrimitiveParamsFast(linkRight, [
  253. PRIM_TEXTURE, (i-faceNumberLeft), letterF, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  254. i++;}
  255. else if ( letter == "g" ) {
  256. llSetLinkPrimitiveParamsFast(linkRight, [
  257. PRIM_TEXTURE, (i-faceNumberLeft), letterG, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  258. i++;}
  259. else if ( letter == "h" ) {
  260. llSetLinkPrimitiveParamsFast(linkRight, [
  261. PRIM_TEXTURE, (i-faceNumberLeft), letterH, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  262. i++;}
  263. else if ( letter == "i" ) {
  264. llSetLinkPrimitiveParamsFast(linkRight, [
  265. PRIM_TEXTURE, (i-faceNumberLeft), letterI, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  266. i++;}
  267. else if ( letter == "j" ) {
  268. llSetLinkPrimitiveParamsFast(linkRight, [
  269. PRIM_TEXTURE, (i-faceNumberLeft), letterJ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  270. i++;}
  271. else if ( letter == "k" ) {
  272. llSetLinkPrimitiveParamsFast(linkRight, [
  273. PRIM_TEXTURE, (i-faceNumberLeft), letterK, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  274. i++;}
  275. else if ( letter == "l" ) {
  276. llSetLinkPrimitiveParamsFast(linkRight, [
  277. PRIM_TEXTURE, (i-faceNumberLeft), letterL, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  278. i++;}
  279. else if ( letter == "m" ) {
  280. llSetLinkPrimitiveParamsFast(linkRight, [
  281. PRIM_TEXTURE, (i-faceNumberLeft), letterM, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  282. i++;}
  283. else if ( letter == "n" ) {
  284. llSetLinkPrimitiveParamsFast(linkRight, [
  285. PRIM_TEXTURE, (i-faceNumberLeft), letterN, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  286. i++;}
  287. else if ( letter == "o" ) {
  288. llSetLinkPrimitiveParamsFast(linkRight, [
  289. PRIM_TEXTURE, (i-faceNumberLeft), letterO, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  290. i++;}
  291. else if ( letter == "p" ) {
  292. llSetLinkPrimitiveParamsFast(linkRight, [
  293. PRIM_TEXTURE, (i-faceNumberLeft), letterP, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  294. i++;}
  295. else if ( letter == "q" ) {
  296. llSetLinkPrimitiveParamsFast(linkRight, [
  297. PRIM_TEXTURE, (i-faceNumberLeft), letterQ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  298. i++;}
  299. else if ( letter == "r" ) {
  300. llSetLinkPrimitiveParamsFast(linkRight, [
  301. PRIM_TEXTURE, (i-faceNumberLeft), letterR, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  302. i++;}
  303. else if ( letter == "s" ) {
  304. llSetLinkPrimitiveParamsFast(linkRight, [
  305. PRIM_TEXTURE, (i-faceNumberLeft), letterS, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  306. i++;}
  307. else if ( letter == "t" ) {
  308. llSetLinkPrimitiveParamsFast(linkRight, [
  309. PRIM_TEXTURE, (i-faceNumberLeft), letterT, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  310. i++;}
  311. else if ( letter == "u" ) {
  312. llSetLinkPrimitiveParamsFast(linkRight, [
  313. PRIM_TEXTURE, (i-faceNumberLeft), letterU, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  314. i++;}
  315. else if ( letter == "v" ) {
  316. llSetLinkPrimitiveParamsFast(linkRight, [
  317. PRIM_TEXTURE, (i-faceNumberLeft), letterV, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  318. i++;}
  319. else if ( letter == "w" ) {
  320. llSetLinkPrimitiveParamsFast(linkRight, [
  321. PRIM_TEXTURE, (i-faceNumberLeft), letterW, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  322. i++;}
  323. else if ( letter == "x" ) {
  324. llSetLinkPrimitiveParamsFast(linkRight, [
  325. PRIM_TEXTURE, (i-faceNumberLeft), letterX, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  326. i++;}
  327. else if ( letter == "y" ) {
  328. llSetLinkPrimitiveParamsFast(linkRight, [
  329. PRIM_TEXTURE, (i-faceNumberLeft), letterY, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  330. i++;}
  331. else if ( letter == "z" ) {
  332. llSetLinkPrimitiveParamsFast(linkRight, [
  333. PRIM_TEXTURE, (i-faceNumberLeft), letterZ, <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  334. i++;}
  335. else if ( letter == " " ) {
  336. llSetLinkPrimitiveParamsFast(linkRight, [
  337. PRIM_TEXTURE, (i-faceNumberLeft), "8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  338. i++;}
  339.  
  340. }
  341.  
  342. letterNumber++;
  343. }
  344.  
  345. // llOwnerSay("I'm done printing the name now! I'm on face number " + (string)i);
  346.  
  347. while (i < (faceNumberLeft + faceNumberRight)) {
  348. if (i < faceNumberLeft) {
  349. llSetLinkPrimitiveParamsFast(3, [
  350. PRIM_TEXTURE, (i), "8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  351. i++;
  352. // llOwnerSay( "I'm printing on the left prim and the face number is " + (string)i);
  353. }
  354. else {
  355. llSetLinkPrimitiveParamsFast(2, [
  356. PRIM_TEXTURE, (i-faceNumberLeft), "8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", <1.0, 1.0, 0.0>, ZERO_VECTOR, 1.5708 ]);
  357. i++;
  358. }
  359. // llOwnerSay( "Space: " + (string)i);
  360. }
  361.  
  362. }
  363. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement