llList2Float
Revision as of 05:37, 21 April 2009 by Strife Onizuka (talk | contribs)
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: float llList2Float( list src, integer index );0.0 | Forced Delay |
10.0 | Energy |
Returns a float that is at index in src.
• list | src | – | List containing the element of interest. | |
• integer | index | – | Index of the element of interest. |
index supports negative indexes.
If index describes a location not in src then zero is returned.
If the type of the element at index in src is not a float it is typecast to a float. If it cannot be typecast zero is returned.
Specification
Index | Positive | Negative |
---|---|---|
First | 0
|
-length
|
Last | length - 1
|
-1
|
Indexes
- Positive indexes count from the beginning, the first item being indexed as
0
, the last as(length - 1)
.
- Negative indexes count from the far end, the first item being indexed as
-length
, the last as-1
.
Caveats
- If index is out of bounds the script continues to execute without an error message.
- A string of hexadecimal notation (e.g. "0x12A") or scientific notation (e.g. "6.2e+1") will be parsed as float and contain the correct value[1].
Examples
<lsl>// Best viewed in Chat History (ctrl-h) default {
state_entry() { list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; integer i = ~llGetListLength(my_list); while (++i) { llOwnerSay("string=" + llList2String(my_list,i) + "\n integer=" + (string)llList2Integer(my_list,i) + "\n float=" + (string)llList2Float(my_list,i) + "\n vector=" + (string)llList2Vector(my_list,i) + "\n rot=" + (string)llList2Rot(my_list,i) + "\n key=" + (string)llList2Key(my_list,i) ); } }}</lsl>