llSleep(10);
Put this in in the stand up bit before it goes back to its default state.
Another solution I was thinking of is to record the last 5 people that used a camping spot and not to let anyone back on if they were one of the last 5.
like...
key user;
key camper1;
key camper2;
key camper3;
key camper4;
key camper5;
default
{
state_entry()
{
llSitTarget(<0.0, 0.0, 2.5>, <0.0, 0.0, -PI/4, 1.0>

;
}
changed(integer change)
{
if (change & CHANGED_LINK)
{
if (llAvatarOnSitTarget() != NULL_KEY)
{
user = llAvatarOnSitTarget();
if (user == camper1)
{
llUnSit(user);
llSay(0,"Sorry! 4 more people need to use this spot before you can re sit here."

;
}
else if (user == camper2)
{
llUnSit(user);
llSay(0,"Sorry! 3 more people need to use this spot before you can re sit here."

;
}
else if (user == camper3)
{
llUnSit(user);
llSay(0,"Sorry! 2 more people need to use this spot before you can re sit here."

;
}
else if (user == camper4)
{
llUnSit(user);
llSay(0,"Sorry! 1 more people need to use this spot before you can re sit here."

;
}
else
{
camper5 = camper4;
camper4 = camper3;
camper3 = camper2;
camper2 = camper1;
camper1 = user;
}
}
}
}
}
You should be able to add the above minus the bit about Sit Targets as a separate script into your camping seats and it will eject recent campers. The Sit Target bit was needed just to test it out on a random prim, but if used in a camping spot the target should already be set.
Just an idea.