From 90e9f1f4962f932f3af0dc666f796de7b96913ea Mon Sep 17 00:00:00 2001 From: Mario Steele Date: Wed, 30 Apr 2025 16:10:03 -0500 Subject: [PATCH] Updated SammiApi Made Button ID optional in insert_array() and delete_array() Fixed dictionary to use index, instead of position for the name of the field for insert_array() and delete_array() --- addons/sammi/lib/sammi_api.gd | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/addons/sammi/lib/sammi_api.gd b/addons/sammi/lib/sammi_api.gd index 340db5c..632ac8a 100644 --- a/addons/sammi/lib/sammi_api.gd +++ b/addons/sammi/lib/sammi_api.gd @@ -106,15 +106,18 @@ func delete_variable(name: String, button_id: String = "") -> bool: last_error_description = response.error_message return false -func insert_array(name: String, position: int, value: Variant, button_id: String) -> bool: +func insert_array(name: String, position: int, value: Variant, button_id: String = "") -> bool: var api_path: String = "/api" var req: Dictionary = { "request": "insertArray", "name": name, - "position": position, - "value": value, - "buttonID": button_id + "index": position, + "value": value } + + if button_id != "": + req["buttonID"] = button_id + client.request(SammiClient.Method.POST, api_path, JSON.stringify(req)) var response: SammiClient.SammiResponse = await client.request_completed if response.code == 200: @@ -137,14 +140,17 @@ func insert_array(name: String, position: int, value: Variant, button_id: String last_error_description = response.error_message return false -func delete_array(name: String, position: int, button_id: String) -> bool: +func delete_array(name: String, position: int, button_id: String = "") -> bool: var api_path: String = "/api" var req: Dictionary = { "request": "deleteArray", "name": name, - "position": position, - "buttonID": button_id + "index": position } + + if button_id != "": + req["buttonID"] = button_id + client.request(SammiClient.Method.POST, api_path, JSON.stringify(req)) var response: SammiClient.SammiResponse = await client.request_completed if response.code == 200: