Difference between revisions of "LlList2Float"
Jump to navigation
Jump to search
(LSLG is antiquated and shouldn't be used.) |
m (<lsl> tag to <source>) |
||
(18 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL_Function | {{LSL_Function | ||
|inject-2={{Issues/SVC-798}}{{LSL_Function/list/element|src|index|float|return={{HoverText|zero|0.0}}}} | |||
|func_id=187|func_sleep=0.0|func_energy=10.0 | |func_id=187|func_sleep=0.0|func_energy=10.0 | ||
|func=llList2Float|return_type=float|p1_type=list|p1_name=src|p2_type=integer|p2_name=index | |func=llList2Float|return_type=float|p1_type=list|p1_name=src|p2_type=integer|p2_name=index | ||
|func_footnote= | |func_footnote= | ||
{{LSL Tip|Please read [[User:Kireji_Haiku/How_to_deal_with_lists_in_LSL|this intro of how to iterate over a list in LSL]].}} | |||
|func_desc | |func_desc | ||
|sort=List2Float | |sort=List2Float | ||
|return_text=that is at | |return_text=that is at {{LSLP|index}} in {{LSLP|src}}. | ||
|spec | |spec | ||
|caveats=* | |caveats=*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{{Footnote|Correct with in the limitations of the [[float]] type.}}. | ||
|constants | |constants | ||
|examples=< | |examples= | ||
<source lang="lsl2">// Best viewed in Chat History (ctrl-h) | |||
default | default | ||
{ | { | ||
Line 17: | Line 18: | ||
{ | { | ||
list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; | list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; | ||
integer | integer i = ~llGetListLength(my_list); | ||
while (++i) | |||
{ | { | ||
llOwnerSay("string=" + llList2String(my_list,i) | llOwnerSay("string=" + llList2String(my_list,i) | ||
Line 28: | Line 29: | ||
} | } | ||
} | } | ||
}</ | }</source> | ||
|helpers | |helpers | ||
|also_functions={{LSL DefineRow||[[llGetListEntryType]]|}} | |also_functions= | ||
{{LSL DefineRow||[[llGetListEntryType]]|}} | |||
{{LSL DefineRow||[[llList2Integer]]|}} | {{LSL DefineRow||[[llList2Integer]]|}} | ||
{{LSL DefineRow||[[llList2String]]|}} | {{LSL DefineRow||[[llList2String]]|}} | ||
Line 37: | Line 39: | ||
|also_articles | |also_articles | ||
|notes | |notes | ||
|issues | |||
|cat1=List | |cat1=List | ||
|cat2 | |cat2 |
Latest revision as of 10:42, 22 January 2015
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.
Important: Please read this intro of how to iterate over a list in LSL. |
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
// 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) );
}
}
}