Add GUI support
This commit is contained in:
@ -4,19 +4,26 @@ import io.reisub.dreambot.cshopper.tasks.*;
|
||||
import io.reisub.dreambot.util.CTaskScript;
|
||||
import io.reisub.dreambot.util.Constants;
|
||||
import io.reisub.dreambot.util.tasks.Run;
|
||||
import io.reisub.dreambot.util.ui.GUI;
|
||||
import io.reisub.dreambot.util.ui.Parameter;
|
||||
import org.dreambot.api.methods.MethodProvider;
|
||||
import org.dreambot.api.methods.container.impl.Inventory;
|
||||
import org.dreambot.api.randoms.RandomEvent;
|
||||
import org.dreambot.api.script.Category;
|
||||
import org.dreambot.api.script.ScriptManifest;
|
||||
import org.dreambot.api.wrappers.items.Item;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@ScriptManifest(category = Category.MISC, name = "CShopper", description = "Shops like a woman with an unlimited Visa card", author = Constants.AUTHOR, version = 1.0)
|
||||
public class CShopper extends CTaskScript {
|
||||
private static final Configuration configuration = new Configuration(
|
||||
"Ordan",
|
||||
new ItemWrapper("Gold ore", 2600, 73, false)
|
||||
Constants.LUNDAIL,
|
||||
new ItemWrapper("Nature rune", 5000)
|
||||
//new ItemWrapper("Gold ore", 2600, 73, false)
|
||||
//new ItemWrapper("Hammerstone seed", -1),
|
||||
//new ItemWrapper("Asgarnian seed", -1),
|
||||
//new ItemWrapper("Jute seed", -1),
|
||||
@ -26,6 +33,7 @@ public class CShopper extends CTaskScript {
|
||||
);
|
||||
|
||||
private Buy buyTask;
|
||||
private GUI gui;
|
||||
|
||||
public static Configuration getConfiguration() {
|
||||
return configuration;
|
||||
@ -34,11 +42,33 @@ public class CShopper extends CTaskScript {
|
||||
@Override
|
||||
public void onStart() {
|
||||
getUI().setCustomLines(configuration.getItems().length);
|
||||
getRandomManager().disableSolver(RandomEvent.BREAK);
|
||||
getRandomManager().disableSolver(RandomEvent.LOGIN);
|
||||
|
||||
buyTask = new Buy();
|
||||
|
||||
try {
|
||||
SwingUtilities.invokeAndWait(() -> {
|
||||
gui = new GUI(getSDNName());
|
||||
gui.addComboBox("Trader", CShopperOptions.traders, new Parameter("Custom"));
|
||||
gui.addComboBox("Items",
|
||||
CShopperOptions.items,
|
||||
true,
|
||||
new Parameter("Custom"),
|
||||
new Parameter("Buy total"),
|
||||
new Parameter("Minimum in shop"),
|
||||
new Parameter("Stackable", new JCheckBox()));
|
||||
gui.init();
|
||||
});
|
||||
} catch (Exception ignored) {}
|
||||
|
||||
while (gui == null || !gui.isReady()) {
|
||||
MethodProvider.sleep(500);
|
||||
}
|
||||
|
||||
MethodProvider.log(gui.getOption("Trader").getName());
|
||||
|
||||
addNodes(
|
||||
new Deposit(),
|
||||
new Stop(),
|
||||
new Run(),
|
||||
new Open(),
|
||||
|
@ -0,0 +1,16 @@
|
||||
package io.reisub.dreambot.cshopper;
|
||||
|
||||
import io.reisub.dreambot.util.Constants;
|
||||
import io.reisub.dreambot.util.ui.Option;
|
||||
|
||||
public class CShopperOptions {
|
||||
public final static Option[] traders = new Option[]{
|
||||
new Option("custom"),
|
||||
new Option("Lundail", "mage arena rune shop")
|
||||
};
|
||||
|
||||
public final static Option[] items = new Option[]{
|
||||
new Option("custom"),
|
||||
new Option("Nature rune")
|
||||
};
|
||||
}
|
31
CShopper/src/io/reisub/dreambot/cshopper/ShopperItem.java
Normal file
31
CShopper/src/io/reisub/dreambot/cshopper/ShopperItem.java
Normal file
@ -0,0 +1,31 @@
|
||||
package io.reisub.dreambot.cshopper;
|
||||
|
||||
public enum ShopperItem {
|
||||
CUSTOM("custom..."),
|
||||
NATURE_RUNE("Nature rune");
|
||||
|
||||
private final String name;
|
||||
|
||||
private String customName;
|
||||
|
||||
ShopperItem(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setCustomName(String customName) {
|
||||
this.customName = customName;
|
||||
}
|
||||
|
||||
public String getCustomName() {
|
||||
return customName;
|
||||
}
|
||||
}
|
49
CShopper/src/io/reisub/dreambot/cshopper/Trader.java
Normal file
49
CShopper/src/io/reisub/dreambot/cshopper/Trader.java
Normal file
@ -0,0 +1,49 @@
|
||||
package io.reisub.dreambot.cshopper;
|
||||
|
||||
public enum Trader {
|
||||
CUSTOM("custom..."),
|
||||
LUNDAIL("Lundail", "mage arena rune shop");
|
||||
|
||||
private final String name;
|
||||
private final String info;
|
||||
|
||||
private String customName;
|
||||
|
||||
Trader(String name) {
|
||||
this(name, "");
|
||||
}
|
||||
|
||||
Trader(String name, String info) {
|
||||
this.name = name;
|
||||
this.info = info;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
if (customName == null || customName.equals("")) {
|
||||
return name;
|
||||
} else {
|
||||
return customName;
|
||||
}
|
||||
}
|
||||
|
||||
public String getInfo() {
|
||||
return info;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
if (info.equals("")) {
|
||||
return name;
|
||||
} else {
|
||||
return name + " (" + info + ")";
|
||||
}
|
||||
}
|
||||
|
||||
public String getCustomName() {
|
||||
return customName;
|
||||
}
|
||||
|
||||
public void setCustomName(String customName) {
|
||||
this.customName = customName;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user