I'm trying to create my own greeter using a sensor.
I've set up to detect each agent and determine whether they have been greeted once already while in sensor range (list lstDet
.I've then saved that list as all agents detected in sensor range (list AllDet
.Now, as agents leave the sensor range, I want to remove the agents from the (list AllDet
and create a new (list lstDet
. So that as they re-enter the sensor range, the same agent will recieve another greeting. I think I'm almost there but the "list" manipulation has proven a little mind boggling for me. Any help on this would be greatly appreciated!

CODE
// Sensor Range
float range = 96.0;
//Sensor rate
float rate = 1.0;
//First Welcomed Avatars
list lstDet;
//All Detected Avatars
list AllDet;
//Detected Avatar
key DetAV;
default
{
state_entry()
{
llSensorRepeat( "", "", AGENT, range, TWO_PI, rate );
}
on_rez(integer start_params)
{
llResetScript();
}
sensor( integer number_detected )
{
integer j;
integer count = number_detected;
for (j = 0; j < count; j++)
{
DetAV = llDetectedKey(j);
if (llListFindList(lstDet, [DetAV]) == -1)
{
llWhisper(0," Welcome to Slow Circle Intents " + llKey2Name(DetAV) + ". Enjoy your stay here and have a great SL day!");
integer list_length = llGetListLength(lstDet);
if(list_length >= 200)
{
lstDet = llDeleteSubList(lstDet,0 , 100);
lstDet = (lstDet=[]) + lstDet + [DetAV];
}
lstDet = (lstDet=[]) + lstDet + [DetAV];
AllDet = lstDet;
}
}
}
}