Updates and rework to use CScript
This commit is contained in:
@ -23,7 +23,7 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
version = "0.0.1"
|
||||
version = "1.0.0"
|
||||
|
||||
project.extra["PluginName"] = "Chaos Agility" // This is the name that is used in the external plugin manager panel
|
||||
project.extra["PluginDescription"] = "Hippity hoppity, jumps on your property" // This is the description that is used in the external plugin manager panel
|
||||
|
@ -4,24 +4,23 @@ import com.google.inject.Provides;
|
||||
import io.reisub.openosrs.agility.tasks.Alch;
|
||||
import io.reisub.openosrs.agility.tasks.HandleObstacle;
|
||||
import io.reisub.openosrs.agility.tasks.PickupMark;
|
||||
import io.reisub.openosrs.util.Task;
|
||||
import io.reisub.openosrs.util.CScript;
|
||||
import io.reisub.openosrs.util.Util;
|
||||
import io.reisub.openosrs.util.tasks.Eat;
|
||||
import io.reisub.openosrs.util.tasks.KittenTask;
|
||||
import io.reisub.openosrs.util.tasks.Run;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.events.*;
|
||||
import net.runelite.api.events.ChatMessage;
|
||||
import net.runelite.api.events.GameTick;
|
||||
import net.runelite.api.events.HitsplatApplied;
|
||||
import net.runelite.api.events.StatChanged;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.eventbus.Subscribe;
|
||||
import net.runelite.client.plugins.PluginDependency;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.plugins.iutils.iUtils;
|
||||
import net.runelite.client.plugins.iutils.scripts.iScript;
|
||||
import org.pf4j.Extension;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Extension
|
||||
@PluginDependency(Util.class)
|
||||
@ -32,38 +31,22 @@ import java.util.List;
|
||||
enabledByDefault = false
|
||||
)
|
||||
@Slf4j
|
||||
public class AgilityPlugin extends iScript {
|
||||
public class Agility extends CScript {
|
||||
@Inject
|
||||
private AgilityConfig config;
|
||||
private Config config;
|
||||
|
||||
private List<Task> tasks;
|
||||
|
||||
private KittenTask kittenTask;
|
||||
private Alch alchTask;
|
||||
private HandleObstacle handleObstacleTask;
|
||||
private PickupMark pickupMarkTask;
|
||||
|
||||
@Provides
|
||||
AgilityConfig provideConfig(ConfigManager configManager) {
|
||||
return configManager.getConfig(AgilityConfig.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void loop() {
|
||||
for (Task t : tasks) {
|
||||
if (t.validate()) {
|
||||
log.info(t.getStatus());
|
||||
t.execute();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
game.sleepDelay();
|
||||
Config provideConfig(ConfigManager configManager) {
|
||||
return configManager.getConfig(Config.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onStart() {
|
||||
log.info("Starting Chaos Agility");
|
||||
super.onStart();
|
||||
|
||||
Eat eatTask = injector.getInstance(Eat.class);
|
||||
eatTask.setInterval(14, 24);
|
||||
@ -71,7 +54,6 @@ public class AgilityPlugin extends iScript {
|
||||
Run runTask = injector.getInstance(Run.class);
|
||||
runTask.setInterval(70, 95);
|
||||
|
||||
kittenTask = KittenTask.getInstance(injector);
|
||||
handleObstacleTask = injector.getInstance(HandleObstacle.class);
|
||||
pickupMarkTask = injector.getInstance(PickupMark.class);
|
||||
|
||||
@ -79,10 +61,8 @@ public class AgilityPlugin extends iScript {
|
||||
alchTask = injector.getInstance(Alch.class);
|
||||
}
|
||||
|
||||
tasks = new ArrayList<>();
|
||||
tasks.add(eatTask);
|
||||
tasks.add(runTask);
|
||||
tasks.add(kittenTask);
|
||||
tasks.add(pickupMarkTask);
|
||||
if (config.highAlch()) {
|
||||
tasks.add(alchTask);
|
||||
@ -92,23 +72,6 @@ public class AgilityPlugin extends iScript {
|
||||
handleObstacleTask.setReady(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onStop() {
|
||||
log.info("Stopping Chaos Agility");
|
||||
if (tasks != null) {
|
||||
tasks.clear();
|
||||
}
|
||||
|
||||
KittenTask.handleKitten = false;
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
private void onConfigButtonPressed(ConfigButtonClicked configButtonClicked) {
|
||||
if (configButtonClicked.getKey().equals("startButton")) {
|
||||
execute();
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
private void onHitsplatApplied(HitsplatApplied event) {
|
||||
if (handleObstacleTask != null) {
|
||||
@ -148,10 +111,6 @@ public class AgilityPlugin extends iScript {
|
||||
|
||||
@Subscribe
|
||||
private void onChatMessage(ChatMessage chatMessage) {
|
||||
if (kittenTask != null) {
|
||||
kittenTask.onChatMessage(chatMessage);
|
||||
}
|
||||
|
||||
if (handleObstacleTask != null) {
|
||||
handleObstacleTask.onChatMessage(chatMessage);
|
||||
}
|
||||
|
@ -24,13 +24,12 @@
|
||||
*/
|
||||
package io.reisub.openosrs.agility;
|
||||
import net.runelite.client.config.Button;
|
||||
import net.runelite.client.config.Config;
|
||||
import net.runelite.client.config.ConfigGroup;
|
||||
import net.runelite.client.config.ConfigItem;
|
||||
|
||||
@ConfigGroup("ChaosAgilityConfig")
|
||||
@ConfigGroup("chaosagility")
|
||||
|
||||
public interface AgilityConfig extends Config {
|
||||
public interface Config extends net.runelite.client.config.Config {
|
||||
@ConfigItem(
|
||||
position = 0,
|
||||
keyName = "courseSelection",
|
||||
|
@ -1,6 +1,6 @@
|
||||
package io.reisub.openosrs.agility.tasks;
|
||||
|
||||
import io.reisub.openosrs.agility.AgilityConfig;
|
||||
import io.reisub.openosrs.agility.Config;
|
||||
import io.reisub.openosrs.util.Task;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.api.events.GameTick;
|
||||
@ -14,7 +14,7 @@ import javax.inject.Inject;
|
||||
|
||||
public class Alch extends Task {
|
||||
@Inject
|
||||
private AgilityConfig config;
|
||||
private Config config;
|
||||
|
||||
private boolean ready;
|
||||
private long lastAlchTick;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package io.reisub.openosrs.agility.tasks;
|
||||
|
||||
import io.reisub.openosrs.agility.AgilityConfig;
|
||||
import io.reisub.openosrs.agility.Config;
|
||||
import io.reisub.openosrs.util.Task;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.api.events.*;
|
||||
@ -10,7 +10,7 @@ import javax.inject.Inject;
|
||||
|
||||
public class HandleObstacle extends Task {
|
||||
@Inject
|
||||
private AgilityConfig config;
|
||||
private Config config;
|
||||
|
||||
private boolean ready;
|
||||
private int timeout = 10;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package io.reisub.openosrs.agility.tasks;
|
||||
|
||||
import io.reisub.openosrs.agility.AgilityConfig;
|
||||
import io.reisub.openosrs.agility.Config;
|
||||
import io.reisub.openosrs.util.Task;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.api.events.HitsplatApplied;
|
||||
@ -12,7 +12,7 @@ import javax.inject.Inject;
|
||||
|
||||
public class PickupMark extends Task {
|
||||
@Inject
|
||||
private AgilityConfig config;
|
||||
private Config config;
|
||||
|
||||
private boolean failed;
|
||||
|
||||
|
Reference in New Issue
Block a user