Difference between revisions of "LlList2Float"

From Second Life Wiki
Jump to navigation Jump to search
(LSLG is antiquated and shouldn't be used.)
m (lsl code tagging)
Line 11: Line 11:
**A true typecast will handle both properly: (float)[[llList2String]](src, index);
**A true typecast will handle both properly: (float)[[llList2String]](src, index);
|constants
|constants
|examples=<pre>// Best viewed in Chat History (ctrl-h)
|examples=
<lsl>
// Best viewed in Chat History (ctrl-h)
default
default
{
{
Line 28: Line 30:
         }
         }
     }
     }
}</pre>
}
</lsl>
|helpers
|helpers
|also_functions={{LSL DefineRow||[[llGetListEntryType]]|}}
|also_functions={{LSL DefineRow||[[llGetListEntryType]]|}}

Revision as of 14:18, 30 March 2008

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
• integer index

index supports negative indexes. If the type of the entry at index in src is not a float it is typecast into 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.
  • When used to typecast from a string it can only handle floats in simple notation. It will not handle hex formats or scientific notation.
    • A true typecast will handle both properly: (float)llList2String(src, index);

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;
       for (i=0;i<llGetListLength(my_list); ++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>

See Also

Functions

•  llGetListEntryType
•  llList2Integer
•  llList2String

Articles

•  Negative Index

Deep Notes

Signature

function float llList2Float( list src, integer index );