Jump to content

Proximity greeter with personalised names?


Grim Hijinks
 Share

You are about to reply to a thread that has been inactive for 1378 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

It's done all the time.  You might be detecting the person with a llSensor or be noticing when the person collides with a tripwired prim, or you could take a more modern approach and maintain a list of avatars on the region with llGetAgentList a couple of times a minute and then use llGetObjectDetails and llVecDist to find out who's close enough to be worth noticing.  Any of those methods (and several others) will let you capture the UUID of a potential victim.  With that and either llGetUsername or llGetDisplayName you can get the person's name to include in your greeting.

Link to comment
Share on other sites

And if you don't want to get muted you need to maintain a list of all avatars you already greeted and don't greet them over and over again. 😁

If you want to do a "welcome back" greeting you need to track the ones that were already greeted but come back.

Edited by Nova Convair
  • Like 1
Link to comment
Share on other sites

I have a greet module which works using llGetAgentList() and maintaining a list of people on the current parcel.  It handles the bookkeeping of arrivals and departures as well as maintaining a list of avatar names looked up from their UUIDs, and announces arrivals and departures to other scripts in the link set via llMessageLinked().  It is part of my Utility Amulet, which is available for free on the Marketplace and is full permissions (including the scripts).  You can extract the script (called Welcome) from the Contents of that item or examine and download it directly from the Utility Amulet repository on GitHub as file welcome.lsl.  The script is Creative Commons/Attribution and you're welcome to use it as you wish.  In Utility Amulet I use it to announce arrivals and departures on the wearer's current parcel and allow teleporting to an arrival's location.

You can also use llSensor(), but it has limitations in that, for example, it won't return more than 16 items per scan, and doesn't automatically understand the boundaries of the parcel as llGetAgentList() does.

  • Like 1
  • Thanks 2
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 1378 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...