Difference between revisions of "User:Daemonika Nightfire/Scripts/Tools (de)"
Jump to navigation
Jump to search
(Created page with "==*DS* GetPrimInfo== <lsl> /* *DS* GetPrimInfo by Daemonika Nightfire Mit diesem kleinen Tool bekommst du auf die schnelle saemtliche nuetzlichen Informationen eines…") |
|||
Line 1: | Line 1: | ||
<div style="float:right;">__TOC__</div> | |||
==*DS* GetPrimInfo== | ==*DS* GetPrimInfo== | ||
<lsl> | <lsl> |
Revision as of 16:02, 15 January 2013
*DS* GetPrimInfo
<lsl> /*
*DS* GetPrimInfo by Daemonika Nightfire Mit diesem kleinen Tool bekommst du auf die schnelle saemtliche nuetzlichen Informationen eines Prims die du zum Scripten benoetigs. Lege das Script einfach hinein und klicke ihn an. INFO: Je nachdem ob das Script im Root oder Child liegt, bekommst du unterschiedliche werte. Die Bezeichnung (me) deutet darauf hin, dass nur der Wert des Prims ausgelesen wird, wo das Script drin liegt.
- /
default {
touch_start(integer num_detected) { integer i; for(i=0; i<num_detected; ++i) { llOwnerSay("/me ObjectKey: "+ (string)llGetKey() + "\nObjectPrimCount: " + (string)llGetNumberOfPrims() + "\nLinkNumber: " + (string)llDetectedLinkNumber(i) + "\nLinkName: " + (string)llGetLinkName(llDetectedLinkNumber(i)) + "\nLinkNumberKey: " + (string)llGetLinkKey(llDetectedLinkNumber(i)) + "\nTouchFace: " + (string)llDetectedTouchFace(i) + "\nTouchPos: " + (string)llDetectedTouchST(i) + "\nScale (me): " + (string)llGetScale() + "\nPos (Root): " + (string)llGetPos() + "\nLocalPos (me): " + (string)llGetLocalPos() + "\nRot (me): " + (string)llGetLocalRot() + "\nColor (me): " + (string)llGetColor(i) + "\nAlpha (me): " + (string)llGetAlpha(i) + "\nCreator: " + (string)llKey2Name(llGetCreator()) + "\nCreatorKey: " + (string)llGetCreator()); llResetScript(); } }
} </lsl>
*DS* Prim-Cleaner (LINK_THIS)
<lsl> /*
*DS* Prim-Cleaner (LINK_THIS) by Daemonika Nightfire Der Prim-Cleaner entfernt saemtliche Prim-Eigenschaften, die sich nicht mit dem Baumenue einstellen lassen. Diese Version funktioniert nur in dem Prim, in dem das Script eingelegt ist.
- /
default {
state_entry() { llSetSitText(""); // entfernt den Sitz-Text llSetTouchText(""); // entfernt den Klick-Text llParticleSystem([]); // entfernt die Particle llSetText("", ZERO_VECTOR, 1.0); // entfernt den Hovertext llTargetOmega(ZERO_VECTOR, 0.0, 0.0); // entfernt die Rotation llSetCameraAtOffset(ZERO_VECTOR); // entfernt die Kamera-Position llSetCameraEyeOffset(ZERO_VECTOR); // entfernt die Kamera-Ausrichtung llSitTarget(ZERO_VECTOR, ZERO_ROTATION); // entfernt die Sitz-Orientierung llSetTextureAnim(FALSE, ALL_SIDES, 1, 1, 0.0, 0.0, 0.0); // entfernt Textur-Animationen llStopSound(); // entfernt den looped Sound llDeleteCharacter(); // entfernt alle Pathfinding Einstellungen llSay(0, "This prim is plean..."); llRemoveInventory(llGetScriptName()); // entfernt sich selbst }
} </lsl>
*DS* Prim-Cleaner (LINK_SET)
<lsl> /*
*DS* Prim-Cleaner (LINK_SET) by Daemonika Nightfire Der Prim-Cleaner entfernt saemtliche Prim-Eigenschaften, die sich nicht mit dem Baumenue einstellen lassen. Diese Version aendert die Eigenschaften jedes Prims des gesamten Linksets.
- /
default {
state_entry() { llSetLinkPrimitiveParamsFast(LINK_SET,[ PRIM_TEXT, "", ZERO_VECTOR, 0.00, // entfernt den Hovertext PRIM_OMEGA, ZERO_VECTOR, 0.0, 0.0 // entfernt die Rotation ]); llLinkParticleSystem(LINK_SET, []); // entfernt die Particle llSetLinkCamera(LINK_SET, ZERO_VECTOR, ZERO_VECTOR); // entfernt die Kamera-Optionen llLinkSitTarget(LINK_SET, ZERO_VECTOR, ZERO_ROTATION); // entfernt die Sitz-Orientierung llSetLinkTextureAnim(LINK_SET, FALSE, ALL_SIDES, 1, 1, 0.0, 0.0, 0.0); // entfernt Textur-Animationen llSay(0, "This linkset is plean..."); llRemoveInventory(llGetScriptName()); // entfernt sich selbst }
} </lsl>
*DS* Fullbright FALSE (LINK_SET)
<lsl> /*
*DS* Fullbright FALSE (LINK_SET) by Daemonika Nightfire Dieses kleine Tool verwende ich sehr oft, bei Attachments die option "ganz Hell" eine Linksets abzuschalten. Besonders bei Prim Haaren kommt es oft vor, dass der Ersteller die Haare "ganz Hell" einstellt und das sieht bei Mitternacht absolut ****** aus. Natuerlich ginge das auch mit dem Baumenue, aber wir kennen das alle, man stellt in einem Grossen Linkset etwas ein und ploetzlich wird einiges zurueck gesetzt oder gar nicht erst uebernommen. Mit diesem kleinen Script hat sich das innerhalb einer Sekunde erledigt.
- /
default {
state_entry() { llSetLinkPrimitiveParamsFast(LINK_SET,[PRIM_FULLBRIGHT,ALL_SIDES,FALSE]); // deaktiviert die Option "ganz hell" (Fullbright). llRemoveInventory(llGetScriptName()); // entfernt sich selbst }
} </lsl>
*DS* Fullbright, Light & Glow FALSE (LINK_SET)
<lsl> /*
*DS* Fullbright, Light & Glow FALSE (LINK_SET) by Daemonika Nightfire Dieses kleine Tool kann dazu verwendet werden, die Viewer performance zu erhoehen. Besonders der Eintrag PRIM_POINT_LIGHT ist bei uebermaessigem gebrauch von unnuetzen Lichtquellen in einer Region sehr empfehlenswert.
- /
default {
state_entry() { llSetLinkPrimitiveParamsFast(LINK_SET,[ PRIM_FULLBRIGHT, ALL_SIDES, FALSE, // deaktiviert die Option "ganz hell" (Fullbright). PRIM_POINT_LIGHT, FALSE, <1.00000, 1.00000, 1.00000>, 1.000, 10.000, 0.750, // setzt das Licht auf Default zurueck und schaltet es ab. PRIM_GLOW, ALL_SIDES, 0.00 // schaltet den Prim Glow ab. ]); llRemoveInventory(llGetScriptName()); // entfernt sich selbst }
} </lsl>
*DS* Rotation Converter
<lsl> /*
*DS* Rotation Converter Mit diesem kleinen Tool kannst du sehr leicht und sehr schnell Rotationen in Vectoren umrechnen und anders herum. Bitte nicht wundern, dass ich das Semikolon am ende der globalen Variablen runter geentert habe, das dient einzig und allein dem Zweck es nicht aus versehen zu ueberschreiben oder loeschen.
- /
// Wenn du einen Vector benoetigst, tragte hier die Rotation (4 stellig) ein. rotation Rot2Vec = <0.00000, 0.00000, 0.70711, 0.70711>
// Wenn du eine Rotation benoetigst, trage hier einen Vector (3 stellig) ein. vector Vec2Rot = <0.00000, 0.00000, 90.00000>
default {
state_entry() { llSay(0, "Rotaton 2 Vector: " + (string)(llRot2Euler(Rot2Vec) * RAD_TO_DEG)); llSay(0, "Vector 2 Rotaton: " + (string)llEuler2Rot(Vec2Rot * DEG_TO_RAD)); }
} </lsl>
*DS* FloatLinkNumber
<lsl> /*
*DS* FloatLinkNumber by Daemonika Nightfire (daemonika.nightfire) Features: Nuetzlicher Helfer fuer Ersteller & Scripter Mit diesem Tool kannst du saemtliche Linknummern direkt als Hovertext ueber den Prims sehen Lege das Script einfach in den Root-Prim und klicke ihn zum ein/ausschalten des Hovertextes. Info: ein einzelner Prim zeigt LinkNumber 0 fuer den root in einem LINK_SET zeigt der root die LinkNumber 1
- /
integer text = 0;
// setze TRUE oder FALSE fuer mit oder ohne LinkName integer name = TRUE;
Links() {
integer i; for(i = 0; i <= llGetNumberOfPrims(); i++) { if(text) { string num; if(i < 2) { num = (string)i + " (root)"; if(name) { num = (string)i + " (root)\n" + llGetLinkName(i); } } else if(i >= 2) { num = (string)i; if(name) { num = (string)i + "\n" + llGetLinkName(i); } } llSetLinkPrimitiveParamsFast(i,[PRIM_TEXT, num, <1,1,0>, 1.0]); } else if(!text) { llSetLinkPrimitiveParamsFast(i,[PRIM_TEXT, "", ZERO_VECTOR, 0.0]); } }
}
default {
state_entry() { Links(); } touch_start(integer num_detected) { // Zum ein/aus schalten, musst du den Root Prim klicken if(llDetectedKey(0) == llGetOwner() && llDetectedLinkNumber(0) < 2) { if(!text) { text = 1; } else if(text) { text = 0; } Links(); } } on_rez(integer Dae) { llResetScript(); }
} </lsl>