• Bitte schaltet eure Ad Blocker aus. SLinfo kann nur betrieben werden, wenn es durch Werbung Einnahmen erzielt. Vielen Dank!!
  • Wir freuen uns, wenn du dich in unserem Forum anmeldest. Bitte beachte, dass die Freigabe per Hand durchgeführt wird (Schutz vor Spammer). Damit kann die Freigabe bis zu 24 Stunden dauern.
  • Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Sie geben Einwilligung zu unseren Cookies, wenn Sie unsere Webseite weiterhin nutzen.

Suche ein script das bei touch einen prim phantom macht

suche für eine tür die stehen bleibt ein script das den prim phantom macht und die textur transparenter macht wenn man sie berührt..wer da ahnung hat..meldet sich bitte bei mir..danke
 
// Tuerscript, lässt einen Prim zu einem Phantom werden wenn der Eigentümer es anklickt
// bei nochmaligen anklicken wird es wieder "normal"



default // Status default setzt das Objekt auf Beruehrbar, fest
{ // und ruft bei beruerung den status phantom auf.
state_entry()
{
llOwnerSay("Door is closed");
llSetPrimitiveParams([PRIM_PHANTOM, FALSE]);
}
touch_start(integer total_number)
{
if ( llDetectedKey(0) == llGetOwner() )
{
state phantom;
}
}

}

state phantom // Status Phantom setzt das Objekt auf nicht beruehrbar, phantom
{ // und ruft bei beruerung den status default auf.
state_entry()
{
llSay(0, "You are wellcome to pass me throu");
llSetPrimitiveParams([PRIM_PHANTOM, TRUE]);
}
touch_start(integer total_number)
{
state default;
}
}

:) mfg thinkangel
 
Günstiger als das Warten auf eine neue Berührung ist die Verwendung eines Timers der die Tür nach einer definierten Zeit zurück in den Normalzustand setzt.

Müßte irgendwo im Inventar was passendes von meinen Experimenten haben..schreib mich IG mal an..ach was solls, hatte gerade etwas Zeit ;)

Zwischen Phantom und Fest kannst du mit llVolumeDetect( integer detect ); umschalten.
llVolumeDetect(FALSE); = Fest und llVolumeDetect(TRUE); = Phantom

Das schöne an dieser Funktion ist, daß deine Tür trotzdem noch eine Kollisionserkennung machen würde, so kann man z.B. einen Türgong ertönen lassen wenn jemand hindurchgeht oder eine Begrüßung starten.

Die Transparenz der Textur (eigentlich des ganzen Prims) kannst du über llsetAlpha(float alpha, integer face); steuern.
Alpha geht von 0.0(transparent) bis 1.0 (undurchsichtig)

Mit llSetColor( vector color, integer face) kannst du die Farbe zusätzlich verändern wenn du willst.

Faces steht sowohl bei setAlpha als auch bei setColor dafür auf welche Flächen sich der Befehl auswirkt, -1 bedeutet alle Flächen.

default
{
state_entry()
{
llVolumeDetect(FALSE);
llSetAlpha(1.0,-1);
}

touch_start(integer total_number)
{
llVolumeDetect(TRUE);
llSetTimerEvent(15.0);
llSetAlpha(0.3,-1);
}

timer() {
llResetScript();
}
}
 
Noch ne frage?

ich habe das script in die tür eingebunden..das funktioniert auch super..nur wenn ich die türmit dem gebäude linke..wirkt sich das script auf das ganze haus aus..es bird trabsparent und phantom? wie kann ich das verthindern?
 
Ganz einfach : Nicht verlinken :wink:

Im Ernst das ist keine Veralberung, das selbe Problem tritt auf wenn du eine Tür mit Rotationsscript mit dem Haus verlinkst - dann dreht sich das Haus (ein faszinierender Anblick).

Verlinkte Objekte stellen für viele Manipulationsroutinen eine Einheit dar zu daß sie auch komplett von ihnen verändert werden.
 

Users who are viewing this thread

Zurück
Oben Unten