Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Suche Lehrer

Conny Grebe
Registered User
Join date: 7 Nov 2006
Posts: 72
12-30-2006 00:34
Hi leute ;)

Ich brauche mal nen Lehrer in sachen scripting...
Ich brauche so nen dialog menu script (das blaue ding oben rechts) mit dem mann die Posebälle von einem Bett auswählen kann.

Hat evt irgend einer bock mir dabei bissel zu helfen ?
Berakos Tandino
Registered User
Join date: 2 Mar 2006
Posts: 24
12-30-2006 11:36
ich wuerds irgendwie so machen
(davon ausgehend, dass llAvatarOnSitTarget nich funzt, wenns ein <0,0,0> sittarget gibt..):

NUTZUNG AUF EIGENE GEFAHR (untested)

poseball_script:
CODE

default
{
state_entry()
{
llSitTarget(<0.0, 0.0, 0.0>, ZERO_ROTATION);
}

link_message(integer sender, integer num, string str, key id)
{
if(str == llGetObjectName()+":active")
{
llSitTarget(<0.0, 0.0, 0.05>, ZERO_ROTATION);
}
else if(str == llGetObjectName()+":inactive")
{
llSitTarget(<0.0, 0.0, 0.0>, ZERO_ROTATION);
}
}

// und jetzt halt das mehr oder weniger normale poseball script
}


script fuer den waehlknopf oder so:
CODE

integer myChan = 999;
integer ListenID;

default
{
touch_start(integer n)
{
if(n == 1)
{
ListenID = llListen(myChan, llDetectedName(0), llDetectedKey(0), "");
llDialog(llDetectedKey(0), "Waehle den Poseball", ["poseball1", "poseball2", "poseball3"], myChan);
llSetTimerEvent(10.0);
}
}

listen(integer chan, string name, key id, string msg)
{
if(msg == "poseball1")
{
llMessageLinked(LINK_SET, 0, "poseball1:active", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball2:inactive", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball3:inactive", NULL_KEY);
}
else if(msg == "poseball2")
{
llMessageLinked(LINK_SET, 0, "poseball1:inactive", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball2:active", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball3:inactive", NULL_KEY);
}
else if(msg == "poseball3")
{
llMessageLinked(LINK_SET, 0, "poseball1:inactive", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball2:inactive", NULL_KEY);
llMessageLinked(LINK_SET, 0, "poseball3:active", NULL_KEY);
}
llListenRemove(ListenID);
llSetTimerEvent(0.0);
}

timer()
{
llListenRemove(ListenID);
llSetTimerEvent(0.0);
}
}


da packst du also drei Poseballs mit Namen "poseball1", "poseball2" und "poseball3" und noch einen Waehlknopf oder so ins Bett-Linkset..

puh, mir fallen jetzt schon viele Verbesserungen ein.. -_-
(die inaktiv Meldungen an alle anderen koennten wegoptimiert werden..)

ich hoffe nur, dass llAvatarOnSitTarget echt so funzt... bin grad zu faul das zu testen T_T
Conny Grebe
Registered User
Join date: 7 Nov 2006
Posts: 72
12-30-2006 19:24
Also das mit dem menu klappt jetzt alles wunderbar und ich bin jetzt dran animationen zu erstellen.

Mein Problem dabei ist das sich der kopf immer mit dreht jeh nachdem wo man mit der maus hinsieht. das problem kriege ich nicht weg.
Berakos Tandino
Registered User
Join date: 2 Mar 2006
Posts: 24
12-31-2006 04:00
it's not a bug, it's a feature!

deine Animationen muessen auch im Kopfbereich was aendern, damit die Standardanimation ueberschrieben wird und sich der Kopf nich mehr bewegt.. aber das is doch irgendwie bloed, weil deine Sitzanimation dann total statisch wirkt :/