Insert Sort using arrays, for giggles:
*title Insert Sort Test
*author RTWojick
*scene_list
startup
*create leadership 50
*create strength 50
*create intellect 50
*create agility 50
*create stat_0 ""
*create stat_1 ""
*create stat_2 ""
*create stat_3 ""
*create val_0 0
*create val_1 0
*create val_2 0
*create val_3 0
*label reset
*set stat_0 "leadership"
*set stat_1 "strength"
*set stat_2 "intellect"
*set stat_3 "agility"
*rand leadership 1 100
*rand strength 1 100
*rand intellect 1 100
*rand agility 1 100
*set val_0 leadership
*set val_1 strength
*set val_2 intellect
*set val_3 agility
Insert Sort Test
*page_break
*gosub insert_sort
Unsorted:
*stat_chart
text Leadership
text Strength
text Intellect
text Agility
*line_break
Sorted:
*line_break
${stat_0}: ${val_0}
*line_break
${stat_1}: ${val_1}
*line_break
${stat_2}: ${val_2}
*line_break
${stat_3}: ${val_3}
*page_break
*goto reset
*label insert_sort
*temp i 1
*temp j 0
*temp curr_stat ""
*temp curr_val 0
*label sort_start
*set curr_stat stat[i]
*set curr_val val[i]
*set j (i - 1)
*label shift_vals
*if (j >= 0)
*if (val[j] < curr_val)
*set val[j + 1] val[j]
*set stat[j + 1] stat[j]
*set j -1
*goto shift_vals
*set val[j + 1] curr_val
*set stat[j + 1] curr_stat
*set i +1
*if (i < 4)
*goto sort_start
*return