i went with llTargetOmega(). Nox i was in the need to rotate and stop at the original given position. since llTargetOmega doesnt have this ability (as far as i know... because not changing prims rotation), i decided to play arround with the get/set prim and get/set rot funtions.
now i thought going with llSetRot() would be nice... but the rotation itself in a timer()
the first ~5 moves are fine... then it gets stuck....
IS THERE ANY acceptable way to rotate a non-physical (better bother) prim, smoothly, with on touch get back to old position ?
this seems to me such a basic task....
cheers
Ralf
-------- schnipp
integer gOnoff = FALSE;
rotation gEndpos;
rotation gRot;
default
{
on_rez(integer s)
{
llWhisper(0, "reseting...."
;llResetScript();
}
state_entry()
{
llWhisper(0, "rotation script starting ..."
;gEndpos = llGetRot(); // aktuelle rotation ermitteln
llSay(0, (string)gEndpos);
}
touch_start(integer total_number)
{
gOnoff =! gOnoff; // Statuswechsel
if(gOnoff == FALSE) //to off
{
llSay(0, "rotate off"
;llSetTimerEvent(0); //timer stoppen
llSetRot(gEndpos);
}
else //to on
{
llSay(0, "rotate on"
;gEndpos = llGetRot(); // get position
llSetTimerEvent(0.2); // timer set
}
}