From d7fce98f75752a956f757e96c2c8c2a7539a4dc6 Mon Sep 17 00:00:00 2001 From: PNWParksFan Date: Mon, 23 Apr 2018 01:18:50 -0700 Subject: [PATCH] Added sanity check to saving path node files --- Project/ProjectForm.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Project/ProjectForm.cs b/Project/ProjectForm.cs index e88895a..24d7e59 100644 --- a/Project/ProjectForm.cs +++ b/Project/ProjectForm.cs @@ -1871,6 +1871,17 @@ namespace CodeWalker.Project { if ((CurrentYndFile == null) && (CurrentPathNode != null)) CurrentYndFile = CurrentPathNode.Ynd; if (CurrentYndFile == null) return; + + // Check that vehicle nodes and ped nodes add up to total nodes + if(CurrentYndFile.NodeDictionary != null && (CurrentYndFile.NodeDictionary.NodesCountPed + CurrentYndFile.NodeDictionary.NodesCountVehicle != CurrentYndFile.NodeDictionary.NodesCount)) + { + var result = MessageBox.Show($"YND Area {CurrentYndFile.AreaID}: The total number of nodes ({CurrentYndFile.NodeDictionary.NodesCount}) does not match the total number of ped ({CurrentYndFile.NodeDictionary.NodesCountPed}) and vehicle ({CurrentYndFile.NodeDictionary.NodesCountVehicle}) nodes. You should manually adjust the number of nodes on the YND screen.\n\nDo you want to continue saving the YND file? Some of your nodes may not work in game.", $"Node count mismatch in Area {CurrentYndFile.AreaID}", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); + if(result == DialogResult.Cancel) + { + return; + } + } + string yndname = CurrentYndFile.Name; string filepath = CurrentYndFile.FilePath; if (string.IsNullOrEmpty(filepath))