From 9292d8db62822313bc1fea37625474a6df616886 Mon Sep 17 00:00:00 2001 From: Downforce Agent Date: Thu, 20 Feb 2025 10:39:19 -0600 Subject: [PATCH] Check for dependencies before opening any menus that require them --- firestar/src/main/java/MissPiggy.java | 6 +++++- firestar/src/main/java/Waldorf.java | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/firestar/src/main/java/MissPiggy.java b/firestar/src/main/java/MissPiggy.java index 9dca432..9a33dbb 100644 --- a/firestar/src/main/java/MissPiggy.java +++ b/firestar/src/main/java/MissPiggy.java @@ -345,7 +345,11 @@ public class MissPiggy implements ActionListener { if (actionEvent.getSource() == toolsMenu.getItem(0)) {metaEditorGUI(modList.getSelectedIndex());} else if (actionEvent.getSource() == toolsMenu.getItem(1)) {generatorGUI();} else - if (actionEvent.getSource() == toolsMenu.getItem(2)) {new Suggs(frame);} else + if (actionEvent.getSource() == toolsMenu.getItem(2)) { + if (!new File(Main.inpath + "at9tool.exe").exists() || !new File(Main.inpath + "ffmpeg.exe").exists()) + JOptionPane.showMessageDialog(frame, "Your AT9 encoders are missing.\nPlease select \"Get Dependencies\" in the Options menu.", "Error", JOptionPane.ERROR_MESSAGE); + else new Suggs(frame); + } else if (actionEvent.getSource() == helpMenu.getItem(0)) { try { diff --git a/firestar/src/main/java/Waldorf.java b/firestar/src/main/java/Waldorf.java index af60ece..170ee73 100644 --- a/firestar/src/main/java/Waldorf.java +++ b/firestar/src/main/java/Waldorf.java @@ -133,6 +133,10 @@ public class Waldorf implements ActionListener { JOptionPane.showMessageDialog(frame, "PSARC files purged.", "Delete PSARCs", JOptionPane.INFORMATION_MESSAGE); } else if (actionEvent.getSource() == dwnARCbtn) { + if (!new File(Main.inpath + "pkg2zip.exe").exists() || !new File(Main.inpath + "psvpfsparser.exe").exists()) { + JOptionPane.showMessageDialog(frame, "Your decryption tools are missing.\nPlease select \"Get Dependencies\" in the Options menu.", "Error", JOptionPane.ERROR_MESSAGE); + return; + } new Bert(invoker.frame); frame.dispose(); } else