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:
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:
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