This may be easier than I'm making it on myself. I am relatively new to Lua, but experienced in other languages.
I have a table that looks like this:
local state = {}
state[1] = {
show = true,
changed = true,
progressType = "static",
value = 0,
total = 9,
name = "nine",
}
state[2] = {
show = true,
changed = true,
progressType = "static",
value = 0,
total = 7,
name = "seven",
}
state[3] = {
show = true,
changed = true,
progressType = "static",
value = 0,
total = 8,
name = "eight",
}
state[4] = {
show = true,
changed = true,
progressType = "static",
value = 0,
total = 6,
name = "six",
}
What I need to do is sort each table[] entry based on the value of table.value5. I can't find any functions in the docs that expressely say they do more than just a basic table.sort so I find myself a bit stuck. Do I need to manually sort by iterating through and creating a new table with the sorted data?
table.sortoptions, and use a 'comp' function to define order. (I'm assuming you want to sort the array part of the list as you can't sort key-value pairs.)state[4]would become first becausestate[4].totalis lowest, and the data fromstate[1]would become last becausestate[1].totalis highest. This is because the parent function reading this data needs it ordered by.totalto be displayed.table.sort(state,function (a,b) return a.total < b.total end)