diff --git a/src/main/java/org/parabot/core/Context.java b/src/main/java/org/parabot/core/Context.java index c895f1d..8cfd7b7 100644 --- a/src/main/java/org/parabot/core/Context.java +++ b/src/main/java/org/parabot/core/Context.java @@ -163,6 +163,7 @@ public class Context { * Loads the game */ public void load() { + BotUI.getInstance().getJMenuBar().remove(2); Core.verbose("Parsing server jar..."); serverProvider.init(); serverProvider.parseJar(); diff --git a/src/main/java/org/parabot/core/ui/BotUI.java b/src/main/java/org/parabot/core/ui/BotUI.java index 2d4bece..0456cf9 100644 --- a/src/main/java/org/parabot/core/ui/BotUI.java +++ b/src/main/java/org/parabot/core/ui/BotUI.java @@ -1,6 +1,7 @@ package org.parabot.core.ui; import org.parabot.core.Context; +import org.parabot.core.Directories; import org.parabot.core.ui.components.GamePanel; import org.parabot.core.ui.components.VerboseLoader; import org.parabot.core.ui.images.Images; @@ -12,6 +13,7 @@ import org.parabot.environment.scripts.randoms.Random; import javax.swing.*; import java.awt.*; import java.awt.event.*; +import java.io.File; import java.util.ArrayList; /** @@ -25,7 +27,7 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, private static BotUI instance; private static JDialog dialog; - private JMenuItem run, pause, stop; + private JMenuItem run, pause, stop, cacheClear; private boolean runScript, pauseScript; public BotUI(String username, String password) { @@ -64,11 +66,14 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, return instance; } + + private void createMenu() { JMenuBar menuBar = new JMenuBar(); JMenu file = new JMenu("File"); JMenu scripts = new JMenu("Script"); + JMenu features = new JMenu("Features"); JMenuItem screenshot = new JMenuItem("Create screenshot"); JMenuItem proxy = new JMenuItem("Network"); @@ -94,6 +99,9 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, stop.setEnabled(false); stop.setIcon(new ImageIcon(Images.getResource("/storage/images/stop.png"))); + cacheClear = new JMenuItem("Clear cache"); + cacheClear.setIcon(new ImageIcon(Images.getResource("/storage/images/trash.png"))); + screenshot.addActionListener(this); proxy.addActionListener(this); randoms.addActionListener(this); @@ -101,6 +109,7 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, logger.addActionListener(this); explorer.addActionListener(this); exit.addActionListener(this); + cacheClear.addActionListener(this); run.addActionListener(this); pause.addActionListener(this); @@ -118,8 +127,12 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, scripts.add(pause); scripts.add(stop); + features.add(cacheClear); + menuBar.add(file); menuBar.add(scripts); + menuBar.add(features); + setJMenuBar(menuBar); } @@ -173,7 +186,7 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, BotUI.getInstance().revalidate(); if (!Logger.getInstance().isClearable()) { Logger.getInstance().setClearable(); - } else if(Logger.getInstance().isClearable() && !Logger.getInstance().isVisible()) { + } else if (Logger.getInstance().isClearable() && !Logger.getInstance().isVisible()) { Logger.clearLogger(); Logger.addMessage("Logger started", false); } @@ -181,6 +194,9 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, case "Disable dialog": BotDialog.getInstance().setVisible(!dialog.isVisible()); break; + case "Clear cache": + Directories.clearCache(); + break; default: System.out.println("Invalid command: " + command); } @@ -274,4 +290,5 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener, @Override public void windowOpened(WindowEvent arg0) { } + } diff --git a/src/main/java/org/parabot/core/ui/components/VerboseLoader.java b/src/main/java/org/parabot/core/ui/components/VerboseLoader.java index 4756bb4..9d9e102 100755 --- a/src/main/java/org/parabot/core/ui/components/VerboseLoader.java +++ b/src/main/java/org/parabot/core/ui/components/VerboseLoader.java @@ -283,4 +283,4 @@ public class VerboseLoader extends JPanel implements ProgressListener { public void updateDownloadSpeed(double mbPerSecond) { progressBar.setText(String.format("(%.2fMB/s)", mbPerSecond)); } -} +} \ No newline at end of file diff --git a/src/main/java/org/parabot/core/ui/images/trash.png b/src/main/java/org/parabot/core/ui/images/trash.png new file mode 100644 index 0000000..53867b6 Binary files /dev/null and b/src/main/java/org/parabot/core/ui/images/trash.png differ diff --git a/src/main/resources/storage/images/trash.png b/src/main/resources/storage/images/trash.png new file mode 100644 index 0000000..53867b6 Binary files /dev/null and b/src/main/resources/storage/images/trash.png differ