Difference between revisions of "Open Group Join"

From Second Life Wiki
Jump to navigation Jump to search
m (0 >> PUBLIC_CHANNEL)
(Make appropriate use of NULL_KEY. SLUniverse vote.)
Line 6: Line 6:
User Touches object for a link in Local Chat that when clicked from History will open the Group Information Window. If Group is set to Open Enrollment the user may JOIN.
User Touches object for a link in Local Chat that when clicked from History will open the Group Information Window. If Group is set to Open Enrollment the user may JOIN.


The object this script is in must be set to Group you want people to Join.
The object this script is in must be set to the group you want people to join.
<lsl>
<lsl>
string groupkey;


findgroupkey()
findgroupkey()
{
{
     list a = llGetObjectDetails(llGetKey(), [OBJECT_GROUP]);
     list TempList = llGetObjectDetails(llGetKey(), [OBJECT_GROUP]);
     groupkey = llList2String(a,0);
     key groupkey = llList2Key(TempList, 0);
     if (groupkey == "00000000-0000-0000-0000-000000000000")
     if (groupkey == NULL_KEY)
     {
     {
         llWhisper(PUBLIC_CHANNEL, "Set the Group for this object in EDIT under the GENERAL tab and be sure your Group is Open Enrollment.");
         llWhisper(0, "Set the Group for this object in EDIT under the GENERAL tab and be sure your Group is Open Enrollment.");
     }
     }
     else
     else
     {
     {
         llWhisper(PUBLIC_CHANNEL, "Click the link from Chat History (Ctrl+H) and then click on JOIN button! secondlife:///app/group/" + groupkey + "/about");
         llWhisper(0, "Click the link from Chat History (Ctrl+H) and then click on JOIN button! secondlife:///app/group/" + (string) groupkey + "/about");
     }
     }
}
}
Line 28: Line 27:
     state_entry()
     state_entry()
     {
     {
         llSetText("Touch to Join\nour Group", <1.0, 1.0, 1.0>, 1.0); //white and opaque floating text, optional
         llSetText("Touch to Join\nour Group", <1, 1, 1>, 1.0); // white and opaque floating text, optional
         findgroupkey();
         findgroupkey();
     }
     }

Revision as of 13:16, 26 March 2014

User Touches Object to Join Group

No bot needed for this script.

User Touches object for a link in Local Chat that when clicked from History will open the Group Information Window. If Group is set to Open Enrollment the user may JOIN.

The object this script is in must be set to the group you want people to join. <lsl>

findgroupkey() {

   list TempList = llGetObjectDetails(llGetKey(), [OBJECT_GROUP]);
   key groupkey = llList2Key(TempList, 0);
   if (groupkey == NULL_KEY)
   {
       llWhisper(0, "Set the Group for this object in EDIT under the GENERAL tab and be sure your Group is Open Enrollment.");
   }
   else
   {
       llWhisper(0, "Click the link from Chat History (Ctrl+H) and then click on JOIN button! secondlife:///app/group/" + (string) groupkey + "/about");
   }

}

default {

   state_entry()
   {
       llSetText("Touch to Join\nour Group", <1, 1, 1>, 1.0); // white and opaque floating text, optional
       findgroupkey();
   }
   touch_start(integer total_number)
   {
       findgroupkey();
   }

} </lsl> If the object Group must be different because of land settings use this object somewhere where you are allowed and Copy the message said from Chat History. Then create a simple script that whispers this message when Touched.


More scripts: http://www.aliciastella.com