Examples

Useful Snippets

string InventoryName(string name, integer type){//finds an item in a case insensitive fashion of the given type and returns its true name.integer a =llGetInventoryType(name);
if(!~a)//a == INVENTORY_NONE{//it should be noted that INVENTORY_NONE == INVENTORY_ALL == -1; which is why '!~a' works.string lc_name =llToLower(name);
a =llGetInventoryNumber(type);
while(a){//(a = ~-a) is equivalent to --a, but runs faster.if(llToLower(name =llGetInventoryName(type, a =~-a))== lc_name){//we found a match ^_^return name;
}}}elseif((a == type)^(!~type))//return name, as long as a == type or type == INVENTORY_ALL{//we already know that a != INVENTORY_NONE, but just in case we use xor instead of or.return name;
}return"";//no match ~_~}integer InventoryExists(string name, integer type){//only included to show how this type of check could be done if the value of 'type' is not constant and could be INVENTORY_ALL.return(llGetInventoryType(name)== type)^(!~type);
}//Since INVENTORY_ALL == INVENTORY_NONE, the extra part on the end is required to invert the result.