From a54edd2c0a2fc3ca851e14be96068909a56a42df Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Sun, 31 Aug 2025 19:24:11 -0400 Subject: [Client] Batch sending locations on map load --- client/Archipelago/manager.gd | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'client/Archipelago/manager.gd') diff --git a/client/Archipelago/manager.gd b/client/Archipelago/manager.gd index 60b447a..f83d0cc 100644 --- a/client/Archipelago/manager.gd +++ b/client/Archipelago/manager.gd @@ -16,6 +16,8 @@ var client var _localdata_file = "" var _received_indexes = [] var _last_new_item = -1 +var _batch_locations = false +var _held_locations = [] signal could_not_connect signal connect_status @@ -286,8 +288,21 @@ func _client_connected(): emit_signal("ap_connected") +func start_batching_locations(): + _batch_locations = true + + func send_location(loc_id): - client.sendLocation(loc_id) + if _batch_locations: + _held_locations.append(loc_id) + else: + client.sendLocation(loc_id) + + +func stop_batching_locations(): + _batch_locations = false + client.sendLocations(_held_locations) + _held_locations.clear() func colorForItemType(flags): -- cgit 1.4.1