diff --git a/bemani/backend/danevo/danevo.py b/bemani/backend/danevo/danevo.py index fa2d0be..8b10253 100644 --- a/bemani/backend/danevo/danevo.py +++ b/bemani/backend/danevo/danevo.py @@ -84,17 +84,19 @@ class DanceEvolution( return hex(val)[2:] if profile is None: - # Just return a default empty node - record.add_child(Node.string("d", "")) - records = 1 + # Figure out what profiles are being requested + profiletypes = request.child_value("data/recv_csv").split(",")[::2] + for ptype in profiletypes: + # Just return a default empty node + record.add_child(Node.string("d", "")) + records += 1 + else: # Figure out what profiles are being requested profiletypes = request.child_value("data/recv_csv").split(",")[::2] usergamedata = profile.get_dict("usergamedata") for ptype in profiletypes: if ptype in usergamedata: - records = records + 1 - dnode = Node.string( "d", base64.b64encode(usergamedata[ptype]["strdata"]).decode("ascii"), @@ -107,6 +109,12 @@ class DanceEvolution( ) record.add_child(dnode) + else: + # Just return a default empty node + record.add_child(Node.string("d", "")) + + records += 1 + player.add_child(Node.u32("record_num", records)) playerdata.add_child(Node.s32("result", 0)) diff --git a/bemani/backend/ddr/ddrace.py b/bemani/backend/ddr/ddrace.py index 7eab353..c75233a 100644 --- a/bemani/backend/ddr/ddrace.py +++ b/bemani/backend/ddr/ddrace.py @@ -809,17 +809,18 @@ class DDRAce( return hex(val)[2:] if profile is None: - # Just return a default empty node - record.add_child(Node.string("d", "")) - records = 1 + # Figure out what profiles are being requested + profiletypes = request.child_value("data/recv_csv").split(",")[::2] + for ptype in profiletypes: + # Just return a default empty node + record.add_child(Node.string("d", "")) + records += 1 else: # Figure out what profiles are being requested profiletypes = request.child_value("data/recv_csv").split(",")[::2] usergamedata = profile.get_dict("usergamedata") for ptype in profiletypes: if ptype in usergamedata: - records = records + 1 - if ptype == "COMMON": # Return basic profile options name = profile.get_str("name") @@ -935,6 +936,12 @@ class DDRAce( ) record.add_child(dnode) + else: + # Just return a default empty node + record.add_child(Node.string("d", "")) + + records += 1 + player.add_child(Node.u32("record_num", records)) playerdata.add_child(Node.s32("result", 0))