llGetInventoryNumber
function
Function syntax
integer llGetInventoryNumber(integer type// INVENTORY_* type constant to count. Values: InventoryType
);- Returns
integer- Energy
- 10
Returns the count of items of the specified type (INVENTORY_*) in the prim's inventory.
Returns an integer that is the number of items of a given type in the prims inventory.
integer result = llGetInventoryNumber(0);Specification
Section titled “Specification”
| ||||||||||||||||||||||||
Examples
Section titled “Examples”Example 1
21 collapsed lines
// Item Counter// By Apollia Pirandello// 9/19/2007//// Public domain. Free to use and/or modify for any purpose,// including commercial purposes.//// Once you drop this script in any prim, it will immediately// tell you in an OwnerSay how many items are in that prim,// minus 1, so the script itself isn't counted.//// It will also do that whenever the prim is touched.//**********SCRIPT BEGINS BELOW**********
//****VARIABLE
integer items_contained;
//****END OF VARIABLE SECTION//****FUNCTIONS****
CountItems(){ items_contained = llGetInventoryNumber( INVENTORY_ALL ); --items_contained; //minus 1, the script itself isn't counted, since its used with the INVENTORY_ALL flag}23 collapsed lines
SayCount(){ llOwnerSay( "This prim contains " + (string)items_contained + " items." );}
//****END OF FUNCTIONS****//****DEFAULT STATE****
default{ state_entry() { CountItems(); SayCount(); }
touch_start(integer total_number) { CountItems(); SayCount(); }}Example 2
objects = llGetInventoryNumber(INVENTORY_OBJECT);Example 3
// Inventory Statistic By Zep Palen.// Here is another use of llGetInventoryNumber to show a statistic in a hovertext// For this script to work you must add a showlist and an excludelist to the Description of the item this script is in.// The description field must be filled like follows: [showlist];[Excludelist]20 collapsed lines
// Example: 0,1,3,5,6,7,10,13,20,21;3,7,10// in the example all types are shown, but only types 3,7 and 10 are counted as total. You can see in the 2 lists below which number means which type// -----------------// This script is free to use and modify as you wish - Zep Palen// --------------------------
list inv_types = [0, 1, 3, 5, 6, 7, 10, 13, 20, 21];list inv_names = ["Textures", "Sounds", "Landmarks", "Clothings", "Objects", "Notecards", "Scripts", "Bodyparts", "Animations", "Gestures"];
processCountInventory(){ list objDesc = llParseString2List(llGetObjectDesc(), [";"], []); list showList = llParseString2List(llList2String(objDesc, 0), [","], []); list excludeFromCount = llParseString2List(llList2String(objDesc, 1), [","], []);
string counted = "ITEM COUNTER"; integer i = ~llGetListLength(showList); while (++i) { integer showItem = (integer)llList2String(showList, i); integer sIndex = llListFindList(inv_types, [showItem]); if (~sIndex) counted += "\n" + llList2String(inv_names, sIndex) + ": " + (string)llGetInventoryNumber(showItem); } integer totalCount = llGetInventoryNumber(INVENTORY_ALL); for (i = ~llGetListLength(excludeFromCount); ++i;) { integer exclItem = (integer)llList2String(excludeFromCount, i); integer cIndex = llListFindList(inv_types, [(string)exclItem]); if (~cIndex) totalCount = totalCount - llGetInventoryNumber(exclItem); }
19 collapsed lines
counted += "\n \n" + "Total: " + (string)totalCount; llSetText(counted, <1,1,0>, 1);}
default{ state_entry() { processCountInventory(); }
changed(integer change) { if (change & CHANGED_INVENTORY) { processCountInventory(); } }}See also
Section titled “See also”Functions
Section titled “Functions”llGetInventoryAcquireTime— Returns the time the item was added to the prim’s inventoryllGetInventoryName— Returns the inventory item’s namellGetInventoryType— Tests to see if an inventory item exists and returns its type.llGetInventoryCreator— Returns the inventory item’s creatorllGetInventoryPermMask— Returns the inventory item’s permissionsllGetInventoryKey— Returns the inventory item’s UUID (if full perm)
Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.