//// Base script (in the rezzer box/platform) ////
default
{
state_entry()
{
llOwnerSay("When you are satisfied with all positions touch me"
;}
touch_start(integer CHANNEL)
{
if (llDetectedKey(0) == llGetOwner())
{
llSay(99887766,(string)llGetPos());
}
}
}
//////////Remote, (in all objects that will be rezed) //////////
default
{
state_entry()
{
llListen(99887766,"",NULL_KEY,""
;}
listen(integer CHANNEL, string name, key id, string message)
{
vector REZPOS = (vector)message;
vector MYPOS = llGetPos() + llGetGeometricCenter();
rotation MYROT = llGetRot();
vector OFFSET = MYPOS - REZPOS;
llSay(0,"llRezObject("+llGetObjectName()+", llGetPos()+"+(string)OFFSET+",<0,0,0>,"+(string)MYROT+",rezchan);"
;llRemoveInventory(llGetScriptName());
}
}
//////////////////////////////////////////////////////////////////////////////////////
In this way each object says its rez comand (minus the "" aroudn the name but I can live with that).
The problem is that it dosn't give the correct offset I've tried substetuting center of mass for geometric center with no luck. I might just be to sick of the sight of it so if anyone can point out the error and fix please do.
