Join us in Outworldz at www.outworldz.com:9000 or follow us:

Search dozens of selected web sites for OpenSim and LSL script

New! Script Meta-Search will search thousands of scripts here and at other sites for LSL or Opensim scripts.
Loading

Want to add a script or a project? Upload it and a half million people will see it and your name here this year.

Home   Show All
Category: Contributor: Creator
AO Selkie  

Selkie

no script script

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life

the Zip file

Download all files for Selkie
Contents are in zip format, with .LSL (text) source code and LSLEdit (text + Solution) formats.
Get file # 1. Anti-no-script script.lsl
Get file # 2. AO Script.lsl
Get file # 3. HUD positioner.lsl
Get file # 4. Controller.lsl
Get file # 5. Hider-2.lsl
Get file # 6. Hider-3.lsl
Get file # 7. Hider.lsl
Get file # 8. particles.lsl
Get file # 9. pet script.lsl
Get file # 10. accessories.lsl
Get file # 11. pet.lsl
Get file # 12. Transmogrifier.lsl
Get file # 13. avatar script.lsl
Get file # 14. controller prim.lsl
Get file # 15. for worn prims.lsl
Get file # 16. seal.lsl

This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // Author: Ferd Frederix
3 // Lets any attachment with scripts work in a no-script zone.
4
5 // Downloaded from : http://www.free-lsl-scripts.com/cgi/freescripts.plx?ID=1644
6
7 // This program is free software; you can redistribute it and/or modify it.
8 // Additional Licenes may apply that prevent you from selling this code
9 // You must leave any author credits and any headers intact in any script you use or publish.
10 ///////////////////////////////////////////////////////////////////////////////////////////////////
11 // If you don't like these restrictions and licenses, then don't use these scripts.
12 //////////////////////// ORIGINAL AUTHORS CODE BEGINS ////////////////////////////////////////////
13
14
15 // The Script
16 //
17 //
18 // ______ _ ______ _ _
19 // | ___| | | | ___| | | (_)
20 // | |_ ___ _ __ __| | | |_ _ __ ___ __| | ___ _ __ ___ __
21 // | _/ _ \ '__/ _` | | _| '__/ _ \/ _` |/ _ \ '__| \ \/ /
22 // | || __/ | | (_| | | | | | | __/ (_| | __/ | | |> <
23 // \_| \___|_| \__,_| \_| |_| \___|\__,_|\___|_| |_/_/\_\
24 //
25 // fred@mitsi.com
26 // author Ferd Frederix
27 //
28
29 // anti-no-script script
30 // makes attached prims into a vehicle so they work in no-script zones.
31 // If you attach the prim while in a no-script zone, it won't work. Fly up 100 meters or so and it will start.
32 // Works only when in the root prim.
33
34 default
35 {
37 {
40 }
41
42
43
44
46 {
47 integer hasPerms = llGetPermissions();
48
50
51 }
52
53
54
55 attach(key id)
56 {
57 if(id)//tests if it is a valid key and not NULL_KEY
58 {
60 }
61 else
62 {
63 llReleaseControls(); // detached
64 }
65 }
66 }

Selkie

Dual AO

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // Low Lag AO by Casper Warden // Completely license free
3 // Mods by Ferd Frederix for use with dual identity Selkie avatars
4
5 // 8-11-2013 Rev 0.2
6
7 // ABOUT THIS SCRIPT
8 // -----------------
9 //
10 // This is an animation overrider optimised for use on pensim. We don't use
11 // complicated list parsing, and we don't have a timer firing every 0.5 seconds
12 // like other AO's.
13 //
14 // All configuration is done in the notecard "AOConfigHuman and AoCOnfigAnimal".
15 // Use a format of
16 //
17 // [AnimationState (e.g Walking)]
18 // Animation one
19 // Animation two
20 // Animation three
21 //
22 // [AnimationState] ... etc etc
23 //
24 // The animations will be selected randomly. You can have more than one animation
25 // per state.
26
27 // DO NOT MODIFY THIS SCRIPT UNLESS YOU KNOW WHAT YOU'RE DOING
28 // THE ONLY CONFIG YOU NEED IS IN THE 'AOConfig' NOTECARD
29
30
31 //Since list functions are unreliable we're going to use a different list for each anim type
32
33 list Walking;
34 list Running;
35 list CrouchWalking;
36 list Flying;
37 list Jumping;
38 list HoveringDown;
39 list HoveringUp;
40 list Crouching;
41 list FlyDown;
42 list Standing;
43 list Hovering;
44 list Sitting;
45 list SoftLanding;
46 list PreJumping;
47 list Falling;
48 list Landing;
49 list StandingUp;
50 list FlyingSlow;
51 list SittingonGround;
52 list Floating;
53 list SwimmingForward;
54 list SwimmingUp;
55 list SwimmingDown;
56
57 list aWalking;
58 list aRunning;
59 list aCrouchWalking;
60 list aFlying;
61 list aJumping;
62 list aHoveringDown;
63 list aHoveringUp;
64 list aCrouching;
65 list aFlyDown;
66 list aStanding;
67 list aHovering;
68 list aSitting;
69 list aSoftLanding;
70 list aPreJumping;
71 list aFalling;
72 list aLanding;
73 list aStandingUp;
74 list aFlyingSlow;
75 list aSittingonGround;
76 list aFloating;
77 list aSwimmingForward;
78 list aSwimmingUp;
79 list aSwimmingDown;
80
81 list hWalking;
82 list hRunning;
83 list hCrouchWalking;
84 list hFlying;
85 list hJumping;
86 list hHoveringDown;
87 list hHoveringUp;
88 list hCrouching;
89 list hFlyDown;
90 list hStanding;
91 list hHovering;
92 list hSitting;
93 list hSoftLanding;
94 list hPreJumping;
95 list hFalling;
96 list hLanding;
97 list hStandingUp;
98 list hFlyingSlow;
99 list hSittingonGround;
100 list hFloating;
101 list hSwimmingForward;
102 list hSwimmingUp;
103 list hSwimmingDown;
104
105
106
107
108 integer aoon=TRUE;
109 string onOff = "AO On";
110 integer siton=TRUE;
111 integer sittinganywhere=FALSE;
112 integer automaticSwitch = TRUE;
113
114 key gQueryID;
115 integer gLine=0;
116 string currentmode;
117 string lastactive="";
118 string lastactiveanim="";
119
120 integer listener;
121 integer ownerChannel; // for selki control
122
123 integer animalHuman; // TRUE for animal, FALSE for Human
124
125
126 Human()
127 {
128 if(animalHuman)
129 {
130 llOwnerSay("Human");
131 llSetTexture("Nara", ALL_SIDES);
132 Walking=hWalking;
133 Running=hRunning;
134 CrouchWalking=hCrouchWalking;
135 Flying=hFlying;
136 Jumping=hJumping;
137 HoveringDown=hHoveringDown;
138 HoveringUp=hHoveringUp;
139 Crouching=hCrouching;
140 FlyDown=hFlyDown;
141 Standing=hStanding;
142 Hovering=hHovering;
143 Sitting=hSitting;
144 SoftLanding=hSoftLanding;
145 PreJumping=hPreJumping;
146 Falling=hFalling;
147 Landing=hLanding;
148 StandingUp=hStandingUp;
149 FlyingSlow=hFlyingSlow;
150 SittingonGround=hSittingonGround;
151 Floating=hFloating;
152 SwimmingForward=hSwimmingForward;
153 SwimmingUp=hSwimmingUp;
154 SwimmingDown=hSwimmingDown;
155 animalHuman = FALSE;
156
157 llWhisper(ownerChannel,"Human");
158 }
159
160 }
161
162 Animal()
163 {
164 if(! animalHuman )
165 {
166 llSetTexture("seal thumbnail", ALL_SIDES);
167
168 Walking=aWalking;
169 Running=aRunning;
170 CrouchWalking=aCrouchWalking;
171 Flying=aFlying;
172 Jumping=aJumping;
173 HoveringDown=aHoveringDown;
174 HoveringUp=aHoveringUp;
175 Crouching=aCrouching;
176 FlyDown=aFlyDown;
177 Standing=aStanding;
178 Hovering=aHovering;
179 Sitting=aSitting;
180 SoftLanding=aSoftLanding;
181 PreJumping=aPreJumping;
182 Falling=aFalling;
183 Landing=aLanding;
184 StandingUp=aStandingUp;
185 FlyingSlow=aFlyingSlow;
186 SittingonGround=aSittingonGround;
187 Floating=aFloating;
188 SwimmingForward=aSwimmingForward;
189 SwimmingUp=aSwimmingUp;
190 SwimmingDown=aSwimmingDown;
191 animalHuman = TRUE;
192 llWhisper(ownerChannel,"Animal");
193 }
194 }
195
196
197 makeMenu()
198 {
199 if(listener)
200 llListenRemove(listener);
201
202 listener = llListen(menuChannel, "", llGetOwner(), "");
203 llDialog(llGetOwner(),"What do you want to do?",["Human","Animal","Auto",onOff , "Toggle Sit","Sit Anywhere","Reset"],menuChannel);
204 }
205
206
207 string GetAnimationFromState(string s) {
208 integer cancel=FALSE;
209 if(sittinganywhere==TRUE)
210 {
211 s="Sitting on Ground";
212 }
213
214 list animselect;
215 if(s=="Walking") {
216 animselect = Walking;
217 } else if(s=="Running") {
218 animselect = Running;
219 } else if(s=="CrouchWalking") {
220 animselect = CrouchWalking;
221 } else if(s=="Flying") {
222 animselect = Flying;
223 } else if(s=="Jumping") {
224 animselect = Jumping;
225 } else if(s=="Hovering Up") {
226 animselect = HoveringUp;
227 } else if(s=="Crouching") {
228 animselect = Crouching;
229 } else if(s=="FlyDown") {
230 animselect = FlyDown;
231 } else if(s=="Standing") {
232 // llOwnerSay("STANDING");
233 // llOwnerSay(llList2CSV(Standing));
234 animselect = Standing;
235 } else if(s=="Hovering Down") {
236 animselect = HoveringDown;
237 } else if(s=="Hovering") {
238 animselect = Hovering;
239 } else if(s=="Sitting") {
240 if(siton==TRUE)
241 {
242 animselect = Sitting;
243 }
244 else
245 {
246 cancel=TRUE;
247 }
248 } else if(s=="PreJumping") {
249 animselect = PreJumping;
250 } else if(s=="Falling") {
251 animselect = Falling;
252 } else if(s=="Soft Landing") {
253 animselect = SoftLanding;
254 } else if(s=="Landing") {
255 animselect = Landing;
256 } else if(s=="Standing Up") {
257 animselect = StandingUp;
258 } else if(s=="Flying Slow") {
259 animselect = FlyingSlow;
260 } else if(s=="Sitting on Ground") {
261 if(sittinganywhere==TRUE)
262 {
263 if(SittingonGround==[])
264 {
265 animselect=["sit_ground"];
266 }
267 else
268 {
269 animselect = SittingonGround;
270 }
271 }
272 else
273 {
274 animselect = SittingonGround;
275 }
276 } else if(s=="Floating") {
277 animselect = Floating;
278 } else if(s=="Swimming Forward") {
279 animselect = SwimmingForward;
280 } else if(s=="Swimming Up") {
281 animselect = SwimmingUp;
282 } else if(s=="Swimming Down") {
283 animselect = SwimmingDown;
284 } else {
285 //llOwnerSay("Unknown state: "+s);
286 return "";
287 }
288 if(cancel==TRUE)
289 {
290 return lastactiveanim;
291
292 } else {
293 animselect=llListRandomize(animselect, 1);
294 return llList2String(animselect,0);
295 }
296
297 }
298 StopAllAnims(){
299
300 integer x;
302 for (x=0; x<llGetListLength(h); x++)
303 {
305
306 }
307
308
309 }
310 doAOCheck() {
311 //llOwnerSay("Doing check");
313
314
315
316 if(check!=lastactive) {
317 lastactive=check;
318 if(check!="") {
319 string getAnim=GetAnimationFromState(check);
320
321
322 vector apos = llGetPos();
323 float z = apos.z;
324
325 if(z < 20 && automaticSwitch)
326 {
327 Animal();
328 }
329 else if(z >= 20 && automaticSwitch)
330 {
331 Human();
332 }
333
334 if(z < 20 && check == "Flying" && automaticSwitch)
335 {
336 getAnim = llList2String(SwimmingForward,0);
337 }
338
339
340
341 //llOwnerSay(getAnim);
342 if(lastactiveanim!=getAnim) {
343 if(lastactiveanim!="") {
344 llStopAnimation(lastactiveanim);
345 }
346 lastactiveanim=getAnim;
347 llStartAnimation(lastactiveanim);
348 float vz;
349 vector pos;
350 float diff=1.0;
351 integer count=0;
352 if(check=="Jumping") {
353
354
355 @to;
356 pos=llGetPos();
357 vz=pos.z;
358 llSleep(0.2);
359 pos=llGetPos();
360 diff=pos.z - vz;
361
362 if(diff>0.1 || diff < -0.1) {
363 jump to;
364 } else {
365 count++;
366 if(count<3) {
367 jump to;
368 }
369 }
370
371
372 doAOCheck();
373 }
374 }
375 }
376 }
377 }
378
379
380
381 integer menuChannel;
382
383 default
384 {
385
387 {
388 ownerChannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
389 menuChannel = llCeil(llFrand(10000) + 10000);
390 llSetText("",<1.0,1.0,1.0>,1.0);
391
392 llOwnerSay("Reading notecard for Animals.");
393 if(llGetInventoryType("AOConfigAnimal")==INVENTORY_NONE) {
394 llOwnerSay("Can't start AO: Notecard 'AOConfigAnimal' is missing");
395 } else {
396 gQueryID = llGetNotecardLine("AOConfigAnimal",0);
397 }
398 }
399
401 {
403 }
404
405 dataserver(key query_id, string data) {
406 if(query_id == gQueryID) {
407 if(data != EOF) { // not at the end of the notecard
408 gLine++;
409 gQueryID = llGetNotecardLine("AOConfigAnimal", gLine); // request next line
410 data=llStringTrim(data,STRING_TRIM);
411 if(data!="") {
412
413 if(llGetSubString(data,0,0)=="[") {
414 currentmode=llToLower(data);
415 } else {
417 llOwnerSay("NOT ADDED: "+data+" - Not found in inventory");
418 } else {
419 //Decipher which mode we're in
420
421
422 if(currentmode=="[walking]") {
423 aWalking+=[data];
424 } else if(currentmode=="[running]") {
425 aRunning+=[data];
426 } else if(currentmode=="[crouchwalking]") {
427 aCrouchWalking+=[data];
428 } else if(currentmode=="[flying]") {
429 aFlying+=[data];
430 } else if(currentmode=="[jumping]") {
431 aJumping+=[data];
432 } else if(currentmode=="[hovering up]") {
433 aHoveringUp+=[data];
434 } else if(currentmode=="[crouching]") {
435 aCrouching+=[data];
436 } else if(currentmode=="[fly down]") {
437 aFlyDown+=[data];
438 } else if(currentmode=="[standing]") {
439 aStanding+=[data];
440 } else if(currentmode=="[hovering down]") {
441 aHoveringDown+=[data];
442 } else if(currentmode=="[hovering]") {
443 aHovering+=[data];
444 } else if(currentmode=="[sitting]") {
445 aSitting+=[data];
446 } else if(currentmode=="[prejumping]") {
447 aPreJumping+=[data];
448 } else if(currentmode=="[falling]") {
449 aFalling+=[data];
450 } else if(currentmode=="[landing]") {
451 aLanding+=[data];
452 } else if(currentmode=="[soft landing]") {
453 aSoftLanding+=[data];
454 } else if(currentmode=="[standing up]") {
455 aStandingUp+=[data];
456 } else if(currentmode=="[flyingslow]") {
457 aFlyingSlow+=[data];
458 } else if(currentmode=="[sitting on ground]") {
459 aSittingonGround+=[data];
460 } else if(currentmode=="[floating]") {
461 aFloating+=[data];
462 } else if(currentmode=="[swimming forward]") {
463 aSwimmingForward+=[data];
464 } else if(currentmode=="[swimming up]") {
465 aSwimmingUp+=[data];
466 } else if(currentmode=="[swimming down]") {
467 aSwimmingDown+=[data];
468 } else {
469 // llOwnerSay("Unknown mode: "+currentmode);
470 }
471
472 }
473 }
474 }
475
476 } else {
477 state ReadHuman;
478 }
479 }
480 }
481 }
482
483
484
485 state ReadHuman
486 {
488 {
489 if(llGetInventoryType("AOConfigHuman")==INVENTORY_NONE) {
490 llOwnerSay("Can't start AO: Notecard 'AOConfigHuman' is missing");
491 } else {
492 gLine = 0;
493 llOwnerSay("Reading notecard for puny Humans.");
494 gQueryID = llGetNotecardLine("AOConfigHuman",0);
495 }
496
497 }
498
499
500 dataserver(key query_id, string data) {
501 if(query_id == gQueryID) {
502 if(data != EOF) { // not at the end of the notecard
503 gLine++;
504 gQueryID = llGetNotecardLine("AOConfigHuman", gLine); // request next line
505 data=llStringTrim(data,STRING_TRIM);
506 if(data!="") {
507
508 if(llGetSubString(data,0,0)=="[") {
509 currentmode=llToLower(data);
510 } else {
512 llOwnerSay("NOT ADDED: "+data+" - Not found in inventory");
513 } else {
514 //Decipher which mode we're in
515
516
517 if(currentmode=="[walking]") {
518 hWalking+=[data];
519 } else if(currentmode=="[running]") {
520 hRunning+=[data];
521 } else if(currentmode=="[crouchwalking]") {
522 hCrouchWalking+=[data];
523 } else if(currentmode=="[flying]") {
524 hFlying+=[data];
525 } else if(currentmode=="[jumping]") {
526 hJumping+=[data];
527 } else if(currentmode=="[hovering up]") {
528 hHoveringUp+=[data];
529 } else if(currentmode=="[crouching]") {
530 hCrouching+=[data];
531 } else if(currentmode=="[fly down]") {
532 hFlyDown+=[data];
533 } else if(currentmode=="[standing]") {
534 hStanding+=[data];
535 } else if(currentmode=="[hovering down]") {
536 hHoveringDown+=[data];
537 } else if(currentmode=="[hovering]") {
538 hHovering+=[data];
539 } else if(currentmode=="[sitting]") {
540 hSitting+=[data];
541 } else if(currentmode=="[prejumping]") {
542 hPreJumping+=[data];
543 } else if(currentmode=="[falling]") {
544 hFalling+=[data];
545 } else if(currentmode=="[landing]") {
546 hLanding+=[data];
547 } else if(currentmode=="[soft landing]") {
548 hSoftLanding+=[data];
549 } else if(currentmode=="[standing up]") {
550 hStandingUp+=[data];
551 } else if(currentmode=="[flyingslow]") {
552 hFlyingSlow+=[data];
553 } else if(currentmode=="[sitting on ground]") {
554 hSittingonGround+=[data];
555 } else if(currentmode=="[floating]") {
556 hFloating+=[data];
557 } else if(currentmode=="[swimming forward]") {
558 hSwimmingForward+=[data];
559 } else if(currentmode=="[swimming up]") {
560 hSwimmingUp+=[data];
561 } else if(currentmode=="[swimming down]") {
562 hSwimmingDown+=[data];
563 } else {
564 // llOwnerSay("Unknown mode: "+currentmode);
565 }
566 }
567 }
568 }
569
570 } else {
571 state Perms;
572 }
573 }
574 }
575 }
576
577
578 state Perms
579 {
580
581 state_entry() {
583
584 }
587 llOwnerSay("Can't function without permissions. Touch to reset.");
588 } else {
589 state On;
590 }
591 }
594 }
595
596 }
597
598
599
600
601 state On
602 {
603
604 state_entry() {
605 makeMenu();
606
607 StopAllAnims();
608
609 doAOCheck();
610 ownerChannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
611
613 }
614
615 changed(integer j) {
616 if(j & CHANGED_ANIMATION) {
617 if(aoon==TRUE)
618 {
619 doAOCheck();
620 }
623 }
624
625 }
626 attach(key j) {
628 }
629
632 llOwnerSay("Can't function without permissions. Touch to reset.");
633 } else {
634 doAOCheck();
635 }
636 }
637
639 {
640 //Throw a menu
641 makeMenu();
642 }
643
644 listen(integer channel, string name, key id, string message)
645 {
646 if(message=="Reset") {
648 } else if(message == "AO On") {
649 onOff = "AO Off";
650 aoon = FALSE;
651 StopAllAnims();
652 llOwnerSay("AO Off");
653 makeMenu();
654 } else if(message == "AO Off") {
655 onOff = "AO On";
656 aoon = TRUE;
657 llOwnerSay("AO On");
658 makeMenu();
659 } else if(message == "Human" ) {
660 automaticSwitch = FALSE;
661 Human();
662 makeMenu();
663 doAOCheck();
664 } else if(message == "Animal") {
665 automaticSwitch = FALSE;
666 Animal();
667 makeMenu();
668 doAOCheck();
669 } else if(message == "Auto") {
670 automaticSwitch = TRUE;
671 makeMenu();
672 doAOCheck();
673
674 } else if(message=="Toggle Sit") {
675
676 if(siton==TRUE)
677 {
678 siton=FALSE;
679 llOwnerSay("Sit off");
680 if(aoon){
681 lastactive="";
682 doAOCheck();
683 }
684 } else {
685
686 siton=TRUE;
687 llOwnerSay("Sit On");
688 if(aoon){
689 lastactive="";
690 doAOCheck();
691
692 }
693
694 }
695 makeMenu();
696
697 } else if(message=="Sit Anywhere") {
698
699 if(sittinganywhere==TRUE){
700
701 sittinganywhere=FALSE;
702 if(aoon) {
703 lastactive="";
704 doAOCheck();
705 }
706 else
707 {
708 StopAllAnims();
709 }
710 }
711 else
712 {
713
714 sittinganywhere=TRUE;
715 lastactive="";
716 doAOCheck();
717 }
718
719 makeMenu();
720
721 }
722 }
723
724
725 }

Selkie

Hus positioner

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // Author: Ferd Frederix
3 // This improved HUD positioner is updated for Viewer 2.0. It will place your HUD in any of the 4 corners, and it moves Center and Center 2 to the left and right edges. It also allows the user to re-position the HUD, and it will remember their movements. Detach and re-attach will place it at the remembered position.
4
5 // Downloaded from : http://www.free-lsl-scripts.com/cgi/freescripts.plx?ID=1453
6
7 // This program is free software; you can redistribute it and/or modify it.
8 // Additional Licenes may apply that prevent you from selling this code
9 // You must leave any author credits and any headers intact in any script you use or publish.
10 ///////////////////////////////////////////////////////////////////////////////////////////////////
11 // If you don't like these restrictions and licenses, then don't use these scripts.
12 //////////////////////// ORIGINAL AUTHORS CODE BEGINS ////////////////////////////////////////////
13
14
15 //
16 //The HUD positioner is designed to set the HUD into a 'preferred' position whenever it get attached. If the user moves it, and re-attaches it to the same spot, it ignores the hard-coded settings. It keeps a list of offsets from the top, bottom, left and right and moves the prim when it is first attached by that offset. Ity also forces the prim to face in a know direction, just in case it is accidentally rotated by the end-user.
17 //
18 //If the HUD pops off-screen, wear another HUD, press Ctrl-3 to go into edit mode, click the other HUD, and use the scroll wheel to zoom out. You will see a line representing the edge of the 'normal' screen, and outside of it, hopefully, you will see the misplaced HUD. You can then grab it and move it back on-screen.
19 //
20 //This script was originally designed for a small HUD. You will probably need to edit the offsets that are in the script unless your HUD is also very small. The best way to do this is to wear the HUD, edit it, and look at the coordinates that appear in screen. These are offsets from the 'default' positions of the viewer. Move the prim to the correct position, and notice the X and Y and Z numbers change? You will need to change the Y and Z those numbers and put them in this scripts if you HUD is to go into another position.
21 //
22 //For example, if you attach something to the right side top or the right side bottom, the prim's center will normally be along the right edge. This script moves it to the left by trYoffset = 0.185 when at the top right, and brYoffset=0.125 when at the bottom right edge so that it can clear the little hump in some viewers. Another example is attaching to the very bottom, which is really bottom center. The script will move the prim vertically by BVerticalOffset = 0.080 to clear the nav bars, and leave the Y axis alone by adding to Y a 0.
23 //
24 //
25 // ______ _ ______ _ _
26 // | ___| | | | ___| | | (_)
27 // | |_ ___ _ __ __| | | |_ _ __ ___ __| | ___ _ __ ___ __
28 // | _/ _ \ '__/ _` | | _| '__/ _ \/ _` |/ _ \ '__| \ \/ /
29 // | || __/ | | (_| | | | | | | __/ (_| | __/ | | |> <
30 // \_| \___|_| \__,_| \_| |_| \___|\__,_|\___|_| |_/_/\_\
31 //
32 // fred@mitsi.com
33 // author Ferd Frederix
34 //
35
36 integer lasttarget;
37
38 default
39 {
40
41 attach( key id)
42 {
43
44 if(id)
45 {
46 integer target = llGetAttached();
47
48 vector position = llGetLocalPos();
49
50 if(target == lasttarget )
51 return;
52
53 lasttarget = target; // save the position we just set
54
55 float Y = 0.0;
56 float Z = 0.0;
57 float trYoffset = 0.185; // right edge
58 float brYoffset = 0.125; // right edge
59 float otherYoffset = 0.080; // move right from left edge
60 float VerticalOffset = 0.2; // move down for room for hover text
61 float CenterOffset = 0.7; // left and right center offset to left and right edge
62 float BVerticalOffset = 0.080; // Bottom Z.
63
64
65 if(target == ATTACH_HUD_CENTER_2)
66 {
67 Y = CenterOffset; Z = 0.0; // move to left edge
68 }
70 {
71 Y = trYoffset; Z = -VerticalOffset; // down for room for hovertext
72 }
74 {
75 Y = 0; Z = -VerticalOffset;
76 }
77 else if(target == ATTACH_HUD_TOP_LEFT)
78 {
79 Y = -otherYoffset; Z = -VerticalOffset;
80 }
81 else if(target == ATTACH_HUD_CENTER_1)
82 {
83 Y = -CenterOffset; Z = 0.0; // move to right edge
84 }
85 else if(target == ATTACH_HUD_BOTTOM_LEFT)
86 {
87 Y = -otherYoffset; Z = BVerticalOffset;
88 }
89 else if(target == ATTACH_HUD_BOTTOM)
90 {
91 Y = 0.0; Z = BVerticalOffset;
92 }
93 else if(target == ATTACH_HUD_BOTTOM_RIGHT)
94 {
95 Y = brYoffset; Z = BVerticalOffset ; // 2 x to miss buttons
96 }
97 else
98 {
99 llOwnerSay("You must attach this as a HUD");
100 return;
101
102 }
103
104 vector newtarget = <0.0,Y,Z>;
105 llSetPos(newtarget);
106
107 rotation myrot = llEuler2Rot( <0.0,90.0,270.0> * DEG_TO_RAD);
108 llSetLocalRot(myrot);
109
110
111 }
112 }
113
114
115 }

Selkie

A Transmogrifying seal

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 integer type = -1;
3 integer ownerchannel;
4 integer listener;
5 integer person = TRUE;
6
7 switch(string what)
8 {
9 if(what == "avatar" && ! person)
10 {
11 llSay(ownerchannel,"avatar");
12 person = TRUE;
13 llSetAlpha(0.0,ALL_SIDES); // invisible
14 }
15 else if(what == "pet" && person)
16 {
17 llSay(ownerchannel,"pet");
18 person = FALSE;
19 // Make this prim an invisiprim.
20 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
22 PRIM_COLOR, ALL_SIDES, <1.0, 1.0, 1.0>, 1.0, PRIM_TEXGEN, ALL_SIDES, PRIM_TEXGEN_DEFAULT,
23 PRIM_TEXTURE, ALL_SIDES, "e97cf410-8e61-7005-ec06-629eba4cd1fb", ZERO_VECTOR, ZERO_VECTOR, 0.0]);
24 }
25
26 }
27 default
28 {
29
31 {
33 }
34
36 {
37 // Make this prim an invisiprim.
38 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
40 PRIM_COLOR, ALL_SIDES, <1.0, 1.0, 1.0>, 1.0, PRIM_TEXGEN, ALL_SIDES, PRIM_TEXGEN_DEFAULT,
41 PRIM_TEXTURE, ALL_SIDES, "e97cf410-8e61-7005-ec06-629eba4cd1fb", ZERO_VECTOR, ZERO_VECTOR, 0.0]);
42
43 llSetStatus(STATUS_PHANTOM,TRUE);
44 llSetTimerEvent(0.5);
45 }
46
47 timer()
48 {
50 if(flight & AGENT_IN_AIR)
51 {
52 switch("pet");
53 }
54 else
55 {
56 switch("avatar");
57 }
58 }
59
60
61 touch_start(integer total_number)
62 {
63 if(listener)
64 llListenRemove(listener);
65 integer channel = llCeil(llFrand(10000) +10000);
66 listener = llListen(channel,"","","");
67 llDialog(llGetOwner(),"Choose",["Switch"], channel);
68 }
69
70 listen( integer channel, string name, key id, string message ) {
71 if(message =="Switch")
72 {
73 if(type)
74 switch("avatar");
75 else
76 switch("pet");
77
78 type= ~ type;
79 }
80 }
81
82
83
84 }

Selkie

Prim hider

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 integer ownerchannel;
3 integer listener;
4
5 setlisten()
6 {
7 if(listener) {
8 llListenRemove(listener);
9 }
10 listener = llListen(ownerchannel,"","","");
11 }
12
13
14
15 hide_show( float alpha)
16 {
18 integer i;
19
20 for ( i = 0; i <= j; i++) {
22 }
23
24 for ( i = 0; i <= j; i++) {
26 }
27
28 for ( i = 0; i <= j; i++) {
30 }
31
32 }
33
34 default
35 {
37 {
38 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
39 hide_show(0); // 0 = invisible
40 setlisten();
41 }
42
43 on_rez(integer param)
44 {
45 hide_show(1); // 1= visible
46 setlisten();
47 }
48
49 changed(integer what)
50 {
51 if(what & CHANGED_REGION)
52 setlisten();
53 if(what & CHANGED_OWNER)
55 }
56
57 listen(integer channel, string name, key id, string msg)
58 {
59 if(msg == "pet") {
60 hide_show(0);
61 } else if(msg == "avatar") {
62 hide_show(1);
63 }
64 }
65 }

Selkie

Prim hider

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2
3
4
5 integer ownerchannel;
6 integer listener;
7
8 // This sets up a listener on the Owner-only channel.
9 setlisten()
10 {
11 if(listener) {
12 llListenRemove(listener);
13 }
14 listener = llListen(ownerchannel,"","","");
15 }
16
17
18 hide_show( float alpha)
19 {
21
22 integer i;
23
24 // TRIPLE PLAY
25 for ( i = 0; i <= j; i++) {
26 llSetLinkAlpha(i,alpha, ALL_SIDES);
27 }
28 for ( i = 0; i <= j; i++) {
29 llSetLinkAlpha(i,alpha, ALL_SIDES);
30 }
31 for ( i = 0; i <= j; i++) {
32 llSetLinkAlpha(i,alpha, ALL_SIDES);
33 }
34
35 }
36
37
38
39 default
40 {
42 {
43 //When this script runs, it starts to listen on a channel that matches just for your avatar. This is the last 7 digits of your avatars UUID.
44 // It converts that string of numbers and letters into a channel and waits for the script in the avatar to chat on it.
45
46 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
47 hide_show(0); // 0 = invisible
48 setlisten();
49 }
50
51 on_rez(integer param)
52 {
53 hide_show(1); // 1= visible
54 setlisten();
55 }
56
57
58 // If we change regions, re-establish a listener. Region crossings are buggy in Opensim.
59
60 changed(integer what)
61 {
62 if(what & CHANGED_REGION)
63 setlisten();
64 if(what & CHANGED_OWNER)
66 }
67
68 listen(integer channel, string name, key id, string msg)
69 {
70 // UNCOMMENT THIS NEXT LINE TO HEAR CHAT
71 // llOwnerSay(msg);
72
73
74
75 if(msg == "pet") {
76 hide_show(0);
77 } else if(msg == "avatar") {
78 hide_show(1);
79 }
80 }
81 }

Selkie

effects

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // Particle System 1.0
3
4 StartSteam()
5 {
6 // MASK FLAGS: set to "TRUE" to enable
7 integer glow = FALSE; // Makes the particles glow
8 integer bounce = FALSE; // Make particles bounce on Z plane of objects
9 integer interpColor = FALSE; // Color - from start value to end value
10 integer interpSize = FALSE; // Size - from start value to end value
11 integer wind = TRUE; // Particles effected by wind
12 integer followSource = TRUE; // Particles follow the source
13 integer followVel = TRUE; // Particles turn to velocity direction
14
15
16
17 // Choose a pattern from the following:
18 // PSYS_SRC_PATTERN_EXPLODE
19 // PSYS_SRC_PATTERN_DROP
20 // PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY
21 // PSYS_SRC_PATTERN_ANGLE_CONE
22 // PSYS_SRC_PATTERN_ANGLE
23 integer pattern = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY; // PSYS_SRC_PATTERN_EXPLODE;
24
25 // Select a target for particles to go towards
26 // "" for no target, "owner" will follow object owner
27 // and "self" will target this object
28 // or put the key of an object for particles to go to
29
30 //key target = "2d180e40-017a-a88a-76cd-ec84c773dac5";
31 // key target = "e32b8b3e-ebab-06fe-590d-df4bcceeb73b";
32 key target = llGetOwner();
33 // PARTICLE PARAMETERS
34
35 float age = 5; // Life of each particle
36 float maxSpeed = 0.05; // Max speed each particle is spit out at
37 float minSpeed = 0.05; // Min speed each particle is spit out at
38 string texture = "Chains 2"; // Texture used for particles, default used if blank
39 float startAlpha = 0.8; // Start alpha (transparency) value
40 float endAlpha = 0.8; // End alpha (transparency) value
41 vector startColor = <0.75,0.85,1>; // Start color of particles <R,G,B>
42 vector endColor = <0.75,0.85,1>; // End color of particles <R,G,B> (if interpColor == TRUE)
43 vector startSize = <0.05,0.05,0.05>; // Start size of particles
44 vector endSize = <0.05,0.05,0.05>; // End size of particles (if interpSize == TRUE)
45 vector push = <0.05,0.0,0.0>; // Force pushed on particles
46
47 // SYSTEM PARAMETERS
48
49 float rate = .1; // How fast (rate) to emit particles
50 float radius = 0.75; // Radius to emit particles for BURST pattern
51 integer count = 1; // How many particles to emit per BURST
52 float outerAngle = 3*PI; // Outer angle for all ANGLE patterns PI/4
53 float innerAngle = 0.5; // Inner angle for all ANGLE patterns
54 vector omega = <0,0,0>; // Rotation of ANGLE patterns around the source
55 float life = 0; // Life in seconds for the system to make particles
56
57 // SCRIPT VARIABLES
58
59 integer flags;
60
61
62 flags = 0;
63
64 if(glow) flags = flags | PSYS_PART_EMISSIVE_MASK;
65 if(bounce) flags = flags | PSYS_PART_BOUNCE_MASK;
66 if(interpColor) flags = flags | PSYS_PART_INTERP_COLOR_MASK;
67 if(interpSize) flags = flags | PSYS_PART_INTERP_SCALE_MASK;
68 if(wind) flags = flags | PSYS_PART_WIND_MASK;
69 if(followSource) flags = flags | PSYS_PART_FOLLOW_SRC_MASK;
70 if(followVel) flags = flags | PSYS_PART_FOLLOW_VELOCITY_MASK;
71 if(target != "") flags = flags | PSYS_PART_TARGET_POS_MASK;
72
74 PSYS_PART_FLAGS,flags,
75 PSYS_PART_START_COLOR, startColor,
76 PSYS_PART_END_COLOR, endColor,
77 PSYS_PART_START_SCALE,startSize,
78 PSYS_PART_END_SCALE,endSize,
79 PSYS_SRC_PATTERN, pattern,
81 PSYS_SRC_ACCEL, push,
87 PSYS_SRC_INNERANGLE,innerAngle,
88 PSYS_SRC_OUTERANGLE,outerAngle,
89 PSYS_SRC_OMEGA, omega,
90 PSYS_SRC_MAX_AGE, life,
91 PSYS_SRC_TEXTURE, texture,
92 PSYS_PART_START_ALPHA, startAlpha,
93 PSYS_PART_END_ALPHA, endAlpha
94 ]);
95
96 }
97 StartSpray ()
98 {
99
100
101
102 }
103
104 StopSpray()
105 {
107 }
108
109
110
111 default
112 {
113
114 changed(integer change)
115 {
116 if(change & CHANGED_OWNER)
118
119 }
120
121
123 {
124 StopSpray()
125 // llOwnerSay(llGetKey());
126 }
127
128 listen(integer channel, string name, key id, string message)
129 {
130
131 if(0 == llSubStringIndex(message, "chain on"))
132 {
133 StartSteam();
134
135 }
136 else if(0 == llSubStringIndex(message, "chain off"))
137 {
138 StopSpray();
139 }
140 }
141 }

Selkie

Controller

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 integer ownerchannel;
3 integer listener;
4
5 setlisten()
6 {
7 if(listener) {
8 llListenRemove(listener);
9 }
10 listener = llListen(ownerchannel,"","","");
11 }
12
13
14
15 hide_show( float alpha)
16 {
18 integer i;
19 for ( i = 0; i <= j; i++) {
21 }
22
23 }
24
25 default
26 {
28 {
29 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
30 hide_show(0); // 0 = invisible
31 setlisten();
32 }
33
34 on_rez(integer param)
35 {
36 hide_show(0); // 1= visible
37 setlisten();
38 }
39
40 changed(integer what)
41 {
42 if(what & CHANGED_REGION)
43 setlisten();
44 if(what & CHANGED_OWNER)
46 }
47
48 listen(integer channel, string name, key id, string msg)
49 {
50 if(msg == "pet") {
51 hide_show(1);
52 } else if(msg == "avatar") {
53 hide_show(0);
54 }
55 }
56 }

Selkie

invisiprim

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // License: CC-BY. Please do not remove the copyright or this notice
3 // Author: Ferd Frederix
4
5 // For all yoru worn accessories (not the pet)
6 // makes accessories like shoes and hair disappear when you fly.
7
8 integer ownerchannel;
9 integer listener;
10
11 setlisten()
12 {
13 if(listener) {
14 llListenRemove(listener);
15 }
16 listener = llListen(ownerchannel,"","","");
17 }
18
19
20
21 hide_show( float alpha)
22 {
24
25 integer i;
26 for ( i = 0; i <= j; i++) {
27
28 llSetLinkPrimitiveParamsFast(i,[ PRIM_COLOR, ALL_SIDES,<1,1,1>,alpha]);
29 }
30
31 }
32
33 default
34 {
36 {
37 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
38 hide_show(0); // 0 = invisible
39 setlisten();
40 }
41
42 on_rez(integer param)
43 {
44 hide_show(1); // 1= visible
45 setlisten();
46 }
47
48 changed(integer what)
49 {
50 if(what & CHANGED_REGION)
51 setlisten();
52 if(what & CHANGED_OWNER)
54 }
55
56 listen(integer channel, string name, key id, string msg)
57 {
58 if(msg == "pet") {
59 hide_show(0);
60 } else if(msg == "avatar") {
61 hide_show(1);
62 }
63 }
64 }

Selkie

pet script

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // License: CC-BY. Please do not remove the copyright or this notice
3 // Author: Ferd Frederix
4
5 // for your pet that appears when you fly.
6 // makes pet appear and dissapear when you fly
7
8 integer ownerchannel;
9 integer listener;
10
11 setlisten()
12 {
13 if(listener) {
14 llListenRemove(listener);
15 }
16 listener = llListen(ownerchannel,"","","");
17 }
18
19
20
21 hide_show( float alpha)
22 {
24 integer i;
25 for ( i = 0; i <= j; i++) {
27 }
28
29 }
30
31 default
32 {
34 {
35 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
36 hide_show(0); // 0 = invisible
37 setlisten();
38 }
39
40 on_rez(integer param)
41 {
42 hide_show(0); // 1= visible
43 setlisten();
44 }
45
46 changed(integer what)
47 {
48 if(what & CHANGED_REGION)
49 setlisten();
50 if(what & CHANGED_OWNER)
52 }
53
54 listen(integer channel, string name, key id, string msg)
55 {
56 if(msg == "pet") {
57 hide_show(1);
58 } else if(msg == "avatar") {
59 hide_show(0);
60 }
61 }
62 }

Selkie

Transmogrify

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 // License: CC-BY. Please do not remove the copyright or this notice
3 // Author: Ferd Frederix
4
5 // Put in a large prim, and wear it.
6
7 integer type = -1;
8 integer ownerchannel;
9 integer listener;
10 integer person = TRUE;
11
12 switch(string what)
13 {
14 if(what == "avatar" && ! person)
15 {
16 llSay(ownerchannel,"avatar");
17 person = TRUE;
18 llSetAlpha(0.0,ALL_SIDES); // invisible
19 }
20 else if(what == "pet" && person)
21 {
22 llSay(ownerchannel,"pet");
23 person = FALSE;
24 // Make this prim an invisiprim.
25 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
27 PRIM_COLOR, ALL_SIDES, <1.0, 1.0, 1.0>, 1.0, PRIM_TEXGEN, ALL_SIDES, PRIM_TEXGEN_DEFAULT,
28 PRIM_TEXTURE, ALL_SIDES, "e97cf410-8e61-7005-ec06-629eba4cd1fb", ZERO_VECTOR, ZERO_VECTOR, 0.0]);
29 }
30
31 }
32 default
33 {
34
36 {
38 }
39
41 {
42 // Make this prim an invisiprim.
43 ownerchannel = (integer)("0xF" + llGetSubString( (string)llGetOwner(), 0, 6 ));
45 PRIM_COLOR, ALL_SIDES, <1.0, 1.0, 1.0>, 1.0, PRIM_TEXGEN, ALL_SIDES, PRIM_TEXGEN_DEFAULT,
46 PRIM_TEXTURE, ALL_SIDES, "e97cf410-8e61-7005-ec06-629eba4cd1fb", ZERO_VECTOR, ZERO_VECTOR, 0.0]);
47
48 llSetStatus(STATUS_PHANTOM,TRUE);
49 llSetTimerEvent(0.5);
50 }
51
52 timer()
53 {
55 if(flight & AGENT_IN_AIR)
56 {
57 switch("pet");
58 }
59 else
60 {
61 switch("avatar");
62 }
63 }
64
65
66 touch_start(integer total_number)
67 {
68 if(listener)
69 llListenRemove(listener);
70 integer channel = llCeil(llFrand(10000) +10000);
71 listener = llListen(channel,"","","");
72 llDialog(llGetOwner(),"Choose",["Switch", "Help", "Auto"], channel);
73 }
74
75 listen( integer channel, string name, key id, string message ) {
76 if(message =="Switch")
77 {
78 if(type) {
79 switch("avatar");
81 } else {
82 switch("pet");
84 }
85
86 type= ~ type;
87 } else if(message == "Auto"){
88 llSetTimerEvent(0.5);
89 } else if(message == "Help") {
90 llLoadURL(llGetOwner(),"Get Help","http://www.free-lsl-scripts.com/opensim/posts/transmogrifier/");
91 }
92
93 }
94
95
96
97 }

Selkie

avatar

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2 default
3 {
5 {
6 llSetAlpha(1.0, ALL_SIDES); // 1= visible
7 }
8
9 on_rez(integer param)
10 {
12 }
13
14 link_message(integer sender, integer num, string str, key id)
15 {
16
17 if(str == "pet")
18 llSetTexture("43716e0b-8031-4dc9-8920-7afeb7a6c5c9",ALL_SIDES);
19 else if(str == "avatar")
20 llSetTexture("8dcd4a48-2d37-4909-9f78-f7a9eb4ef903", ALL_SIDES);
21
22 }
23 }

Selkie

Transmogrify

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2
3 default
4 {
6 {
8 }
9
10 timer()
11 {
12 llMessageLinked(LINK_SET,0,"pet","");
13 llSleep(2);
14 llMessageLinked(LINK_SET,0,"avatar","");
15
16 }
17
18 on_rez(integer start_param)
19 {
21 }
22
23 }

Selkie

Transmogrify

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2
3 default
4 {
6 {
8 }
9
10 timer()
11 {
12 llMessageLinked(LINK_SET,0,"pet","");
13 llSleep(2);
14 llMessageLinked(LINK_SET,0,"avatar","");
15
16 }
17
18 on_rez(integer start_param)
19 {
21 }
22
23 }

Selkie

Transmogrify

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1
2
3 default
4 {
6 {
8 }
9
10 timer()
11 {
12 llMessageLinked(LINK_SET,0,"pet","");
13 llSleep(2);
14 llMessageLinked(LINK_SET,0,"avatar","");
15
16 }
17
18 on_rez(integer start_param)
19 {
21 }
22
23 }

Selkie

Ao for the Transmogrify config notecard

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1 [Walking]
2 sealwalk
3
4
5 [Standing]
6 sealstand1
7 sealstand2
8
9 [Running]
10 run
11
12 [CrouchWalking]
13
14 [Flying]
15 fly1
16 fly2
17
18 [Jumping]
19 jump
20
21 [Hovering Up]
22 hover
23
24 [Hovering Down]
25 hoverdown
26
27 [Crouching]
28
29 [Fly Down]
30
31 [Hovering]
32 hover
33
34 [Sitting]
35 sit1
36 sit2
37 sit3
38
39 [Falling]
40
41 [Landing]
42 landing1
43
44 [Standing Up]
45 standup
46
47 [Sitting on Ground]
48 groundsit1
49 groundsit2
50 groundsit3
51
52 [Floating]
53 sealfloat1
54 sealfloat2
55 sealfloat3
56
57
58 [Swimming Forward]
59 sealswimfast
60 sealswim
61
62 [Swimming Up]
63 fly1
64 [Swimming Down]
65 fly2

Selkie

Config notecard for the Transmogrify

Category: AO
By : Ferd Frederix
Created: 2013-09-06 Edited: 2013-09-04
Worlds: Second Life


This script by Ferd Frederix may be used in any manner, modified, and republished.  Unless specified otherwise, my scripts are always free and open source.  Objects made with these scripts may be sold with no restrictions.  All I ask is that you point others to this location should they ask you about it and to not sell this script, unless it is for $0 L. Please help improve my work by reporting bugs and improvements.

1 [Walking]
2 walk1
3 walk2
4
5 [Standing]
6 standing1
7 standing2
8 standing3
9 standing4
10 standing5
11 standing6
12 standing7
13 standing8
14
15 [Running]
16 run
17
18 [CrouchWalking]
19
20 [Flying]
21 fly1
22 fly2
23
24 [Jumping]
25 jump
26
27 [Hovering Up]
28 hover
29
30 [Hovering Down]
31 hoverdown
32
33 [Crouching]
34
35 [Fly Down]
36
37 [Hovering]
38 hover
39
40 [Sitting]
41 sit1
42 sit2
43 sit3
44
45 [Falling]
46
47 [Landing]
48 landing1
49
50 [Standing Up]
51 standup
52
53 [Sitting on Ground]
54 groundsit1
55 groundsit2
56 groundsit3
57
58 [Floating]
59 float
60
61 [Swimming Forward]
62 swimforward
63
64 [Swimming Up]
65
66 [Swimming Down]

Back to the Best Free Tools in Second Life and OpenSim.