lolzord Posted July 27, 2019 Posted July 27, 2019 (edited) import org.osbot.rs07.api.filter.Filter; import org.osbot.rs07.api.ui.RS2Widget; import org.osbot.rs07.api.ui.Tab; import org.osbot.rs07.event.Event; public final class ToggleShiftDropEvent extends Event { @Override public final int execute() throws InterruptedException { if (Tab.SETTINGS.isDisabled(getBot())) { setFailed(); } else if (getTabs().getOpen() != Tab.SETTINGS) { getTabs().open(Tab.SETTINGS); } else if(getShiftDropWidget() == null || !getShiftDropWidget().isVisible()) { getGameSettingsWidget().interact(); } else { boolean enabled = getSettings().isShiftDropActive(); if (getShiftDropWidget().interact()) { Sleep.sleepUntil(() -> getSettings().isShiftDropActive() != enabled, 3000); setFinished(); } } return random(100, 200); } private RS2Widget getShiftDropWidget() { return getWidgets().singleFilter(getWidgets().getAll(), new WidgetActionFilter("Toggle shift click to drop")); } private RS2Widget getGameSettingsWidget() { return getWidgets().singleFilter(getWidgets().getAll(), new WidgetActionFilter("Controls")); } } class WidgetActionFilter implements Filter<RS2Widget> { private final String action; WidgetActionFilter(final String action) { this.action = action; } @Override public boolean match(RS2Widget rs2Widget) { if (rs2Widget == null) { return false; } if (rs2Widget.getInteractActions() == null) { return false; } for (String action : rs2Widget.getInteractActions()) { if (this.action.equals(action)) { return true; } } return false; } } Hi guys, i am new to coding, i cant understand how to enable this script on start in main script, its to check toggled shift dropping or not. Something like ToggleShiftDropEvent s = new ToggleShiftDropEvent(); s.execute(); idk Thanks Edited July 27, 2019 by lolzord
zwaffel Posted July 27, 2019 Posted July 27, 2019 (edited) try this instead of s.execute(); execute(s); Edited July 27, 2019 by zwaffel 3
lolzord Posted July 27, 2019 Author Posted July 27, 2019 13 minutes ago, zwaffel said: try this instead of s.execute(); execute(s); Sir, You are Genius. Thank you! It worked.