diff --git a/src/main/java/scriptfactory/Strategies/LoginHandler.java b/src/main/java/scriptfactory/Strategies/LoginHandler.java new file mode 100644 index 0000000..616eb18 --- /dev/null +++ b/src/main/java/scriptfactory/Strategies/LoginHandler.java @@ -0,0 +1,36 @@ +package scriptfactory.Strategies; + +import org.parabot.environment.api.utils.Time; +import org.parabot.environment.input.Keyboard; +import org.parabot.environment.input.Mouse; +import org.parabot.environment.scripts.framework.SleepCondition; +import org.parabot.environment.scripts.framework.Strategy; +import org.rev317.min.api.methods.Game; + +import java.awt.*; +import java.awt.event.KeyEvent; + +public class LoginHandler{ + + private Point point = new Point(432, 282); + private Point point2 = new Point(328, 324); + + public void execute() { + if (Game.isLoggedIn() && Game.getOpenInterfaceId() == 15812) { + Mouse.getInstance().click(point2); + } + if (!Game.isLoggedIn()) { + Time.sleep(new SleepCondition() { + @Override + public boolean isValid() { + return Game.isLoggedIn(); + } + }, 5000); + Mouse.getInstance().click(point); + Time.sleep(1000); + Keyboard.getInstance().clickKey(KeyEvent.VK_ENTER); + Time.sleep(1000); + Keyboard.getInstance().clickKey(KeyEvent.VK_ENTER); + } + } +} \ No newline at end of file diff --git a/src/main/java/scriptfactory/Strategies/RunLoop.java b/src/main/java/scriptfactory/Strategies/RunLoop.java index b414439..80297b5 100644 --- a/src/main/java/scriptfactory/Strategies/RunLoop.java +++ b/src/main/java/scriptfactory/Strategies/RunLoop.java @@ -1,6 +1,7 @@ package scriptfactory.Strategies; +import org.rev317.min.api.methods.Game; import scriptfactory.Actions.Action; import org.parabot.environment.scripts.framework.Strategy; import scriptfactory.VarsMethods; @@ -13,6 +14,7 @@ import java.util.ArrayList; public class RunLoop implements Strategy { private ActionExecutor actionExecutor; + private LoginHandler loginHandler = new LoginHandler(); public RunLoop(ArrayList actions) { @@ -27,6 +29,9 @@ public class RunLoop implements Strategy { @Override public void execute() { VarsMethods.calculateGainedXP(); + if(!Game.isLoggedIn() || Game.getOpenBackDialogId() == 15812){ + loginHandler.execute(); + } actionExecutor.execute(); } diff --git a/target/classes/config.xml b/target/classes/config.xml index 1698320..3dd405b 100644 --- a/target/classes/config.xml +++ b/target/classes/config.xml @@ -34,4 +34,4 @@ - \ No newline at end of file + diff --git a/target/classes/scriptfactory/Strategies/LoginHandler$1.class b/target/classes/scriptfactory/Strategies/LoginHandler$1.class new file mode 100644 index 0000000..4672c1d Binary files /dev/null and b/target/classes/scriptfactory/Strategies/LoginHandler$1.class differ diff --git a/target/classes/scriptfactory/Strategies/LoginHandler.class b/target/classes/scriptfactory/Strategies/LoginHandler.class new file mode 100644 index 0000000..0562e75 Binary files /dev/null and b/target/classes/scriptfactory/Strategies/LoginHandler.class differ diff --git a/target/classes/scriptfactory/Strategies/RunLoop.class b/target/classes/scriptfactory/Strategies/RunLoop.class index 706873f..6064d5c 100644 Binary files a/target/classes/scriptfactory/Strategies/RunLoop.class and b/target/classes/scriptfactory/Strategies/RunLoop.class differ