Don't click here unless you want to be banned.

LSL Wiki : LibraryPasswall

HomePage :: PageIndex :: RecentChanges :: RecentlyCommented :: UserSettings :: You are crawl338.us.archive.org
This script will allow you to set up a solid wall that lets certain people pass through it (just replace "my name" etc with the names of those you wish to have access)

// access_list is the list of every person you wish to be able to trigger the wall phasing out
list access_list = ["my name", "my friend's name", "my other friend's name"];

// phase_length is the length of time in seconds to hold phantom state
float phase_length = 1.0; 

default
{
    state_entry()
    {
        // Set status to not phantom on start just in case it got stuck as phantom
        llSetStatus(STATUS_PHANTOM, FALSE);
    }
    
    collision(integer num_detected)
    {
        // check to see if the person who bumped into the wall is on the access list
        if(llListFindList(access_list, (list)llDetectedName(0)) != -1)
        {
            // if the above is true, then phase out the wall to allow passage by applying a phantom state to the prim
            llSetStatus(STATUS_PHANTOM, TRUE);
            // set the timer to activate phase_length (set at the top of the script) seconds later
            llSetTimerEvent(phase_length);
        }
    }
    
    timer()
    {
        // when the timer goes off, the wall is made solid again by removing the phantom state.
        llSetStatus(STATUS_PHANTOM, FALSE);
    }
}
There are 4 comments on this page. [Display comments/form]