LlRequestSimulatorData

From Second Life Wiki

Second Life Wiki > LSL Portal > Built-in Functions > LlRequestSimulatorData
Jump to: navigation, search

Contents

Summary

Function: key llRequestSimulatorData( string region, integer data );

Requests data about region. When data is available the dataserver event will be raised.
Returns a key that is the handle for a dataserver event response.

• string region Case sensitive region name.
• integer data DATA_* flag
data Constant Type Description
DATA_SIM_POS 5 (vector) The regions global position.
DATA_SIM_STATUS 6 string Value Description
"up" region currently up and running
"down" region currently down
"starting" region currently starting
"stopping" region currently stopping
"crashed" region has crashed
"unknown" region status unknown or unknown region
DATA_SIM_RATING 7 string Value Maturity rating
"PG" File:Parcel_lght_G.png General
"MATURE" File:Parcel_lght_M.png Moderate
"ADULT" File:Parcel_lght_A.png Adult
"UNKNOWN" rating or region unknown

Caveats

  • This function causes the script to sleep for 1.0 seconds.
  • There is no DATA_SIM_TYPE or DATA_SIM_MAXPRIMS flags. SVC-4921
All Issues ~ Search JIRA for related Bugs

Examples

Hide objects in PG or unknown regions

key         gRateingQuery       =   NULL_KEY        ;
 
show()
{
    llSetLinkAlpha( LINK_SET, 1.0, ALL_SIDES );
}//show
 
hide()
{
     llSetLinkAlpha( LINK_SET, 0.0, ALL_SIDES );
}//hide
 
default
{
    on_rez(integer Setting)
    {
        llResetScript();
    }//on_rez
 
    state_entry()
    {
        gRateingQuery = llRequestSimulatorData( llGetRegionName(), DATA_SIM_RATING );
    }//state_entry
 
    changed(integer ItChanged)
    {
        if (ItChanged & CHANGED_OWNER)      llResetScript();
        if (ItChanged & CHANGED_REGION)     llResetScript();
    }//changed
 
    dataserver(key query_id, string data)
    {
        if (query_id == gRateingQuery)
        {
            if (data == "MATURE" || data == "ADULT")        show();
            else if (data == "UNKNOWN" || data == "PG")     hide();
        }//gRateingQuery
    }//dataserver
 
}//default

Deep Notes

All Issues

~ Search JIRA for related Issues
   Script dataserver events become permanently blocked until sim restart
   Please add a way to get the region type ("full", "homestead", "openspace") to llRequestSimulatorData

Tests

•  llRequestSimulatorData Test
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.
Personal tools
In other languages