OsGetNotecardLine

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(New page: '''osGetNotecardLine'''(string name, integer line) This function directly reads a line of text from the specified notecard, if it exists within the task inventory, and returns the text a...)
 
m (XEngine to OSSL)
 
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
'''osGetNotecardLine'''(string name, integer line)  
+
{{osslfunc
 +
|threat_level=VeryHigh
 +
|permissions=${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
 +
|delay=0
 +
|function_syntax=string osGetNotecardLine(string name, integer line)
 +
|ossl_example=<source lang="lsl">
 +
// osGetNotecardLine exemple
  
This function directly reads a line of text from the specified notecard, if it exists within the task inventory, and returns the text as a string. It skips the dataserver event, thereby reducing code complexity. This function has a threat level of Very High:
+
default
 
+
{
<br> ''From OSSL_Api.cs:''
+
     state_entry()
<blockquote>"due to the synchronous method this function uses to fetch assets, its use may be dangerous and unreliable while running in grid mode."</blockquote>
+
    {
 
+
 
+
<code><pre>//Example usage:
+
default {
+
     state_entry() {
+
 
         integer i;
 
         integer i;
         string notecard = llGetInventoryName(INVENTORY_NOTECARD, 0);
+
         string notecard_name = llGetInventoryName(INVENTORY_NOTECARD, 0);
         for(i=1; i&lt;=osGetNumberOfNotecardLines(notecard); i++) {
+
        integer notecard_line = osGetNumberOfNotecardLines(notecard_name);
             llSay(0, osGetNotecardLine(notecard, i));
+
       
 +
         for(i = 0; i < notecard_line; ++i)
 +
        {
 +
             llSay(PUBLIC_CHANNEL, llStringTrim(osGetNotecardLine(notecard_name, i), STRING_TRIM));
 
         }
 
         }
 
     }
 
     }
 
}
 
}
</pre></code>
+
</source>
 +
|description=This function directly reads a line of text from the specified notecard, if it exists within the task inventory, and returns the text as a string. It skips the dataserver event, thereby reducing code complexity.
 +
|additional_info=The index to lines in a notecard starts at zero.
 +
|
 +
}}

Latest revision as of 07:35, 7 November 2019

string osGetNotecardLine(string name, integer line)
This function directly reads a line of text from the specified notecard, if it exists within the task inventory, and returns the text as a string. It skips the dataserver event, thereby reducing code complexity.
Threat Level VeryHigh
Permissions ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
Extra Delay 0 seconds
Example(s)
// osGetNotecardLine exemple
 
default 
{
    state_entry()
    {
        integer i;
        string notecard_name = llGetInventoryName(INVENTORY_NOTECARD, 0);
        integer notecard_line = osGetNumberOfNotecardLines(notecard_name);
 
        for(i = 0; i < notecard_line; ++i)
        {
            llSay(PUBLIC_CHANNEL, llStringTrim(osGetNotecardLine(notecard_name, i), STRING_TRIM));
        }
    }
}
Notes
The index to lines in a notecard starts at zero.
Personal tools
General
About This Wiki