mirror of
https://github.com/2006-Scape/2006RebottedClient.git
synced 2026-07-02 16:49:02 +00:00
removed javaFX
This commit is contained in:
Generated
+1
-1
@@ -8,7 +8,7 @@
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -13,6 +13,7 @@
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.github.insubstantial</groupId>
|
||||
@@ -35,6 +36,18 @@
|
||||
<version>1.6</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm</artifactId>
|
||||
<version>7.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm-tree</artifactId>
|
||||
<version>7.2</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.rebotted.archive;
|
||||
|
||||
|
||||
import jdk.internal.org.objectweb.asm.ClassWriter;
|
||||
import jdk.internal.org.objectweb.asm.tree.ClassNode;
|
||||
import org.objectweb.asm.ClassWriter;
|
||||
import org.objectweb.asm.tree.ClassNode;
|
||||
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.rebotted.archive;
|
||||
|
||||
import jdk.internal.org.objectweb.asm.ClassReader;
|
||||
import jdk.internal.org.objectweb.asm.ClassWriter;
|
||||
import jdk.internal.org.objectweb.asm.tree.ClassNode;
|
||||
import org.objectweb.asm.ClassReader;
|
||||
import org.objectweb.asm.ClassWriter;
|
||||
import org.objectweb.asm.tree.ClassNode;
|
||||
import org.rebotted.directory.DirectoryManager;
|
||||
|
||||
import java.io.*;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.rebotted.bot.loader;
|
||||
|
||||
import jdk.internal.org.objectweb.asm.tree.AnnotationNode;
|
||||
import jdk.internal.org.objectweb.asm.tree.ClassNode;
|
||||
import org.objectweb.asm.tree.AnnotationNode;
|
||||
import org.objectweb.asm.tree.ClassNode;
|
||||
import org.rebotted.Client;
|
||||
import org.rebotted.archive.ASMClassLoader;
|
||||
import org.rebotted.archive.ClassArchive;
|
||||
|
||||
@@ -4,8 +4,9 @@ import org.rebotted.Client;
|
||||
import org.rebotted.Configuration;
|
||||
import org.rebotted.GameApplet;
|
||||
import org.rebotted.script.ScriptHandler;
|
||||
import org.rebotted.script.loader.ScriptLoader;
|
||||
import org.rebotted.ui.menu.BotMenuBar;
|
||||
import org.rebotted.ui.script.ScriptUI;
|
||||
import org.rebotted.ui.script.ScriptSelector;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
@@ -18,7 +19,6 @@ public final class BotFrame extends JFrame implements ActionListener {
|
||||
|
||||
private static BotMenuBar botMenuBar;
|
||||
private final Client client;
|
||||
private final ScriptUI scriptUI;
|
||||
|
||||
public BotFrame(Client client, boolean resizable) {
|
||||
this.client = client;
|
||||
@@ -38,7 +38,6 @@ public final class BotFrame extends JFrame implements ActionListener {
|
||||
requestFocus();
|
||||
toFront();
|
||||
applet.initClientFrame(766, 536);
|
||||
scriptUI = new ScriptUI(client.getApiData());
|
||||
System.out.println("Client Launched.");
|
||||
}
|
||||
|
||||
@@ -65,7 +64,7 @@ public final class BotFrame extends JFrame implements ActionListener {
|
||||
switch (e.getActionCommand().toLowerCase()) {
|
||||
case "run":
|
||||
if (ScriptHandler.getInstance().getScriptState() == ScriptHandler.State.STOPPED) {
|
||||
scriptUI.show();
|
||||
new ScriptSelector(new ScriptLoader(client.getApiData()));
|
||||
} else if (ScriptHandler.getInstance().getScriptState() == ScriptHandler.State.PAUSE) {
|
||||
ScriptHandler.getInstance().setScriptState(ScriptHandler.State.RUNNING);
|
||||
setRunning();
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
package org.rebotted.ui.script;
|
||||
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.fxml.Initializable;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import org.rebotted.script.ScriptHandler;
|
||||
import org.rebotted.script.scriptdata.ScriptData;
|
||||
import org.rebotted.script.scriptdata.SkillCategory;
|
||||
import org.rebotted.script.types.Script;
|
||||
import org.rebotted.ui.BotFrame;
|
||||
|
||||
|
||||
import java.net.URL;
|
||||
import java.util.ResourceBundle;
|
||||
|
||||
public class ScriptController implements Initializable {
|
||||
|
||||
@FXML
|
||||
private Button startButton;
|
||||
|
||||
@FXML
|
||||
private TableView<ScriptData> scriptTable;
|
||||
|
||||
@FXML
|
||||
private TableColumn<ScriptData, SkillCategory> category;
|
||||
|
||||
@FXML
|
||||
private TableColumn<ScriptData, String> scriptName;
|
||||
|
||||
@FXML
|
||||
private TableColumn<ScriptData, String> author;
|
||||
|
||||
@FXML
|
||||
private TableColumn<ScriptData, String> description;
|
||||
|
||||
@FXML
|
||||
private TableColumn<ScriptData, Double> version;
|
||||
|
||||
public void startScript() {
|
||||
if (ScriptHandler.getInstance().getScriptState() == ScriptHandler.State.PAUSE) {
|
||||
ScriptHandler.getInstance().pause();
|
||||
} else if (ScriptHandler.getInstance().getScriptState() == ScriptHandler.State.STOPPED) {
|
||||
final ScriptData scriptData = scriptTable.getSelectionModel().getSelectedItem();
|
||||
if(scriptData == null) {
|
||||
System.err.println("Please select a script before pressing start!");
|
||||
return;
|
||||
}
|
||||
startScript(scriptData);
|
||||
ScriptUI.hide();
|
||||
BotFrame.setRunning();
|
||||
} else if (ScriptHandler.getInstance().getScriptState() == ScriptHandler.State.RUNNING) {
|
||||
System.out.println("You already have a script running!");
|
||||
}
|
||||
}
|
||||
|
||||
public void searchScripts() {
|
||||
|
||||
}
|
||||
|
||||
public TableView<ScriptData> getScriptTable() {
|
||||
return scriptTable;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initialize(URL location, ResourceBundle resources) {
|
||||
category.setCellValueFactory(new PropertyValueFactory<>("skillCategory"));
|
||||
|
||||
scriptName.setCellValueFactory(new PropertyValueFactory<>("name"));
|
||||
|
||||
author.setCellValueFactory(new PropertyValueFactory<>("author"));
|
||||
|
||||
description.setCellValueFactory(new PropertyValueFactory<>("desc"));
|
||||
|
||||
version.setCellValueFactory(new PropertyValueFactory<>("version"));
|
||||
|
||||
}
|
||||
|
||||
private void startScript(ScriptData scriptData) {
|
||||
Script script = null;
|
||||
try {
|
||||
script = (Script) scriptData.getMainClass().newInstance();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
ScriptHandler.getInstance().start(script, scriptData);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package org.rebotted.ui.script;
|
||||
|
||||
import org.rebotted.script.scriptdata.ScriptData;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.EtchedBorder;
|
||||
import java.awt.*;
|
||||
|
||||
public class ScriptPanel extends JPanel {
|
||||
|
||||
private static final long serialVersionUID = -5181188196122580695L;
|
||||
private JButton button;
|
||||
|
||||
public ScriptPanel(final ScriptData scriptData) {
|
||||
setLayout(new BorderLayout());
|
||||
|
||||
setToolTipText(scriptData.getDesc());
|
||||
|
||||
button = new JButton("Start");
|
||||
|
||||
add(button, BorderLayout.SOUTH);
|
||||
|
||||
final JLabel scriptName = new JLabel(scriptData.getName());
|
||||
|
||||
scriptName.setHorizontalAlignment(JLabel.CENTER);
|
||||
|
||||
add(scriptName, BorderLayout.NORTH);
|
||||
|
||||
setBorder(new EtchedBorder());
|
||||
}
|
||||
|
||||
public JButton getButton() {
|
||||
return button;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
package org.rebotted.ui.script;
|
||||
|
||||
import org.rebotted.script.ScriptHandler;
|
||||
import org.rebotted.script.loader.ScriptLoader;
|
||||
import org.rebotted.script.scriptdata.ScriptData;
|
||||
import org.rebotted.script.types.Script;
|
||||
import org.rebotted.ui.BotFrame;
|
||||
import org.rebotted.ui.menu.BotMenuBar;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.FocusAdapter;
|
||||
import java.awt.event.FocusEvent;
|
||||
import java.awt.event.KeyAdapter;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
public class ScriptSelector extends JFrame {
|
||||
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final ScriptLoader scriptLoader;
|
||||
private JTextField searchField;
|
||||
private JComboBox<String> accounts;
|
||||
private JPanel topPanel;
|
||||
private JPanel scriptPanel;
|
||||
private JScrollPane scrollPane;
|
||||
|
||||
public ScriptSelector(ScriptLoader scriptLoader) {
|
||||
super("Script Selector");
|
||||
this.scriptLoader = scriptLoader;
|
||||
setResizable(false);
|
||||
searchField = new JTextField(20);
|
||||
searchField.setForeground(Color.LIGHT_GRAY);
|
||||
searchField.setText("Search");
|
||||
searchField.setMaximumSize(new Dimension(100, 30));
|
||||
searchField.addFocusListener(new FocusAdapter() {
|
||||
@Override
|
||||
public void focusGained(FocusEvent e) {
|
||||
super.focusGained(e);
|
||||
searchField.setForeground(Color.BLACK);
|
||||
searchField.setText("");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void focusLost(FocusEvent e) {
|
||||
super.focusLost(e);
|
||||
searchField.setForeground(Color.LIGHT_GRAY);
|
||||
searchField.setText("Search");
|
||||
}
|
||||
});
|
||||
searchField.addKeyListener(new KeyAdapter() {
|
||||
@Override
|
||||
public void keyTyped(KeyEvent e) {
|
||||
super.keyTyped(e);
|
||||
}
|
||||
});
|
||||
|
||||
accounts = new JComboBox<>();
|
||||
|
||||
|
||||
topPanel = new JPanel();
|
||||
topPanel.setLayout(new BoxLayout(topPanel, BoxLayout.X_AXIS));
|
||||
topPanel.add(accounts);
|
||||
topPanel.add(Box.createHorizontalGlue());
|
||||
topPanel.add(searchField);
|
||||
|
||||
scriptPanel = new JPanel();
|
||||
scriptPanel.setLayout(null);
|
||||
|
||||
scrollPane = new JScrollPane(scriptPanel);
|
||||
scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
|
||||
|
||||
getContentPane().setLayout(new BorderLayout());
|
||||
getContentPane().add(topPanel, BorderLayout.NORTH);
|
||||
getContentPane().add(scrollPane, BorderLayout.CENTER);
|
||||
|
||||
|
||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||
setSize(535, 405);
|
||||
loadScripts();
|
||||
setVisible(true);
|
||||
}
|
||||
|
||||
|
||||
private void loadScripts() {
|
||||
scriptPanel.removeAll();
|
||||
java.util.List<ScriptData> scripts = scriptLoader.getScripts();
|
||||
|
||||
final int width = 170;
|
||||
final int height = 115;
|
||||
final int spacing = 3;
|
||||
final int scriptPerRow = 3;
|
||||
int realIndex = 0;
|
||||
for (int scriptIndex = 0; scriptIndex < scripts.size(); scriptIndex++) {
|
||||
final ScriptData scriptData = scripts.get(scriptIndex);
|
||||
final ScriptPanel panel = new ScriptPanel(scriptData);
|
||||
int col = realIndex / scriptPerRow;
|
||||
int row = realIndex - (col * scriptPerRow);
|
||||
int x = row * width + spacing;
|
||||
int y = col * height + spacing;
|
||||
panel.setBounds(x, y, width, height);
|
||||
panel.getButton().addActionListener(e -> {
|
||||
startScript(scriptData);
|
||||
dispose();
|
||||
});
|
||||
scriptPanel.add(panel);
|
||||
realIndex++;
|
||||
}
|
||||
searchField.setText("");
|
||||
scriptPanel.setPreferredSize(new Dimension(535, (int) (Math.ceil((Double.valueOf(scriptPanel.getComponentCount()) / 3.0)) * height)));
|
||||
|
||||
}
|
||||
|
||||
private void startScript(ScriptData scriptData) {
|
||||
Script script = null;
|
||||
try {
|
||||
script = (Script) scriptData.getMainClass().newInstance();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
ScriptHandler.getInstance().start(script, scriptData);
|
||||
BotFrame.setRunning();
|
||||
}
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
package org.rebotted.ui.script;
|
||||
|
||||
import javafx.application.Platform;
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.embed.swing.JFXPanel;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.scene.Parent;
|
||||
import javafx.scene.Scene;
|
||||
import org.rebotted.bot.data.APIData;
|
||||
import org.rebotted.script.loader.ScriptLoader;
|
||||
import org.rebotted.script.scriptdata.ScriptData;
|
||||
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
|
||||
public class ScriptUI {
|
||||
private static ScriptController controller;
|
||||
private static JFrame frame;
|
||||
private JFXPanel jfxPanel = new JFXPanel();
|
||||
private ScriptLoader scriptLoader;
|
||||
|
||||
public ScriptUI(final APIData apiData) {
|
||||
scriptLoader = new ScriptLoader(apiData);
|
||||
loadUI();
|
||||
}
|
||||
|
||||
public static ScriptController getController() {
|
||||
return controller;
|
||||
}
|
||||
|
||||
public void loadUI() {
|
||||
Platform.runLater(() -> {
|
||||
try {
|
||||
frame = new JFrame("2006Rebotted - Script Selector");
|
||||
jfxPanel = new JFXPanel();
|
||||
final FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/ScriptUI.fxml"));
|
||||
final Parent root = fxmlLoader.load();
|
||||
final Scene scene = new Scene(root, 597, 353);
|
||||
scene.getStylesheets().add(getClass().getResource("/dark.css").toExternalForm());
|
||||
jfxPanel.setScene(scene);
|
||||
controller = fxmlLoader.getController();
|
||||
controller.getScriptTable().setItems(loadLocalScripts());
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
frame.add(jfxPanel);
|
||||
frame.setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE);
|
||||
frame.pack();
|
||||
frame.setResizable(false);
|
||||
});
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void show() {
|
||||
controller.getScriptTable().setItems(loadLocalScripts());
|
||||
frame.setVisible(true);
|
||||
System.out.println("Script Selector Loaded.");
|
||||
}
|
||||
|
||||
public static void hide() {
|
||||
frame.setVisible(false);
|
||||
}
|
||||
|
||||
private ObservableList<ScriptData> loadLocalScripts() {
|
||||
final ObservableList<ScriptData> scripts = FXCollections.observableArrayList();
|
||||
for (ScriptData scriptData : scriptLoader.getScripts()) {
|
||||
scripts.add(scriptData);
|
||||
}
|
||||
return scripts;
|
||||
}
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
|
||||
<?import javafx.scene.control.*?>
|
||||
<?import javafx.scene.layout.AnchorPane?>
|
||||
<AnchorPane xmlns:fx="http://javafx.com/fxml/1" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity"
|
||||
minWidth="-Infinity" prefHeight="353.0" prefWidth="605.0" xmlns="http://javafx.com/javafx/11.0.1"
|
||||
fx:controller="org.rebotted.ui.script.ScriptController">
|
||||
<children>
|
||||
<TableView fx:id="scriptTable" prefHeight="325.0" prefWidth="605.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="category" prefWidth="84.0" text="Category"/>
|
||||
<TableColumn fx:id="scriptName" prefWidth="107.0" text="Script"/>
|
||||
<TableColumn fx:id="version" prefWidth="62.0" text="Version"/>
|
||||
<TableColumn fx:id="description" prefWidth="250.0" text="Description"/>
|
||||
<TableColumn fx:id="author" prefWidth="100.0" text="Author"/>
|
||||
</columns>
|
||||
</TableView>
|
||||
<Button fx:id="startButton" layoutX="528.0" layoutY="327.0" mnemonicParsing="false" onAction="#startScript"
|
||||
prefHeight="25.0" prefWidth="73.0" text="Start"/>
|
||||
<ComboBox layoutX="5.0" layoutY="327.0" prefHeight="25.0" prefWidth="251.0" promptText="Accounts..."/>
|
||||
<TextField layoutX="263.0" layoutY="327.0" onAction="#searchScripts" prefHeight="25.0" prefWidth="259.0"
|
||||
promptText="Search scripts..."/>
|
||||
</children>
|
||||
</AnchorPane>
|
||||
@@ -1,56 +0,0 @@
|
||||
/*
|
||||
* This is an adjustment of the original modena.css for a consistent dark theme.
|
||||
* Original modena.css here: https://gist.github.com/maxd/63691840fc372f22f470.
|
||||
*/
|
||||
|
||||
/* Redefine base colors */
|
||||
.root {
|
||||
-fx-base: rgb(50, 50, 50);
|
||||
-fx-background: rgb(50, 50, 50);
|
||||
|
||||
/* make controls (buttons, thumb, etc.) slightly lighter */
|
||||
-fx-color: derive(-fx-base, 10%);
|
||||
|
||||
/* text fields and table rows background */
|
||||
-fx-control-inner-background: rgb(20, 20, 20);
|
||||
/* version of -fx-control-inner-background for alternative rows */
|
||||
-fx-control-inner-background-alt: derive(-fx-control-inner-background, 2.5%);
|
||||
|
||||
/* text colors depending on background's brightness */
|
||||
-fx-light-text-color: rgb(220, 220, 220);
|
||||
-fx-mid-text-color: rgb(100, 100, 100);
|
||||
-fx-dark-text-color: rgb(20, 20, 20);
|
||||
|
||||
/* A bright blue for highlighting/accenting objects. For example: selected
|
||||
* text; selected items in menus, lists, trees, and tables; progress bars */
|
||||
-fx-accent: rgb(0, 80, 100);
|
||||
|
||||
/* color of non-focused yet selected elements */
|
||||
-fx-selection-bar-non-focused: rgb(50, 50, 50);
|
||||
}
|
||||
|
||||
/* Fix derived prompt color for text fields */
|
||||
.text-input {
|
||||
-fx-prompt-text-fill: derive(-fx-control-inner-background, +50%);
|
||||
}
|
||||
|
||||
/* Keep prompt invisible when focused (above color fix overrides it) */
|
||||
.text-input:focused {
|
||||
-fx-prompt-text-fill: transparent;
|
||||
}
|
||||
|
||||
/* Fix scroll bar buttons arrows colors */
|
||||
.scroll-bar > .increment-button > .increment-arrow,
|
||||
.scroll-bar > .decrement-button > .decrement-arrow {
|
||||
-fx-background-color: -fx-mark-highlight-color, rgb(220, 220, 220);
|
||||
}
|
||||
|
||||
.scroll-bar > .increment-button:hover > .increment-arrow,
|
||||
.scroll-bar > .decrement-button:hover > .decrement-arrow {
|
||||
-fx-background-color: -fx-mark-highlight-color, rgb(240, 240, 240);
|
||||
}
|
||||
|
||||
.scroll-bar > .increment-button:pressed > .increment-arrow,
|
||||
.scroll-bar > .decrement-button:pressed > .decrement-arrow {
|
||||
-fx-background-color: -fx-mark-highlight-color, rgb(255, 255, 255);
|
||||
}
|
||||
Reference in New Issue
Block a user