From bc5ce680270dd20a42107ea0b6143753f4dbab63 Mon Sep 17 00:00:00 2001
From: Zoinkwiz <29153234+Zoinkwiz@users.noreply.github.com>
Date: Sat, 18 Apr 2026 23:42:55 +0100
Subject: [PATCH] Swapped passOnceCompleted with baked in method for
ConditionalStep
This makes it far more succinct to make use sidebar manual steps in helpers.
---
.../helpers/generated/FauxLeaguesHelper.java | 419 ++++++++----------
.../questhelper/steps/ConditionalStep.java | 52 ++-
2 files changed, 233 insertions(+), 238 deletions(-)
diff --git a/src/main/java/com/questhelper/helpers/generated/FauxLeaguesHelper.java b/src/main/java/com/questhelper/helpers/generated/FauxLeaguesHelper.java
index f501bf785..dac2aa64d 100644
--- a/src/main/java/com/questhelper/helpers/generated/FauxLeaguesHelper.java
+++ b/src/main/java/com/questhelper/helpers/generated/FauxLeaguesHelper.java
@@ -1077,266 +1077,266 @@ public class FauxLeaguesHelper extends ComplexStateQuestHelper
section1Task = new ConditionalStep(this, depositoillanterns);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 18), openleaguesmenu.getSidebarManualSkipRequirement())), openleaguesmenu);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 19, "Complete the Leagues Tutorial"), completeleaguestutorial.getSidebarManualSkipRequirement())), completeleaguestutorial);
- section1Task.addStep(not(passOnceCompleted(claimfirstrelic.getSidebarManualSkipRequirement(), claimfirstrelic.getSidebarManualSkipRequirement())), claimfirstrelic);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 8, "Turn off your run"), togglerunenergy.getSidebarManualSkipRequirement())), togglerunenergy);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 22, "Pickpocket a Citizen"), new SkillRequirement(Skill.THIEVING, 5, true)), pickpocketcitizen.getSidebarManualSkipRequirement())), pickpocketcitizen);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 0, "Pet Renu"), petrenu.getSidebarManualSkipRequirement())), petrenu);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 10, "Bow near a quetzal"), bownearrenu.getSidebarManualSkipRequirement())), bownearrenu);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 12, "Travel using the Quetzal Transport System"), travelwithrenu.getSidebarManualSkipRequirement())), travelwithrenu);
- section1Task.addStep(not(passOnceCompleted(travelbackwithrenu.getSidebarManualSkipRequirement(), travelbackwithrenu.getSidebarManualSkipRequirement())), travelbackwithrenu);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 27, "Fill something up from a water pump"), usewaterpump.getSidebarManualSkipRequirement())), usewaterpump);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 4, "Attack a dummy"), attackdummy.getSidebarManualSkipRequirement())), attackdummy);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 14, "Cry near a child"), crynearachild.getSidebarManualSkipRequirement())), crynearachild);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 4, "Steal some bread"), cake.quantity(14).alsoCheckBank()), stealcakesfrombakersstall.getSidebarManualSkipRequirement())), stealcakesfrombakersstall);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, chisel.alsoCheckBank(), knife), tradeshopkeeper.getSidebarManualSkipRequirement())), tradeshopkeeper);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, brownApron, redCape), tradefloria.getSidebarManualSkipRequirement())), tradefloria);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, brownApron.equipped(), redCape.equipped()), equipapronandredcape.getSidebarManualSkipRequirement())), equipapronandredcape);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 28, "Defeat a Rat"), attackratlevel1.getSidebarManualSkipRequirement())), attackratlevel1);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 4, "Salute next to a statue of Quoatlos"), salutequoatlos.getSidebarManualSkipRequirement())), salutequoatlos);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 3, "Activate a prayer near an altar"), useprayernearshrineofralos.getSidebarManualSkipRequirement())), useprayernearshrineofralos);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 1, "Pet Xolo in Civitas"), petxolo.getSidebarManualSkipRequirement())), petxolo);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_36, true, 24, "150 Combat Achievements"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 23, "Drink from a bird bath")), drinkfrombirdbath.getSidebarManualSkipRequirement())), drinkfrombirdbath);
- section1Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 14, "Chop Some Logs"), logs.quantity(2).alsoCheckBank()), chopdowntree.getSidebarManualSkipRequirement())), chopdowntree);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 6, "Burn Some Normal Logs"), burnlog.getSidebarManualSkipRequirement())), burnlog);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 8, "Fletch Some Arrow Shafts"), fletchlog.getSidebarManualSkipRequirement())), fletchlog);
- section1Task.addStep(not(passOnceCompleted(useeastcivitasbank.getSidebarManualSkipRequirement(), useeastcivitasbank.getSidebarManualSkipRequirement())), useeastcivitasbank);
- section1Task.addStep(not(passOnceCompleted(and(shears.alsoCheckBank(), glassblowingPipe.alsoCheckBank()), tradeartima.getSidebarManualSkipRequirement())), tradeartima);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 9, "Talk to a Gladiator"), talktogladiator.getSidebarManualSkipRequirement())), talktogladiator);
- section1Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 6, "Talk to any Port master"), talktoportmaster.getSidebarManualSkipRequirement())), talktoportmaster);
- section1Task.addStep(not(passOnceCompleted(and(bucketOfSand.quantity(10), sodaAsh.quantity(10)), talktotradercrewmember.getSidebarManualSkipRequirement())), talktotradercrewmember);
- section1Task.addStep(not(passOnceCompleted(moltenGlass.quantity(10), usefurnace.getSidebarManualSkipRequirement())), usefurnace);
- section1Task.addStep(not(passOnceCompleted(and(moltenGlass.quantity(10).alsoCheckBank(), not(moltenGlass.quantity(1))), depositmoltenglass.getSidebarManualSkipRequirement())), depositmoltenglass);
- section1Task.addStep(not(passOnceCompleted(and(bucketOfSand.quantity(10).alsoCheckBank(), sodaAsh.quantity(10).alsoCheckBank(), moltenGlass.quantity(10).alsoCheckBank()), talktotradercrewmember2.getSidebarManualSkipRequirement())), talktotradercrewmember2);
- section1Task.addStep(not(passOnceCompleted(moltenGlass.quantity(20).alsoCheckBank(), usefurnace2.getSidebarManualSkipRequirement())), usefurnace2);
- section1Task.addStep(not(passOnceCompleted(new SkillRequirement(Skill.CRAFTING, 20, true), blowglassintooillanterns.getSidebarManualSkipRequirement())), blowglassintooillanterns);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 18)), openleaguesmenu);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 19, "Complete the Leagues Tutorial")), completeleaguestutorial);
+ section1Task.addStep(not(claimfirstrelic.getSidebarManualSkipRequirement()), claimfirstrelic);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 8, "Turn off your run")), togglerunenergy);
+ section1Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 22, "Pickpocket a Citizen"), new SkillRequirement(Skill.THIEVING, 5, true))), pickpocketcitizen);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 0, "Pet Renu")), petrenu);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 10, "Bow near a quetzal")), bownearrenu);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 12, "Travel using the Quetzal Transport System")), travelwithrenu);
+ section1Task.addStep(not(travelbackwithrenu.getSidebarManualSkipRequirement()), travelbackwithrenu);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 27, "Fill something up from a water pump")), usewaterpump);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 4, "Attack a dummy")), attackdummy);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 14, "Cry near a child")), crynearachild);
+ section1Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 4, "Steal some bread"), cake.quantity(14).alsoCheckBank())), stealcakesfrombakersstall);
+ section1Task.addStep(not(new Conditions(LogicType.AND, chisel.alsoCheckBank(), knife)), tradeshopkeeper);
+ section1Task.addStep(not(new Conditions(LogicType.AND, brownApron, redCape)), tradefloria);
+ section1Task.addStep(not(new Conditions(LogicType.AND, brownApron.equipped(), redCape.equipped())), equipapronandredcape);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 28, "Defeat a Rat")), attackratlevel1);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 4, "Salute next to a statue of Quoatlos")), salutequoatlos);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 3, "Activate a prayer near an altar")), useprayernearshrineofralos);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 1, "Pet Xolo in Civitas")), petxolo);
+ section1Task.addStep(not(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_36, true, 24, "150 Combat Achievements"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 23, "Drink from a bird bath"))), drinkfrombirdbath);
+ section1Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 14, "Chop Some Logs"), logs.quantity(2).alsoCheckBank())), chopdowntree);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 6, "Burn Some Normal Logs")), burnlog);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 8, "Fletch Some Arrow Shafts")), fletchlog);
+ section1Task.addStep(not(useeastcivitasbank.getSidebarManualSkipRequirement()), useeastcivitasbank);
+ section1Task.addStep(not(and(shears.alsoCheckBank(), glassblowingPipe.alsoCheckBank())), tradeartima);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 9, "Talk to a Gladiator")), talktogladiator);
+ section1Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 6, "Talk to any Port master")), talktoportmaster);
+ section1Task.addStep(not(and(bucketOfSand.quantity(10), sodaAsh.quantity(10))), talktotradercrewmember);
+ section1Task.addStep(not(moltenGlass.quantity(10)), usefurnace);
+ section1Task.addStep(not(and(moltenGlass.quantity(10).alsoCheckBank(), not(moltenGlass.quantity(1)))), depositmoltenglass);
+ section1Task.addStep(not(and(bucketOfSand.quantity(10).alsoCheckBank(), sodaAsh.quantity(10).alsoCheckBank(), moltenGlass.quantity(10).alsoCheckBank())), talktotradercrewmember2);
+ section1Task.addStep(not(moltenGlass.quantity(20).alsoCheckBank()), usefurnace2);
+ section1Task.addStep(not(new SkillRequirement(Skill.CRAFTING, 20, true)), blowglassintooillanterns);
section2Task = new ConditionalStep(this, eatcookedrabbit);
- section2Task.addStep(not(passOnceCompleted(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 21, "Pick 6 wheat, 6 cabbages and 6 potatoes"), new VarbitRequirement(20372, 6)), pickcabbage.getSidebarManualSkipRequirement())), pickcabbage);
- section2Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 25, "Defeat a Chicken"), bones), attackchickenlevel1.getSidebarManualSkipRequirement())), attackchickenlevel1);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 7, "Sit near a stolen cabbage"), sitwithdogs.getSidebarManualSkipRequirement())), sitwithdogs);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 7, "Feed a dog some bones"), feedbonestomolossus.getSidebarManualSkipRequirement())), feedbonestomolossus);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 3, "Pick some Sweetcorn from a Field"), picksweetcorn.getSidebarManualSkipRequirement())), picksweetcorn);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 2, "Eat an Onion"), pickandeatonion.getSidebarManualSkipRequirement())), pickandeatonion);
- section2Task.addStep(not(passOnceCompleted(new VarbitRequirement(20371, 6), pickwheat.getSidebarManualSkipRequirement())), pickwheat);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_10, true, 26, "Make some Flour"), emptyflourbin.getSidebarManualSkipRequirement())), emptyflourbin);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 21, "Pick 6 wheat, 6 cabbages and 6 potatoes"), pickpotato.getSidebarManualSkipRequirement())), pickpotato);
- section2Task.addStep(not(passOnceCompleted(rake, tradeharminia.getSidebarManualSkipRequirement())), tradeharminia);
- section2Task.addStep(not(passOnceCompleted(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_22, true, 24, "200 Collection log slots"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 26, "Rake a Flower Patch")), rakeflowerpatch.getSidebarManualSkipRequirement())), rakeflowerpatch);
- section2Task.addStep(not(passOnceCompleted(bucket, emptywaterbucket.getSidebarManualSkipRequirement())), emptywaterbucket);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 30, "Milk a Buffalo"), milkdairybuffalo.getSidebarManualSkipRequirement())), milkdairybuffalo);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 6, "Shear an Alpaca"), shearalpaca.getSidebarManualSkipRequirement())), shearalpaca);
- section2Task.addStep(not(passOnceCompleted(zanarisfairyring.getSidebarManualSkipRequirement(), zanarisfairyring.getSidebarManualSkipRequirement())), zanarisfairyring);
- section2Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, cowhide, bones), attackcowlevel2.getSidebarManualSkipRequirement())), attackcowlevel2);
- section2Task.addStep(not(passOnceCompleted(burybones.getSidebarManualSkipRequirement(), burybones.getSidebarManualSkipRequirement())), burybones);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 11, "Travel to Aldarin via Fairy ring"), aldarinfairyring.getSidebarManualSkipRequirement())), aldarinfairyring);
+ section2Task.addStep(not(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 21, "Pick 6 wheat, 6 cabbages and 6 potatoes"), new VarbitRequirement(20372, 6))), pickcabbage);
+ section2Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 25, "Defeat a Chicken"), bones)), attackchickenlevel1);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 7, "Sit near a stolen cabbage")), sitwithdogs);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 7, "Feed a dog some bones")), feedbonestomolossus);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 3, "Pick some Sweetcorn from a Field")), picksweetcorn);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 2, "Eat an Onion")), pickandeatonion);
+ section2Task.addStep(not(new VarbitRequirement(20371, 6)), pickwheat);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_10, true, 26, "Make some Flour")), emptyflourbin);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 21, "Pick 6 wheat, 6 cabbages and 6 potatoes")), pickpotato);
+ section2Task.addStep(not(rake), tradeharminia);
+ section2Task.addStep(not(new Conditions(LogicType.OR, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_22, true, 24, "200 Collection log slots"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 26, "Rake a Flower Patch"))), rakeflowerpatch);
+ section2Task.addStep(not(bucket), emptywaterbucket);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 30, "Milk a Buffalo")), milkdairybuffalo);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 6, "Shear an Alpaca")), shearalpaca);
+ section2Task.addStep(not(zanarisfairyring.getSidebarManualSkipRequirement()), zanarisfairyring);
+ section2Task.addStep(not(new Conditions(LogicType.AND, cowhide, bones)), attackcowlevel2);
+ section2Task.addStep(not(burybones.getSidebarManualSkipRequirement()), burybones);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 11, "Travel to Aldarin via Fairy ring")), aldarinfairyring);
var grapeDone = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_13, true, 9, "Fill a Grape Barrel for the Foreman");
- section2Task.addStep(not(passOnceCompleted(or(grapeDone, new ItemRequirement("Barrel", 30037)), talktovineyardforeman.getSidebarManualSkipRequirement())), talktovineyardforeman);
- section2Task.addStep(not(passOnceCompleted(or(grapeDone, new ChatMessageRequirement("
Your grape barrel is now full. You should return it to the Vineyard foreman.")), collectshimmeringgrapes.getSidebarManualSkipRequirement())), collectshimmeringgrapes);
- section2Task.addStep(not(passOnceCompleted(grapeDone, returntovineyardforeman.getSidebarManualSkipRequirement())), returntovineyardforeman);
- section2Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, coins.quantity(100), chisel), withdrawaldarinbanker.getSidebarManualSkipRequirement())), withdrawaldarinbanker);
- section2Task.addStep(not(passOnceCompleted(coins.quantity(50001).alsoCheckBank(), tradetoci.getSidebarManualSkipRequirement())), tradetoci);
- section2Task.addStep(not(passOnceCompleted(cutextragems.getSidebarManualSkipRequirement(), cutextragems.getSidebarManualSkipRequirement())), cutextragems);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 18, "Defeat a Seagull"), attackseagulllevel2.getSidebarManualSkipRequirement())), attackseagulllevel2);
- section2Task.addStep(not(passOnceCompleted(and(tyrasHelm, bucket, rawRabbit.quantity(5)), tradechartership.getSidebarManualSkipRequirement())), tradechartership);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 21, "Cook something with an apron"), cookrabbitonoven.getSidebarManualSkipRequirement())), cookrabbitonoven);
- section2Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 1), eatcookedrabbit.getSidebarManualSkipRequirement())), eatcookedrabbit);
+ section2Task.addStep(not(or(grapeDone, new ItemRequirement("Barrel", 30037))), talktovineyardforeman);
+ section2Task.addStep(not(or(grapeDone, new ChatMessageRequirement("Your grape barrel is now full. You should return it to the Vineyard foreman."))), collectshimmeringgrapes);
+ section2Task.addStep(not(grapeDone), returntovineyardforeman);
+ section2Task.addStep(not(new Conditions(LogicType.AND, coins.quantity(100), chisel)), withdrawaldarinbanker);
+ section2Task.addStep(not(coins.quantity(50001).alsoCheckBank()), tradetoci);
+ section2Task.addStep(not(cutextragems.getSidebarManualSkipRequirement()), cutextragems);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 18, "Defeat a Seagull")), attackseagulllevel2);
+ section2Task.addStep(not(and(tyrasHelm, bucket, rawRabbit.quantity(5))), tradechartership);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 21, "Cook something with an apron")), cookrabbitonoven);
+ section2Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 1)), eatcookedrabbit);
section3Task = new ConditionalStep(this, talktopicaria);
- section3Task.addStep(not(passOnceCompleted(talktoantonia.getSidebarManualSkipRequirement(), talktoantonia.getSidebarManualSkipRequirement())), talktoantonia);
- section3Task.addStep(not(passOnceCompleted(or(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 11, "Light a Torch"), unlitTorch), buytorch.getSidebarManualSkipRequirement())), buytorch);
- section3Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 11, "Light a Torch"), lighttorch.getSidebarManualSkipRequirement())), lighttorch);
- section3Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 26, "Fill bucket of sand"), fillabucketwithsand.getSidebarManualSkipRequirement())), fillabucketwithsand);
- section3Task.addStep(not(passOnceCompleted(and(feathers.quantity(1000), bigFishingNet), talktopicaria.getSidebarManualSkipRequirement())), talktopicaria);
+ section3Task.addStep(not(talktoantonia.getSidebarManualSkipRequirement()), talktoantonia);
+ section3Task.addStep(not(or(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 11, "Light a Torch"), unlitTorch)), buytorch);
+ section3Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 11, "Light a Torch")), lighttorch);
+ section3Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 26, "Fill bucket of sand")), fillabucketwithsand);
+ section3Task.addStep(not(and(feathers.quantity(1000), bigFishingNet)), talktopicaria);
section4Task = new ConditionalStep(this, givestewtooli);
var charterDone = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 11);
- section4Task.addStep(not(passOnceCompleted(charterDone, chartertocivitas.getSidebarManualSkipRequirement())), chartertocivitas);
- section4Task.addStep(not(passOnceCompleted(buypineapples.getSidebarManualSkipRequirement(), buypineapples.getSidebarManualSkipRequirement())), buypineapples);
- section4Task.addStep(not(passOnceCompleted(depositpineapples.getSidebarManualSkipRequirement(), depositpineapples.getSidebarManualSkipRequirement())), depositpineapples);
- section4Task.addStep(not(passOnceCompleted(ironMace, buyironmace.getSidebarManualSkipRequirement())), buyironmace);
- section4Task.addStep(not(passOnceCompleted(ironMace.equipped(), equipironmace.getSidebarManualSkipRequirement())), getEquipironmace());
- section4Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 17, "Obtain a Casket from Fishing"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_11, true, 3, "Obtain an old boot from a fishing spot"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_13, true, 10, "Fish a House Key")), castfishingspot.getSidebarManualSkipRequirement())), castfishingspot);
- section4Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, jugOfWine, stew, moonLite, cupOfTea), talktobartender.getSidebarManualSkipRequirement())), talktobartender);
- section4Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 24, "Drink some moon-lite"), drinkmoonlite.getSidebarManualSkipRequirement())), drinkmoonlite);
- section4Task.addStep(not(passOnceCompleted(drinkjugofwine.getSidebarManualSkipRequirement(), drinkjugofwine.getSidebarManualSkipRequirement())), drinkjugofwine);
- section4Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_11, true, 29, "Successfully pickpocket a Citizen 10 times in a row"), pickpocketcitizenuntilsuccess.getSidebarManualSkipRequirement())), pickpocketcitizenuntilsuccess);
- section4Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 25, "Purchase a Player Owned House"), buypoh.getSidebarManualSkipRequirement())), buypoh);
- section4Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 28, "Sell some silk to a silk trader"), tradesilkmerchant.getSidebarManualSkipRequirement())), tradesilkmerchant);
- section4Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 28), givestewtooli.getSidebarManualSkipRequirement())), givestewtooli);
+ section4Task.addStep(not(charterDone), chartertocivitas);
+ section4Task.addStep(not(buypineapples.getSidebarManualSkipRequirement()), buypineapples);
+ section4Task.addStep(not(depositpineapples.getSidebarManualSkipRequirement()), depositpineapples);
+ section4Task.addStep(not(ironMace), buyironmace);
+ section4Task.addStep(not(ironMace.equipped()), getEquipironmace());
+ section4Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 17, "Obtain a Casket from Fishing"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_11, true, 3, "Obtain an old boot from a fishing spot"), new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_13, true, 10, "Fish a House Key"))), castfishingspot);
+ section4Task.addStep(not(new Conditions(LogicType.AND, jugOfWine, stew, moonLite, cupOfTea)), talktobartender);
+ section4Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 24, "Drink some moon-lite")), drinkmoonlite);
+ section4Task.addStep(not(drinkjugofwine.getSidebarManualSkipRequirement()), drinkjugofwine);
+ section4Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_11, true, 29, "Successfully pickpocket a Citizen 10 times in a row")), pickpocketcitizenuntilsuccess);
+ section4Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 25, "Purchase a Player Owned House")), buypoh);
+ section4Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 28, "Sell some silk to a silk trader")), tradesilkmerchant);
+ section4Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 28)), givestewtooli);
section5Task = new ConditionalStep(this, talktofriendlyforester);
- section5Task.addStep(not(passOnceCompleted(traveltoauburnvale.getSidebarManualSkipRequirement(), traveltoauburnvale.getSidebarManualSkipRequirement())), traveltoauburnvale);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 22), drinkcupoftea.getSidebarManualSkipRequirement())), drinkcupoftea);
- section5Task.addStep(not(passOnceCompleted(depositinauburnvale.getSidebarManualSkipRequirement(), depositinauburnvale.getSidebarManualSkipRequirement())), depositinauburnvale);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 5), tradesebamo.getSidebarManualSkipRequirement())), tradesebamo);
- section5Task.addStep(not(passOnceCompleted(tradelunami.getSidebarManualSkipRequirement(), tradelunami.getSidebarManualSkipRequirement())), tradelunami);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 15, "Chop using steel axe"), chopdowndeadtree.getSidebarManualSkipRequirement())), chopdowndeadtree);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 7, "Turn any Logs Into a Plank"), makeplankatsawmill.getSidebarManualSkipRequirement())), makeplankatsawmill);
+ section5Task.addStep(not(traveltoauburnvale.getSidebarManualSkipRequirement()), traveltoauburnvale);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 22)), drinkcupoftea);
+ section5Task.addStep(not(depositinauburnvale.getSidebarManualSkipRequirement()), depositinauburnvale);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 5)), tradesebamo);
+ section5Task.addStep(not(tradelunami.getSidebarManualSkipRequirement()), tradelunami);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 15, "Chop using steel axe")), chopdowndeadtree);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 7, "Turn any Logs Into a Plank")), makeplankatsawmill);
var leathChapsMade = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 22, "Craft Leather chaps");
- section5Task.addStep(not(passOnceCompleted(or(leathChapsMade, leather), tanleatheratchouani.getSidebarManualSkipRequirement())), tanleatheratchouani);
- section5Task.addStep(not(passOnceCompleted(or(leathChapsMade, and(needle, thread)), tradeauburnvaleshopkeeper.getSidebarManualSkipRequirement())), tradeauburnvaleshopkeeper);
- section5Task.addStep(not(passOnceCompleted(leathChapsMade, craftleatherchaps.getSidebarManualSkipRequirement())), craftleatherchaps);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 9, "Admire some beautiful scenery"), admirebeautifullog.getSidebarManualSkipRequirement())), admirebeautifullog);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 8, "Step onto an Ent trail"), steponenttrail.getSidebarManualSkipRequirement())), steponenttrail);
- section5Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 20, "Pick 6 flax"), pickflax.getSidebarManualSkipRequirement())), pickflax);
- section5Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND,
+ section5Task.addStep(not(or(leathChapsMade, leather)), tanleatheratchouani);
+ section5Task.addStep(not(or(leathChapsMade, and(needle, thread))), tradeauburnvaleshopkeeper);
+ section5Task.addStep(not(leathChapsMade), craftleatherchaps);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 9, "Admire some beautiful scenery")), admirebeautifullog);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 8, "Step onto an Ent trail")), steponenttrail);
+ section5Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 20, "Pick 6 flax")), pickflax);
+ section5Task.addStep(not(new Conditions(LogicType.AND,
new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 3, "Spin a Ball of Wool"),
new ItemRequirement("Bowstring", ItemID.BOW_STRING)
- ), spinflaxandwool.getSidebarManualSkipRequirement())), spinflaxandwool);
- section5Task.addStep(not(passOnceCompleted(forestryKit.equipped(), talktofriendlyforester.getSidebarManualSkipRequirement())), talktofriendlyforester);
+ )), spinflaxandwool);
+ section5Task.addStep(not(forestryKit.equipped()), talktofriendlyforester);
section6Task = new ConditionalStep(this, buyfishfrompicaria);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 10, "Travel by canoe"), traveltotalteklan.getSidebarManualSkipRequirement())), traveltotalteklan);
- section6Task.addStep(not(passOnceCompleted(depositintalteklan.getSidebarManualSkipRequirement(), depositintalteklan.getSidebarManualSkipRequirement())), depositintalteklan);
- section6Task.addStep(not(passOnceCompleted(tradeteicuh.getSidebarManualSkipRequirement(), tradeteicuh.getSidebarManualSkipRequirement())), tradeteicuh);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 10, "Travel by canoe")), traveltotalteklan);
+ section6Task.addStep(not(depositintalteklan.getSidebarManualSkipRequirement()), depositintalteklan);
+ section6Task.addStep(not(tradeteicuh.getSidebarManualSkipRequirement()), tradeteicuh);
var dyedCapePurple = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 0, "Dye a cape Purple");
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.OR, dyedCapePurple, purpleDye), tradexochitl.getSidebarManualSkipRequirement())), tradexochitl);
- section6Task.addStep(not(passOnceCompleted(dyedCapePurple, dyecape.getSidebarManualSkipRequirement())), dyecape);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 15, "Dance near a bard"), dancenearabard.getSidebarManualSkipRequirement())), dancenearabard);
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, shortbow, ironArrow.quantity(10)), tradearcuani.getSidebarManualSkipRequirement())), tradearcuani);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 26, "Kill frog"), attackfroglevel5.getSidebarManualSkipRequirement())), attackfroglevel5);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 12, "Tree in Tlati Rainforest"), chopdowndeadtreerainforest.getSidebarManualSkipRequirement())), chopdowndeadtreerainforest);
- section6Task.addStep(not(passOnceCompleted(traveltokastori.getSidebarManualSkipRequirement(), traveltokastori.getSidebarManualSkipRequirement())), traveltokastori);
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, smallFishingNet, fishingRod, fishingBait.quantity(50), lobsterPot, flyFishingRod, harpoon), tradesulisal.getSidebarManualSkipRequirement())), tradesulisal);
- section6Task.addStep(not(passOnceCompleted(sardinefishingspot.getSidebarManualSkipRequirement(), sardinefishingspot.getSidebarManualSkipRequirement())), sardinefishingspot);
- section6Task.addStep(not(passOnceCompleted(cooksardinesatoven.getSidebarManualSkipRequirement(), cooksardinesatoven.getSidebarManualSkipRequirement())), cooksardinesatoven);
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new SkillRequirement(Skill.FISHING, 10, true), rawShrimps, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 12, "Catch a Shrimp")), shrimpfishingspot.getSidebarManualSkipRequirement())), shrimpfishingspot);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 20, "Cook Shrimp"), cookshrimpatoven.getSidebarManualSkipRequirement())), cookshrimpatoven);
- section6Task.addStep(not(passOnceCompleted(new SkillRequirement(Skill.FISHING, 15, true), herringfishingspot.getSidebarManualSkipRequirement())), herringfishingspot);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 13, "Catch an Anchovy"), anchovyfishingspot.getSidebarManualSkipRequirement())), anchovyfishingspot);
+ section6Task.addStep(not(new Conditions(LogicType.OR, dyedCapePurple, purpleDye)), tradexochitl);
+ section6Task.addStep(not(dyedCapePurple), dyecape);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 15, "Dance near a bard")), dancenearabard);
+ section6Task.addStep(not(new Conditions(LogicType.AND, shortbow, ironArrow.quantity(10))), tradearcuani);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 26, "Kill frog")), attackfroglevel5);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 12, "Tree in Tlati Rainforest")), chopdowndeadtreerainforest);
+ section6Task.addStep(not(traveltokastori.getSidebarManualSkipRequirement()), traveltokastori);
+ section6Task.addStep(not(new Conditions(LogicType.AND, smallFishingNet, fishingRod, fishingBait.quantity(50), lobsterPot, flyFishingRod, harpoon)), tradesulisal);
+ section6Task.addStep(not(sardinefishingspot.getSidebarManualSkipRequirement()), sardinefishingspot);
+ section6Task.addStep(not(cooksardinesatoven.getSidebarManualSkipRequirement()), cooksardinesatoven);
+ section6Task.addStep(not(new Conditions(LogicType.AND, new SkillRequirement(Skill.FISHING, 10, true), rawShrimps, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 12, "Catch a Shrimp"))), shrimpfishingspot);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 20, "Cook Shrimp")), cookshrimpatoven);
+ section6Task.addStep(not(new SkillRequirement(Skill.FISHING, 15, true)), herringfishingspot);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 13, "Catch an Anchovy")), anchovyfishingspot);
var impBasement = new ZoneRequirement(new Zone(new WorldPoint(1375, 9449, 0), new WorldPoint(1387, 9457, 0)));
- section6Task.addStep(not(passOnceCompleted(impBasement, climbdownladder.getSidebarManualSkipRequirement())), climbdownladder);
+ section6Task.addStep(not(impBasement), climbdownladder);
var killedImpInBasement = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 21, "Killed basement imp");
var killedImpWithEarth = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 30, "Killed imp with earth spells");
- section6Task.addStep(not(passOnceCompleted(and(fiendishAshes, killedImpWithEarth, killedImpInBasement), attackimplevel2.getSidebarManualSkipRequirement())), attackimplevel2);
- section6Task.addStep(not(passOnceCompleted(not(impBasement), climbupladder.getSidebarManualSkipRequirement())), climbupladder);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 2, "Pet a Caique"), petcaique.getSidebarManualSkipRequirement())), petcaique);
- section6Task.addStep(not(passOnceCompleted(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_TLATI_FOUND, 1), activatestatuekastori.getSidebarManualSkipRequirement())), activatestatuekastori);
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new SkillRequirement(Skill.ATTACK, 20, false), new SkillRequirement(Skill.MAGIC, 21, false), new SkillRequirement(Skill.DEFENCE, 5, false)), attackgemstonecrablevel160.getSidebarManualSkipRequirement())), attackgemstonecrablevel160);
+ section6Task.addStep(not(and(fiendishAshes, killedImpWithEarth, killedImpInBasement)), attackimplevel2);
+ section6Task.addStep(not(not(impBasement)), climbupladder);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 2, "Pet a Caique")), petcaique);
+ section6Task.addStep(not(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_TLATI_FOUND, 1)), activatestatuekastori);
+ section6Task.addStep(not(new Conditions(LogicType.AND, new SkillRequirement(Skill.ATTACK, 20, false), new SkillRequirement(Skill.MAGIC, 21, false), new SkillRequirement(Skill.DEFENCE, 5, false))), attackgemstonecrablevel160);
var witnessCrabDie = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 14, "See gemstone crab burrow");
- section6Task.addStep(not(passOnceCompleted(witnessCrabDie, witnessthegemcrabsdefeat.getSidebarManualSkipRequirement())), witnessthegemcrabsdefeat);
- section6Task.addStep(not(passOnceCompleted(travelgloomthorn.getSidebarManualSkipRequirement(), travelgloomthorn.getSidebarManualSkipRequirement())), travelgloomthorn);
- section6Task.addStep(not(passOnceCompleted(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_AUBURN_FOUND, 1), activatestatuenemus.getSidebarManualSkipRequirement())), activatestatuenemus);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 20, "Defeat an Icefiend in Varlamore"), attackicefiendlevel13.getSidebarManualSkipRequirement())), attackicefiendlevel13);
- section6Task.addStep(not(passOnceCompleted(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_DARKFROST_FOUND, 1), activatestatuedarkfrost.getSidebarManualSkipRequirement())), activatestatuedarkfrost);
- section6Task.addStep(not(passOnceCompleted(ironMace.equipped(), equipironmace2.getSidebarManualSkipRequirement())), equipironmace2);
+ section6Task.addStep(not(witnessCrabDie), witnessthegemcrabsdefeat);
+ section6Task.addStep(not(travelgloomthorn.getSidebarManualSkipRequirement()), travelgloomthorn);
+ section6Task.addStep(not(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_AUBURN_FOUND, 1)), activatestatuenemus);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 20, "Defeat an Icefiend in Varlamore")), attackicefiendlevel13);
+ section6Task.addStep(not(new VarbitRequirement(VarbitID.PENDANT_OF_ATES_DARKFROST_FOUND, 1)), activatestatuedarkfrost);
+ section6Task.addStep(not(ironMace.equipped()), equipironmace2);
var killed5Bunnies = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 29, "Killed 5 bunnies");
var killed5ThingsWithMace = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 30, "Killed 5 with mace");
- section6Task.addStep(not(passOnceCompleted(and(killed5Bunnies, killed5ThingsWithMace), attackrabbitlevel2.getSidebarManualSkipRequirement())), attackrabbitlevel2);
- section6Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 9, "Cast Home Teleport"), hometeleport.getSidebarManualSkipRequirement())), hometeleport);
+ section6Task.addStep(not(and(killed5Bunnies, killed5ThingsWithMace)), attackrabbitlevel2);
+ section6Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 9, "Cast Home Teleport")), hometeleport);
var agility666 = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_13, true, 14, "666 jumps");
- section6Task.addStep(not(passOnceCompleted(agility666, yamaagility.getSidebarManualSkipRequirement())), yamaagility);
- section6Task.addStep(not(passOnceCompleted(not(new ZoneRequirement(new Zone(new WorldPoint(1463, 5566, 0), new WorldPoint(1546, 5644, 0)))), returntocivitas.getSidebarManualSkipRequirement())), returntocivitas);
- section6Task.addStep(not(passOnceCompleted(new ZoneRequirement(new Zone(new WorldPoint(1277, 2834, 0), new WorldPoint(1492, 3002, 0))), travelaldarin.getSidebarManualSkipRequirement())), travelaldarin);
- section6Task.addStep(not(passOnceCompleted(tyrasHelm.equipped(), withdrawtyrashelm.getSidebarManualSkipRequirement())), withdrawtyrashelm);
- section6Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, chisel, coins), withdrawaldarinbanker2.getSidebarManualSkipRequirement())), withdrawaldarinbanker2);
- section6Task.addStep(not(passOnceCompleted(new ObjectCondition(15314) /* Door make object */, enterportal.getSidebarManualSkipRequirement())), enterportal);
+ section6Task.addStep(not(agility666), yamaagility);
+ section6Task.addStep(not(not(new ZoneRequirement(new Zone(new WorldPoint(1463, 5566, 0), new WorldPoint(1546, 5644, 0))))), returntocivitas);
+ section6Task.addStep(not(new ZoneRequirement(new Zone(new WorldPoint(1277, 2834, 0), new WorldPoint(1492, 3002, 0)))), travelaldarin);
+ section6Task.addStep(not(tyrasHelm.equipped()), withdrawtyrashelm);
+ section6Task.addStep(not(new Conditions(LogicType.AND, chisel, coins)), withdrawaldarinbanker2);
+ section6Task.addStep(not(new ObjectCondition(15314) /* Door make object */), enterportal);
var builtRoom = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_7, true, 10);
- section6Task.addStep(not(passOnceCompleted(builtRoom, buildroom.getSidebarManualSkipRequirement())), buildroom);
- section6Task.addStep(not(passOnceCompleted(not(new ObjectCondition(15314)) /* Door make object */, exitportal.getSidebarManualSkipRequirement())), exitportal);
- section6Task.addStep(not(passOnceCompleted(new SkillRequirement(Skill.CRAFTING, 70, false), tradetociagain.getSidebarManualSkipRequirement())), tradetociagain);
- section6Task.addStep(not(passOnceCompleted(not(new ZoneRequirement(new Zone(new WorldPoint(1277, 2834, 0), new WorldPoint(1492, 3002, 0)))), talktoantonia2.getSidebarManualSkipRequirement())), talktoantonia2);
- section6Task.addStep(not(passOnceCompleted(and(new ItemRequirement("Bronze full helm", ItemID.BRONZE_FULL_HELM), new ItemRequirement("Adamant full helm", ItemID.ADAMANT_FULL_HELM)), tradethurid.getSidebarManualSkipRequirement())), tradethurid);
- section6Task.addStep(not(passOnceCompleted(and(
+ section6Task.addStep(not(builtRoom), buildroom);
+ section6Task.addStep(not(not(new ObjectCondition(15314)) /* Door make object */), exitportal);
+ section6Task.addStep(not(new SkillRequirement(Skill.CRAFTING, 70, false)), tradetociagain);
+ section6Task.addStep(not(not(new ZoneRequirement(new Zone(new WorldPoint(1277, 2834, 0), new WorldPoint(1492, 3002, 0))))), talktoantonia2);
+ section6Task.addStep(not(and(new ItemRequirement("Bronze full helm", ItemID.BRONZE_FULL_HELM), new ItemRequirement("Adamant full helm", ItemID.ADAMANT_FULL_HELM))), tradethurid);
+ section6Task.addStep(not(and(
new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 20), /*sworfish*/
new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 21) /*tuna*/
- ), buyfishfrompicaria.getSidebarManualSkipRequirement())), buyfishfrompicaria);
+ )), buyfishfrompicaria);
var inCamTorum = new ZoneRequirement(new Zone(new WorldPoint(1378, 9502, 1), new WorldPoint(1524, 9600, 3)));
section7Task = new ConditionalStep(this, tradecamtorumblacksmith);
- section7Task.addStep(not(passOnceCompleted(inCamTorum, entercamtorum.getSidebarManualSkipRequirement())), entercamtorum);
- section7Task.addStep(not(passOnceCompleted(
+ section7Task.addStep(not(inCamTorum), entercamtorum);
+ section7Task.addStep(not(
new Conditions(LogicType.AND, new ItemRequirement("Eye of newt", 222).quantity(100),
- new ItemRequirement("Vial of water", 228).quantity(100), pestleAndMortar), tradehuito.getSidebarManualSkipRequirement())), tradehuito);
+ new ItemRequirement("Vial of water", 228).quantity(100), pestleAndMortar)), tradehuito);
var steelPick = new ItemRequirement("Steel pickaxe", ItemID.STEEL_PICKAXE);
var mithPick = new ItemRequirement("Mithril pickaxe", ItemID.MITHRIL_PICKAXE);
var addyPick = new ItemRequirement("Adamant pickaxe", ItemID.ADAMANT_PICKAXE);
var runePick = new ItemRequirement("Rune pickaxe", ItemID.RUNE_PICKAXE);
- section7Task.addStep(not(passOnceCompleted(and(steelPick, mithPick, addyPick, runePick), tradetizoro.getSidebarManualSkipRequirement())), tradetizoro);
+ section7Task.addStep(not(and(steelPick, mithPick, addyPick, runePick)), tradetizoro);
var hadHaircut = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 10);
- section7Task.addStep(not(passOnceCompleted(hadHaircut, haircutsonalo.getSidebarManualSkipRequirement())), haircutsonalo);
+ section7Task.addStep(not(hadHaircut), haircutsonalo);
var hadBeardTrimmed = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_3, true, 13);
- section7Task.addStep(not(passOnceCompleted(hadBeardTrimmed, shavesonalo.getSidebarManualSkipRequirement())), shavesonalo);
+ section7Task.addStep(not(hadBeardTrimmed), shavesonalo);
var lawRunes = new ItemRequirement("Law runes", ItemID.LAWRUNE);
var natureRunes = new ItemRequirement("Nature runes", ItemID.NATURERUNE);
var deathRunes = new ItemRequirement("Death runes", ItemID.DEATHRUNE);
var gotRunes = and(lawRunes.quantity(50), natureRunes.quantity(500), deathRunes.quantity(100));
- section7Task.addStep(not(passOnceCompleted(gotRunes, tradenahta.getSidebarManualSkipRequirement())), tradenahta);
+ section7Task.addStep(not(gotRunes), tradenahta);
var castLowAlch = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_7, true, 17);
- section7Task.addStep(not(passOnceCompleted(castLowAlch, lowalchrunes.getSidebarManualSkipRequirement())), lowalchrunes);
- section7Task.addStep(not(passOnceCompleted(bigFishingNet, depositcamtorumbanker.getSidebarManualSkipRequirement())), depositcamtorumbanker);
- section7Task.addStep(not(passOnceCompleted(jugOfWine.quantity(5), tradecamtorumbartender.getSidebarManualSkipRequirement())), tradecamtorumbartender);
+ section7Task.addStep(not(castLowAlch), lowalchrunes);
+ section7Task.addStep(not(bigFishingNet), depositcamtorumbanker);
+ section7Task.addStep(not(jugOfWine.quantity(5)), tradecamtorumbartender);
var equipIronDagger = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 6);
- section7Task.addStep(not(passOnceCompleted(equipIronDagger, tradecamtorumblacksmith.getSidebarManualSkipRequirement())), tradecamtorumblacksmith);
+ section7Task.addStep(not(equipIronDagger), tradecamtorumblacksmith);
section8Task = new ConditionalStep(this, exitthiefsden);
- section8Task.addStep(not(passOnceCompleted(not(inCamTorum), leaguemenuteleport.getSidebarManualSkipRequirement())), leaguemenuteleport);
+ section8Task.addStep(not(not(inCamTorum)), leaguemenuteleport);
var equippedMithWeapon = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_9, true, 8);
- section8Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, adamantPlatebody, adamantPlatelegs, bronzePlatelegs, bronzePlatebody, mithrilSpear, steelPlatebody), tradefortisblacksmith.getSidebarManualSkipRequirement())), tradefortisblacksmith);
- section8Task.addStep(not(passOnceCompleted(equippedMithWeapon, equipmithrilspear.getSidebarManualSkipRequirement())), equipmithrilspear);
+ section8Task.addStep(not(new Conditions(LogicType.AND, adamantPlatebody, adamantPlatelegs, bronzePlatelegs, bronzePlatebody, mithrilSpear, steelPlatebody)), tradefortisblacksmith);
+ section8Task.addStep(not(equippedMithWeapon), equipmithrilspear);
var lowAlched500gp = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 19);
- section8Task.addStep(not(passOnceCompleted(lowAlched500gp, lowalchsteelplatebody.getSidebarManualSkipRequirement())), lowalchsteelplatebody);
- section8Task.addStep(not(passOnceCompleted(depositfortiswestbank.getSidebarManualSkipRequirement(), depositfortiswestbank.getSidebarManualSkipRequirement())), depositfortiswestbank);
+ section8Task.addStep(not(lowAlched500gp), lowalchsteelplatebody);
+ section8Task.addStep(not(depositfortiswestbank.getSidebarManualSkipRequirement()), depositfortiswestbank);
var inGuardBasement = new ZoneRequirement(new Zone(new WorldPoint(1616, 9556, 0), new WorldPoint(1667, 9587, 0)));
var killedGuard = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 17);
- section8Task.addStep(not(passOnceCompleted(or(inGuardBasement, killedGuard), enterguardbunker.getSidebarManualSkipRequirement())), enterguardbunker);
- section8Task.addStep(not(passOnceCompleted(killedGuard, attackguardlevel21.getSidebarManualSkipRequirement())), attackguardlevel21);
- section8Task.addStep(not(passOnceCompleted(not(inGuardBasement), exitguardbunker.getSidebarManualSkipRequirement())), exitguardbunker);
+ section8Task.addStep(not(or(inGuardBasement, killedGuard)), enterguardbunker);
+ section8Task.addStep(not(killedGuard), attackguardlevel21);
+ section8Task.addStep(not(not(inGuardBasement)), exitguardbunker);
var inThiefDen = new ZoneRequirement(new Zone(new WorldPoint(1608, 9560, 0), new WorldPoint(1625, 9579, 0)));
var killedThief = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 19);
var exitDen = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 25);
- section8Task.addStep(not(passOnceCompleted(or(inThiefDen, and(killedThief, exitDen)), enterthiefsden.getSidebarManualSkipRequirement())), enterthiefsden);
- section8Task.addStep(not(passOnceCompleted(killedThief, attackthieflevel16.getSidebarManualSkipRequirement())), attackthieflevel16);
- section8Task.addStep(not(passOnceCompleted(exitDen, exitthiefsden.getSidebarManualSkipRequirement())), exitthiefsden);
+ section8Task.addStep(not(or(inThiefDen, and(killedThief, exitDen))), enterthiefsden);
+ section8Task.addStep(not(killedThief), attackthieflevel16);
+ section8Task.addStep(not(exitDen), exitthiefsden);
section9Task = new ConditionalStep(this, attackoryxlevel15);
var churnedButter = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_8, true, 3, "Churn some butter");
- section9Task.addStep(not(passOnceCompleted(or(bucketOfMilk, churnedButter), milkdairybuffalo2.getSidebarManualSkipRequirement())), milkdairybuffalo2);
- section9Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 16, "Defeat a Buffalo"), attackbuffalolevel9.getSidebarManualSkipRequirement())), attackbuffalolevel9);
- section9Task.addStep(not(passOnceCompleted(churnedButter, churndairychurn.getSidebarManualSkipRequirement())), churndairychurn);
+ section9Task.addStep(not(or(bucketOfMilk, churnedButter)), milkdairybuffalo2);
+ section9Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 16, "Defeat a Buffalo")), attackbuffalolevel9);
+ section9Task.addStep(not(churnedButter), churndairychurn);
var madeButterPotato = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_7, true, 16, "Butter a potato");
- section9Task.addStep(not(passOnceCompleted(or(potato, madeButterPotato), pickpotato2.getSidebarManualSkipRequirement())), pickpotato2);
- section9Task.addStep(not(passOnceCompleted(or(bakedPotato, madeButterPotato), cookfarmingpatchoven.getSidebarManualSkipRequirement())), cookfarmingpatchoven);
- section9Task.addStep(not(passOnceCompleted(madeButterPotato, combinebutterwithpotato.getSidebarManualSkipRequirement())), combinebutterwithpotato);
+ section9Task.addStep(not(or(potato, madeButterPotato)), pickpotato2);
+ section9Task.addStep(not(or(bakedPotato, madeButterPotato)), cookfarmingpatchoven);
+ section9Task.addStep(not(madeButterPotato), combinebutterwithpotato);
var compostFull = new VarbitRequirement(VarbitID.FARMING_TRANSMIT_E2, 5, Operation.GREATER_EQUAL);
- section9Task.addStep(not(passOnceCompleted(compostFull, fillcompostbin.getSidebarManualSkipRequirement())), fillcompostbin);
+ section9Task.addStep(not(compostFull), fillcompostbin);
var plantedPotatoSeeds = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 23, "Plant Seeds in an Allotment Patch");
- section9Task.addStep(not(passOnceCompleted(or(plantedPotatoSeeds, potatoSeed.quantity(3)), pickpocketmasterfarmer.getSidebarManualSkipRequirement())), pickpocketmasterfarmer);
+ section9Task.addStep(not(or(plantedPotatoSeeds, potatoSeed.quantity(3))), pickpocketmasterfarmer);
var protectedCrops = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 24, "Protect Your Crops");
- section9Task.addStep(not(passOnceCompleted(or(protectedCrops, new Conditions(LogicType.AND, rake, seedDibber, compost.quantity(2))), buyseeddibberharminia.getSidebarManualSkipRequirement())), buyseeddibberharminia);
- section9Task.addStep(not(passOnceCompleted(or(new VarbitRequirement(VarbitID.FARMING_TRANSMIT_B1, 3, Operation.GREATER_EQUAL), plantedPotatoSeeds), rakeallotment.getSidebarManualSkipRequirement())), rakeallotment);
- section9Task.addStep(not(passOnceCompleted(plantedPotatoSeeds, plantpotatoseeds.getSidebarManualSkipRequirement())), plantpotatoseeds);
- section9Task.addStep(not(passOnceCompleted(protectedCrops, payprotectharminia.getSidebarManualSkipRequirement())), payprotectharminia);
- section9Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_12, true, 24, "Defeat a Dire Wolf"), attackdirewolflevel88.getSidebarManualSkipRequirement())), attackdirewolflevel88);
- section9Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_9, true, 0, "Defeat a Scorpion with a Mithril Spear"), attackscorpionlevel14.getSidebarManualSkipRequirement())), attackscorpionlevel14);
- section9Task.addStep(not(passOnceCompleted(copperOre, minecopperrocks.getSidebarManualSkipRequirement())), minecopperrocks);
+ section9Task.addStep(not(or(protectedCrops, new Conditions(LogicType.AND, rake, seedDibber, compost.quantity(2)))), buyseeddibberharminia);
+ section9Task.addStep(not(or(new VarbitRequirement(VarbitID.FARMING_TRANSMIT_B1, 3, Operation.GREATER_EQUAL), plantedPotatoSeeds)), rakeallotment);
+ section9Task.addStep(not(plantedPotatoSeeds), plantpotatoseeds);
+ section9Task.addStep(not(protectedCrops), payprotectharminia);
+ section9Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_12, true, 24, "Defeat a Dire Wolf")), attackdirewolflevel88);
+ section9Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_9, true, 0, "Defeat a Scorpion with a Mithril Spear")), attackscorpionlevel14);
+ section9Task.addStep(not(copperOre), minecopperrocks);
- section9Task.addStep(not(passOnceCompleted(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 13, "Mine 5 Tin Ore"), new SkillRequirement(Skill.MINING, 15, true)), minetinrocks.getSidebarManualSkipRequirement())), minetinrocks);
- section9Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_12, true, 25, null), attackjaguarlevel67.getSidebarManualSkipRequirement())), attackjaguarlevel67);
- section9Task.addStep(not(passOnceCompleted(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 27, "Defeat a Hill Giant"), attackhillgiantlevel28.getSidebarManualSkipRequirement())), attackhillgiantlevel28);
+ section9Task.addStep(not(new Conditions(LogicType.AND, new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 13, "Mine 5 Tin Ore"), new SkillRequirement(Skill.MINING, 15, true))), minetinrocks);
+ section9Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_12, true, 25, null)), attackjaguarlevel67);
+ section9Task.addStep(not(new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_0, true, 27, "Defeat a Hill Giant")), attackhillgiantlevel28);
var minedClay = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_1, true, 14);
- section9Task.addStep(not(passOnceCompleted(minedClay, mineclayrocks.getSidebarManualSkipRequirement())), mineclayrocks);
+ section9Task.addStep(not(minedClay), mineclayrocks);
var minedIron = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_10, true, 28);
- section9Task.addStep(not(passOnceCompleted(minedIron, mineironrocks.getSidebarManualSkipRequirement())), mineironrocks);
+ section9Task.addStep(not(minedIron), mineironrocks);
var mineSilver = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_10, true, 27);
- section9Task.addStep(not(passOnceCompleted(mineSilver, minesilverrocks.getSidebarManualSkipRequirement())), minesilverrocks);
+ section9Task.addStep(not(mineSilver), minesilverrocks);
var minedCoal = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_2, true, 31);
- section9Task.addStep(not(passOnceCompleted(minedCoal, minecoalrocks.getSidebarManualSkipRequirement())), minecoalrocks);
- section9Task.addStep(not(passOnceCompleted(minegoldrocks.getSidebarManualSkipRequirement(), minegoldrocks.getSidebarManualSkipRequirement())), minegoldrocks);
- section9Task.addStep(not(passOnceCompleted(new SkillRequirement(Skill.MINING, 55), minemoreiron.getSidebarManualSkipRequirement())), minemoreiron);
+ section9Task.addStep(not(minedCoal), minecoalrocks);
+ section9Task.addStep(not(minegoldrocks.getSidebarManualSkipRequirement()), minegoldrocks);
+ section9Task.addStep(not(new SkillRequirement(Skill.MINING, 55)), minemoreiron);
var minedMithril = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_10, true, 29);
- section9Task.addStep(not(passOnceCompleted(minedMithril, minemithrilrocks.getSidebarManualSkipRequirement())), minemithrilrocks);
+ section9Task.addStep(not(minedMithril), minemithrilrocks);
var fishedMackrel = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_7, true, 22);
- section9Task.addStep(not(passOnceCompleted(fishedMackrel, bignetcoastfishingspot.getSidebarManualSkipRequirement())), bignetcoastfishingspot);
+ section9Task.addStep(not(fishedMackrel), bignetcoastfishingspot);
var fishedCod = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_7, true, 19);
- section9Task.addStep(not(passOnceCompleted(fishedCod, bignetcoastfishingspotcod.getSidebarManualSkipRequirement())), bignetcoastfishingspotcod);
+ section9Task.addStep(not(fishedCod), bignetcoastfishingspotcod);
var killedOryx = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_12, true, 26);
- section9Task.addStep(not(passOnceCompleted(killedOryx, attackoryxlevel15.getSidebarManualSkipRequirement())), attackoryxlevel15);
+ section9Task.addStep(not(killedOryx), attackoryxlevel15);
var tiaraMould = new ItemRequirement("Tiara mould", ItemID.TIARA_MOULD);
@@ -1344,12 +1344,12 @@ public class FauxLeaguesHelper extends ComplexStateQuestHelper
var amuletMould = new ItemRequirement("Amulet mould", ItemID.AMULET_MOULD);
section10Task = new ConditionalStep(this, thankfaux);
var madePottery = new VarplayerRequirement(VarPlayerID.LEAGUE_TASK_COMPLETED_13, true, 28);
- section10Task.addStep(not(passOnceCompleted(or(madePottery, and(tiaraMould.alsoCheckBank(), ringMould.alsoCheckBank(), amuletMould.alsoCheckBank())), buymouldsartima.getSidebarManualSkipRequirement())), buymouldsartima);
- section10Task.addStep(not(passOnceCompleted(or(madePottery, softClay), softclayspawn.getSidebarManualSkipRequirement())), softclayspawn);
+ section10Task.addStep(not(or(madePottery, and(tiaraMould.alsoCheckBank(), ringMould.alsoCheckBank(), amuletMould.alsoCheckBank()))), buymouldsartima);
+ section10Task.addStep(not(or(madePottery, softClay)), softclayspawn);
var unfiredItem = new ItemRequirement("Unfired item", ItemID.BOWL_UNFIRED);
unfiredItem.addAlternates(ItemID.CUP_UNFIRED, ItemID.PIEDISH_UNFIRED, ItemID.POT_UNFIRED, ItemID.PLANTPOT_UNFIRED);
- section10Task.addStep(not(passOnceCompleted(or(unfiredItem, madePottery), usepotterswheel.getSidebarManualSkipRequirement())), usepotterswheel);
- section10Task.addStep(not(passOnceCompleted(madePottery, firepotteryoven.getSidebarManualSkipRequirement())), firepotteryoven);
+ section10Task.addStep(not(or(unfiredItem, madePottery)), usepotterswheel);
+ section10Task.addStep(not(madePottery), firepotteryoven);
ConditionalStep allSections = new ConditionalStep(this, section10Task);
allSections.addStep(section1Task);
@@ -1372,37 +1372,6 @@ public class FauxLeaguesHelper extends ComplexStateQuestHelper
return equipironmace;
}
- private Requirement passOnceCompleted(Requirement completion, ManualRequirement manualOverride)
- {
- if (completion == null || manualOverride == null)
- {
- return completion;
- }
- return new Requirement()
- {
- @Override
- public boolean check(Client client)
- {
- if (manualOverride.check(client))
- {
- return true;
- }
- boolean passed = completion.check(client);
- if (passed && !manualOverride.check(client))
- {
- manualOverride.setShouldPass(true);
- }
- return passed;
- }
-
- @Override
- public String getDisplayText()
- {
- return completion.getDisplayText();
- }
- };
- }
-
@Override
public List getPanels()
{
diff --git a/src/main/java/com/questhelper/steps/ConditionalStep.java b/src/main/java/com/questhelper/steps/ConditionalStep.java
index 512a4ac72..19ce164ff 100644
--- a/src/main/java/com/questhelper/steps/ConditionalStep.java
+++ b/src/main/java/com/questhelper/steps/ConditionalStep.java
@@ -28,6 +28,7 @@ import com.google.inject.Inject;
import com.questhelper.QuestHelperPlugin;
import com.questhelper.questhelpers.QuestHelper;
import com.questhelper.requirements.ChatMessageRequirement;
+import com.questhelper.requirements.ManualRequirement;
import com.questhelper.requirements.MultiChatMessageRequirement;
import com.questhelper.requirements.Requirement;
import com.questhelper.requirements.conditional.Conditions;
@@ -41,6 +42,7 @@ import com.questhelper.steps.tools.DefinedPoint;
import com.questhelper.steps.widget.AbstractWidgetHighlight;
import lombok.NonNull;
import lombok.Setter;
+import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.coords.WorldPoint;
import net.runelite.api.events.*;
@@ -48,6 +50,7 @@ import net.runelite.api.gameval.InterfaceID;
import net.runelite.client.eventbus.EventBus;
import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.ui.overlay.components.PanelComponent;
+import org.jetbrains.annotations.NotNull;
import java.awt.*;
import java.util.List;
@@ -116,22 +119,12 @@ public class ConditionalStep extends QuestStep implements OwnerStep
{
var newSet = new HashSet<>(step.steps.keySet());
newSet.remove(null);
- addStep(new Conditions(LogicType.OR, new ArrayList<>(newSet)), step, false);
- }
-
- private boolean isSingleNotRequirement(Requirement requirement)
- {
- if (!(requirement instanceof Conditions))
- {
- return false;
- }
- Conditions condition = (Conditions) requirement;
- return condition.getLogicType() == LogicType.NOR && condition.getConditions().size() == 1;
+ addStep(passOnceCompleted(new Conditions(LogicType.OR, new ArrayList<>(newSet)), step), step, false);
}
public void addStep(Requirement requirement, QuestStep step)
{
- addStep(requirement, step, false);
+ addStep(passOnceCompleted(requirement, step), step, false);
}
// Each addStep can have an ID. When you add an ID, it keeps a separate ID to Steps OrderedHashSet.
@@ -141,11 +134,44 @@ public class ConditionalStep extends QuestStep implements OwnerStep
public void addStep(Requirement requirement, QuestStep step, boolean isLockable)
{
step.setLockable(isLockable);
- this.steps.put(requirement, step);
+ this.steps.put(passOnceCompleted(requirement, step), step);
checkForConditions(requirement);
}
+ private Requirement passOnceCompleted(Requirement completion, QuestStep step)
+ {
+ var manualOverride = step.getSidebarManualSkipRequirement();
+ if (completion == null || manualOverride == null)
+ {
+
+ return completion;
+ }
+ return new Requirement()
+ {
+ @Override
+ public boolean check(Client client)
+ {
+ if (manualOverride.check(client))
+ {
+ return true;
+ }
+ boolean passed = completion.check(client);
+ if (passed && !manualOverride.check(client))
+ {
+ manualOverride.setShouldPass(true);
+ }
+ return passed;
+ }
+
+ @Override
+ public @NotNull String getDisplayText()
+ {
+ return completion.getDisplayText();
+ }
+ };
+ }
+
private void checkForConditions(Requirement requirement)
{
checkForChatConditions(requirement);