Skip to content

Commit

Permalink
sort SET by group so that groups can be iterated contiguously (will b…
Browse files Browse the repository at this point in the history
…e relevant for UNIT settings)
  • Loading branch information
bbbradsmith committed Apr 22, 2024
1 parent 19a0f10 commit aa32e81
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions enums/nsfplayenums.py
Original file line number Diff line number Diff line change
Expand Up @@ -717,6 +717,8 @@ def generate_enums(file_enum,file_data,do_write):
gen_break(0);
gen_line("};",1)
gen_break(1)
# sort settings by group
sorted_sets = sorted([(defs_set[i][0],i) for i in range(len(defs_set))])
# map each setting to a text index, gather locale strings
gen_enum("NSFP_SET_COUNT",len(defs_set))
gen_line("typedef struct {",1)
Expand All @@ -727,7 +729,8 @@ def generate_enums(file_enum,file_data,do_write):
gen_line("} NSFSetData;",1)
gen_line("const NSFSetData NSFPD_SET[NSFP_SET_COUNT] = {",1)
setstr_count = 0
for si in range(len(defs_set)):
for ssi in range(len(sorted_sets)):
si = sorted_sets[ssi][1]
gi = defs_set[si][0]
group_key = defs_setgroup[gi][0]
set_key = defs_set[si][1]
Expand All @@ -744,7 +747,7 @@ def generate_enums(file_enum,file_data,do_write):
list_index = -1
if defs_set[si][5] != None: list_index = defs_set[si][5]
gen_line("\t{ %30s,%3d,%4d,%7d,%7d,%7d,%3d,%s }," % ('"'+set_key+'"',gi,len(table_locale[0]),default_int,defs_set[si][3],defs_set[si][4],list_index,default_str),1)
gen_enum("NSFP_SET_"+set_key,si)
gen_enum("NSFP_SET_"+set_key,ssi)
names = [set_key for i in range(locs)]
descs = [set_key for i in range(locs)]
for i in range(locs):
Expand Down

0 comments on commit aa32e81

Please sign in to comment.