From b1fc33e1ef4ced43c636db0dd976755c1973b533 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Thu, 25 Mar 2021 23:01:03 -0400
Subject: [PATCH] update saveTools/fc_edit_save.py

---
 saveTools/fc_edit_save.py | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/saveTools/fc_edit_save.py b/saveTools/fc_edit_save.py
index 9868a8a245b..3925dfcf2ca 100755
--- a/saveTools/fc_edit_save.py
+++ b/saveTools/fc_edit_save.py
@@ -1027,8 +1027,9 @@ def generate_slave_id(game_vars):
     """Returns the next available slave ID."""
     # for compatibility, use the same technique as the Javascript code
     all_slave_ids = []
-    for slist in ["slaves", "tanks", "cribs"]:
+    for slist in ["slaves", "cribs"]:
         all_slave_ids += [slave["ID"] for slave in game_vars[slist]]
+        all_slave_ids += [slave["ID"] for slave in game_vars["incubator"]["tanks"]]
     while game_vars["IDNumber"] in all_slave_ids:
         game_vars["IDNumber"] += 1
     # ugly way to do the same as "return V.IDNumber++;" in src/js/utilsFC.js
@@ -1114,11 +1115,11 @@ def clone_slave(game_vars, orig_slave, same_parents=False):
         clone_num += 1
         new_slave["birthName"] = f"{base_name} {clone_num}"
     new_slave["assignment"] = "rest"
-    if game_vars["JobIDArray"]:
-        if "rest" in game_vars["JobIDArray"]:
-            game_vars["JobIDArray"]["rest"].append(new_slave["ID"])
+    if game_vars["JobIDMap"]:
+        if "rest" in game_vars["JobIDMap"]:
+            game_vars["JobIDMap"]["rest"].append(new_slave["ID"])
         else:
-            game_vars["JobIDArray"]["rest"] = [new_slave["ID"]]
+            game_vars["JobIDMap"]["rest"] = [new_slave["ID"]]
     if game_vars["slaveIndices"]:
         max_val = max(game_vars["slaveIndices"].values())
         game_vars["slaveIndices"][str(new_slave["ID"])] = max_val + 1
-- 
GitLab