Initial commit
This commit is contained in:
@ -0,0 +1,99 @@
|
||||
package io.reisub.dreambot.util.tasks.kitten;
|
||||
|
||||
import io.reisub.dreambot.util.CNPC;
|
||||
import io.reisub.dreambot.util.Constants;
|
||||
import io.reisub.dreambot.util.TaskNodeParent;
|
||||
import org.dreambot.api.methods.container.impl.Inventory;
|
||||
import org.dreambot.api.methods.filter.Filter;
|
||||
import org.dreambot.api.script.ScriptManager;
|
||||
import org.dreambot.api.script.listener.ChatListener;
|
||||
import org.dreambot.api.wrappers.interactive.NPC;
|
||||
import org.dreambot.api.wrappers.items.Item;
|
||||
import org.dreambot.api.wrappers.widgets.message.Message;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Locale;
|
||||
|
||||
public class KittenTask extends TaskNodeParent {
|
||||
private boolean hungry, attention;
|
||||
|
||||
public final Filter<Item> fishItemFilter = item -> {
|
||||
for (String fishName : Constants.KITTEN_FISH_NAMES) {
|
||||
String rawFishName = "Raw " + fishName.toLowerCase(Locale.ROOT);
|
||||
|
||||
if (item.getName().equals(fishName) || item.getName().equals(rawFishName)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
@Nullable
|
||||
public static KittenTask createKittenTask() {
|
||||
KittenTask task = null;
|
||||
|
||||
if (Inventory.contains(Constants.KITTEN)) {
|
||||
Inventory.drop(Constants.KITTEN);
|
||||
|
||||
task = new KittenTask();
|
||||
}
|
||||
|
||||
NPC kitten = CNPC.getNPCInteractingWithPlayer(Constants.KITTEN);
|
||||
NPC cat = CNPC.getNPCInteractingWithPlayer(Constants.CAT);
|
||||
|
||||
if (kitten != null || cat != null) {
|
||||
task = new KittenTask();
|
||||
}
|
||||
|
||||
if (task != null) {
|
||||
task.setChildren(
|
||||
new CutFoodForKitten(task),
|
||||
new FeedKitten(task),
|
||||
new InteractKitten(task),
|
||||
new PickupCat()
|
||||
);
|
||||
}
|
||||
|
||||
return task;
|
||||
}
|
||||
|
||||
private KittenTask() {
|
||||
ScriptManager.getScriptManager().addListener(new ChatListener() {
|
||||
@Override
|
||||
public void onMessage(Message message) {
|
||||
if (message.getMessage().contains(Constants.KITTEN_WANTS_ATTENTION_MSG)) {
|
||||
setAttention(true);
|
||||
}
|
||||
|
||||
if (message.getMessage().contains(Constants.KITTEN_WAS_STROKED_MSG)) {
|
||||
setAttention(false);
|
||||
}
|
||||
|
||||
if (message.getMessage().contains(Constants.KITTEN_IS_HUNGRY_MSG)) {
|
||||
setHungry(true);
|
||||
}
|
||||
|
||||
if (message.getMessage().contains(Constants.KITTEN_HAS_EATEN_MSG)) {
|
||||
setHungry(false);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void setHungry(boolean hungry) {
|
||||
this.hungry = hungry;
|
||||
}
|
||||
|
||||
public boolean isHungry() {
|
||||
return hungry;
|
||||
}
|
||||
|
||||
public void setAttention(boolean attention) {
|
||||
this.attention = attention;
|
||||
}
|
||||
|
||||
public boolean wantsAttention() {
|
||||
return attention;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user