Difference between revisions of "ListXandY"
Jump to navigation
Jump to search
(New page: {{LSL Header}} __NOTOC__ <div id="box"> == Function: list ListXandY(list {{LSL Param|lx}}, list {{LSL Param|ly}}); == <div style="padding: 0.5em;"> This function examines two l...) |
|||
Line 29: | Line 29: | ||
default{ | default{ | ||
state_entry() { | state_entry() { | ||
llSay(0, "The | llSay(0, "The two lists have the following items in common: " + llList2CSV(ListXandY(l1,l2)) ); | ||
//will say: a, b, c | //will say: a, b, c | ||
} | } |
Revision as of 15:55, 12 July 2008
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Function: list ListXandY(list lx, list ly);
This function examines two lists, and returns a new list composed of the elements that both lists have in common.
<lsl> list ListXandY(list lx, list ly) {// return a list of elements common to both lists
list lz = []; integer x; for (x = 0; x < llGetListLength(ly); x++) { if (~llListFindList(lx,llList2List(ly,x,x))) { lz = lz + llList2List(ly,x,x); } else { ; } } return lz;
} </lsl>
Example:
<lsl> list l1 = ["a","b","c","d"]; list l2 = ["a","1","b","2","c","3"];
default{
state_entry() { llSay(0, "The two lists have the following items in common: " + llList2CSV(ListXandY(l1,l2)) ); //will say: a, b, c }
} </lsl>
Posted with the kind permission of Very Keynes, which originated this script June 2007 in the SL scripters forum http://forums.secondlife.com/showthread.php?t=194138