here are the 2 states I am using. The first is to add a name to the list and the second will be to remove a name from the list.
state load
{
state_entry()
{
llListenRemove(handle);
llListen(0, "", NULL_KEY, ""

;
}
listen(integer channel, string name, key id, string message)
{
llGetSubString(message,0,llStringLength(message));
av_list += (string)message;
llOwnerSay(message + " added!"

;
state default;
}
}
state remove
{
state_entry()
{
llListenRemove(handle);
llListen(0, "", NULL_KEY, ""

;
}
listen(integer channel, string name, key id, string message)
{
llGetSubString(message,0,llStringLength(message));
av_list -= (string)message;
llOwnerSay(message + " removed!"

;
state default;
}
}
I was thinking since + adds to the list that - would remove, but I must be wrong.