From 9df0a5cbe12cff11d2b3cbca8fce3bfefbd60f62 Mon Sep 17 00:00:00 2001
From: Svornost <11434-svornost@users.noreply.gitgud.io>
Date: Wed, 24 Mar 2021 08:49:46 -0700
Subject: [PATCH] Make the family tree work in the JS Cheat Editor

---
 src/npc/startingGirls/editFamily.js    | 1 +
 src/npc/startingGirls/startingGirls.js | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/npc/startingGirls/editFamily.js b/src/npc/startingGirls/editFamily.js
index c62304af229..9f539753821 100644
--- a/src/npc/startingGirls/editFamily.js
+++ b/src/npc/startingGirls/editFamily.js
@@ -17,6 +17,7 @@ App.Intro.editFamily = function(slave, cheat) {
 	editFamily.append(makeFamilyTable());
 	editFamily.append(makeElWithID("family-tree"));
 	el.append(editFamily);
+	setTimeout(() => App.StartingGirls.uncommittedFamilyTree(slave), 0);
 
 	return el;
 
diff --git a/src/npc/startingGirls/startingGirls.js b/src/npc/startingGirls/startingGirls.js
index 28fc3195983..fb5a18b1293 100644
--- a/src/npc/startingGirls/startingGirls.js
+++ b/src/npc/startingGirls/startingGirls.js
@@ -291,8 +291,8 @@ App.StartingGirls.listOfSlavesWithParent = function(parent, id) {
  * @param {App.Entity.SlaveState} slave
  */
 App.StartingGirls.uncommittedFamilyTree = function(slave) {
-	let tSlaves = V.slaves.concat([slave]); // returns a new array
-	renderFamilyTree(tSlaves, slave.ID);
+	let tSlaves = V.slaves.filter(s => s.ID !== slave.ID); // exclude the unedited copy of this slave, if it exists
+	renderFamilyTree(tSlaves.concat([slave]), slave.ID);
 };
 
 /** Get the automatic origin that would be used for a slave, without actually changing the slave
-- 
GitLab