Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //====================================================
- //======= – SummerPie.java – =========================
- //====================================================
- package SummerPie;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import org.powerbot.core.script.ActiveScript;
- import org.powerbot.core.script.job.Job;
- import org.powerbot.core.script.job.state.Node;
- import org.powerbot.core.script.job.state.Tree;
- import org.powerbot.game.api.Manifest;
- import org.powerbot.game.api.util.Random;
- import SummerPie.Bank;
- import SummerPie.Cook;
- @Manifest( authors = { "Rizz" }, name = "RSummerPie", description = "Makes raw summer pies", version = 0.1 )
- public class SummerPie extends ActiveScript {
- private final List<Node> jobsCollection = Collections.synchronizedList(new ArrayList<Node>());
- private Tree jobContainer = null;
- public final void provide(final Node... jobs) {
- for (final Node job : jobs) {
- if(!jobsCollection.contains(job)) {
- jobsCollection.add(job);
- }
- }
- jobContainer = new Tree(jobsCollection.toArray(new Node[jobsCollection.size()]));
- }
- public final void submit(final Job job) {
- getContainer().submit(job);
- }
- @Override
- public void onStart() {
- provide(new Bank(), new Cook());
- }
- @Override
- public int loop() {
- if (jobContainer != null) {
- final Node job = jobContainer.state();
- if (job != null) {
- jobContainer.set(job);
- getContainer().submit(job);
- job.join();
- }
- }
- return Random.nextInt(10, 50);
- }
- }
- //====================================================
- //======= – Bank.java – ==============================
- //====================================================
- package SummerPie;
- import org.powerbot.core.script.job.Task;
- import org.powerbot.core.script.job.state.Node;
- import org.powerbot.game.api.methods.Walking;
- import org.powerbot.game.api.methods.node.SceneEntities;
- import org.powerbot.game.api.methods.tab.Inventory;
- import org.powerbot.game.api.util.Filter;
- import org.powerbot.game.api.util.Random;
- import org.powerbot.game.api.wrappers.node.SceneObject;
- public class Bank extends Node {
- private final int pieShellId = 2315;
- private final int strawberryId = 5504;
- private final int watermelonId = 5982;
- private final int appleId = 1955;
- private boolean isCooking() {
- if (Inventory.getCount(appleId) == 0) {
- return false;
- }
- return true;
- }
- @Override
- public boolean activate() {
- return !isCooking();
- }
- @Override
- public void execute() {
- Task.sleep(Random.nextInt(1000, 1500));
- SceneObject chest = SceneEntities.getNearest(new Filter<SceneObject>() {
- public boolean accept(SceneObject entity) {
- return entity.getId() == 4483;
- }
- });
- if (chest != null) {
- if (chest.isOnScreen() == true) {
- chest.interact("Use");
- Task.sleep(Random.nextInt(2000, 2400));
- }
- else if(!chest.isOnScreen()){
- Walking.walk(chest.getLocation());
- Task.sleep(Random.nextInt(1000, 2500));
- }
- }
- if (org.powerbot.game.api.methods.widget.Bank.isOpen()) {
- org.powerbot.game.api.methods.widget.Bank.depositInventory();
- Task.sleep(Random.nextInt(800, 1400));
- org.powerbot.game.api.methods.widget.Bank.withdraw(pieShellId, 7);
- Task.sleep(Random.nextInt(1000, 1400));
- org.powerbot.game.api.methods.widget.Bank.withdraw(strawberryId, 7);
- Task.sleep(Random.nextInt(1000, 1400));
- org.powerbot.game.api.methods.widget.Bank.withdraw(watermelonId, 7);
- Task.sleep(Random.nextInt(1000, 1400));
- org.powerbot.game.api.methods.widget.Bank.withdraw(appleId, 7);
- Task.sleep(Random.nextInt(1000, 1400));
- org.powerbot.game.api.methods.widget.Bank.close();
- }
- }
- }
- //====================================================
- //======= – Cook.java – ==============================
- //====================================================
- package SummerPie;
- import org.powerbot.core.script.job.Task;
- import org.powerbot.core.script.job.state.Node;
- import org.powerbot.game.api.methods.Widgets;
- import org.powerbot.game.api.methods.tab.Inventory;
- import org.powerbot.game.api.util.Filter;
- import org.powerbot.game.api.util.Random;
- import org.powerbot.game.api.wrappers.node.Item;
- public class Cook extends Node {
- private final int pieShellId = 2315;
- private final int strawberryId = 5504;
- private final int watermelonId = 5982;
- private final int appleId = 1955;
- private final int partPie1Id = 7212;
- private final int partPie2Id = 7214;
- @Override
- public boolean activate() {
- return !org.powerbot.game.api.methods.widget.Bank.isOpen();
- }
- @Override
- public void execute() {
- final Item[] strawberry = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == strawberryId;
- }
- });
- for (final Item item : strawberry) {
- item.getWidgetChild().interact("Use");
- break;
- }
- final Item[] shell = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == pieShellId;
- }
- });
- for (final Item item : shell) {
- item.getWidgetChild().interact("Use");
- Task.sleep(Random.nextInt(1200, 1500));
- if (Widgets.get(905).getChild(14).validate()) {
- Widgets.get(905).getChild(14).click(true);
- }
- Task.sleep(Random.nextInt(8000, 8600));
- break;
- }
- final Item[] watermelon = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == watermelonId;
- }
- });
- for (final Item item : watermelon) {
- item.getWidgetChild().interact("Use");
- break;
- }
- final Item[] partPie1 = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == partPie1Id;
- }
- });
- for (final Item item : partPie1) {
- item.getWidgetChild().interact("Use");
- Task.sleep(Random.nextInt(1200, 1500));
- if (Widgets.get(905).getChild(14).validate()) {
- Widgets.get(905).getChild(14).click(true);
- }
- Task.sleep(Random.nextInt(8000, 8600));
- break;
- }
- final Item[] apple = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == appleId;
- }
- });
- for (final Item item : apple) {
- item.getWidgetChild().interact("Use");
- break;
- }
- final Item[] partPie2 = Inventory.getItems(new Filter<Item>() {
- @Override
- public boolean accept(Item i) {
- return i.getId() == partPie2Id;
- }
- });
- for (final Item item : partPie2) {
- item.getWidgetChild().interact("Use");
- Task.sleep(Random.nextInt(1200, 1500));
- if (Widgets.get(905).getChild(14).validate()) {
- Widgets.get(905).getChild(14).click(true);
- }
- Task.sleep(Random.nextInt(8000, 8600));
- break;
- }
- }
- }
Add Comment
Please, Sign In to add comment