2007年11月27日
戻ってくるターゲットその2
ちと改良
うーん、しかし弾によっては、ターゲットが後ろに設置した壁を突き抜けて飛んで言ってしまう。これはサイズを大きくして動きにくくするしかないのかなあ。特にLoLSBSの弾なんか使うと、もう一瞬で数百メートル飛ばされてSIM境界を越え、Lost&Foundフォルダにリターンされちゃうはめに…
vector gloc=<-1,-1,-1>;
rotation grot =<-1,-1,-1,-1>;
default
{
state_entry()
{
llSetStatus(STATUS_PHYSICS,FALSE);
llSetText("Touch me to remember this position",<1,1,0>,1);
}
on_rez(integer start_param)
{
llSetText("Touch me to remember this position",<1,1,0>,1);
}
touch_start(integer total_number)
{
gloc = llGetPos();
grot = llGetRot();
llSay(0,"Target set to "+(string)gloc);
llSetText("",<0,0,0>,0);
}
collision_start(integer num_detected) {
vector v = llDetectedVel(0);
if (llVecMag(v) >0.0){
llSetStatus(STATUS_PHYSICS,TRUE);
llSetTimerEvent(5.0);
}
}
timer() {
llSetTimerEvent(0.0);
if (gloc.z >=0){
llSetStatus(STATUS_PHYSICS,FALSE);
llSetPos(gloc);
llSetRot(grot);
}
}
}
うーん、しかし弾によっては、ターゲットが後ろに設置した壁を突き抜けて飛んで言ってしまう。これはサイズを大きくして動きにくくするしかないのかなあ。特にLoLSBSの弾なんか使うと、もう一瞬で数百メートル飛ばされてSIM境界を越え、Lost&Foundフォルダにリターンされちゃうはめに…