Difference between revisions of "Organize Inventory Items Alphabetically (CMS)"
From The Official Visionaire Studio: Adventure Game Engine Wiki
Line 29: | Line 29: | ||
-- * local variables * -- | -- * local variables * -- | ||
− | local char, items, | + | local char, items, asc, desc -- empty variables |
-- * function for toggling between ascending & descending order * -- | -- * function for toggling between ascending & descending order * -- | ||
function invSort(val) | function invSort(val) | ||
− | + | asc = function( a,b ) return a:getName() < b:getName() end -- ascending (A-Z, 1-9) | |
− | + | desc = function( a,b ) return a:getName() > b:getName() end -- descending (Z-A, 9-1) | |
− | + | if val then return asc else return desc end | |
− | |||
− | return | ||
end | end | ||
Revision as of 21:10, 12 February 2014
Name | Type | By |
---|---|---|
Organize Inventory Items Alphabetically | Definition | AFRLme |
This script allows you to organize your inventory items alphabetically in either ascending or descending order.
Instructions
1. Add the main script to the Visionaire Studio Script Editor & set the script as a definition script.
2. To organize the inventory items by ascending order, you should create an execute a script action containing:
arrangeItems(true)
3. To organize the inventory items by descending order, you should create an execute a script action containing:
arrangeItems(false)
Main Script
--[[
Organize Items Alphabetically (v2) [12/02/2014]
By AFRLme
-- + --
alternatingfrequencies@hotmail.com | skype @ AFRLme
--]]
-- * local variables * --
local char, items, asc, desc -- empty variables
-- * function for toggling between ascending & descending order * --
function invSort(val)
asc = function( a,b ) return a:getName() < b:getName() end -- ascending (A-Z, 1-9)
desc = function( a,b ) return a:getName() > b:getName() end -- descending (Z-A, 9-1)
if val then return asc else return desc end
end
-- * function for updating inventory items alphabetically * --
function arrangeItems(val)
char = game:getLink(VGameCurrentCharacter) -- store current character
items = char:getLinks(VCharacterItems) -- store items
table.sort(items, invSort(val)) -- sort the items alphabetically
char:setValue(VCharacterItems, items) -- amend new item order to the inventory
end