validated furnace grinds

This commit is contained in:
dtookey 2023-08-05 07:51:46 -04:00
parent 333872f5bb
commit 6e3df53ce1
2 changed files with 74 additions and 6 deletions

View File

@ -1,7 +1,7 @@
import java.awt.Point import java.awt.Point
fun main() { fun main() {
Routines.fullRunIncense(29, 29, 29, 29) // Routines.fullRunIncense(29, 29, 29, 29)
// Routines.processInventoryAtFurnace(100) Routines.processInventoryAtFurnace(28)
} }

View File

@ -75,7 +75,20 @@ object Routines {
println("Entire chain finished in ${agent.prettyTimeString(finish - start)}") println("Entire chain finished in ${agent.prettyTimeString(finish - start)}")
} }
/**
* Cleans a specified volume of grimy herbs into clean herbs.
*
* @param volume The number of grimy herbs to clean.
* @param agent Optional. The Agent instance to use for banking actions.
* @param bankPoint Optional. The Point location of the bank to use.
*
* This handles the workflow of:
* - Withdrawing grimy herb preset
* - Cleaning grimy herbs without dialog
* - Depositing clean herbs
*
* It performs the actions at the bank location using the provided agent.
*/
fun cleanHerbs(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) { fun cleanHerbs(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) {
val params = StandingTaskParams( val params = StandingTaskParams(
volume, volume,
@ -90,7 +103,19 @@ object Routines {
Agent.doStandingTask(params) Agent.doStandingTask(params)
} }
@Deprecated("Needs validation before you use it for realsies")
/**
* Cuts a specified volume of magic logs into incense sticks.
*
* @param volume The number of magic logs to cut into sticks.
* @param agent Optional. The Agent instance to use for banking actions.
* @param bankPoint Optional. The Point location of the bank to use.
*
* This handles the workflow of:
* - Withdrawing magic log preset
* - Cutting magic logs into incense sticks without dialog
* - Depositing incense sticks
*/
fun cutIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) { fun cutIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) {
val params = StandingTaskParams( val params = StandingTaskParams(
volume, volume,
@ -106,7 +131,18 @@ object Routines {
} }
@Deprecated("Needs validation before you use it for realsies") /**
* Coats a specified volume of incense sticks with ashes.
*
* @param volume The number of incense sticks to coat with ashes.
* @param agent Optional Agent instance to use for banking actions.
* @param bankPoint Optional Point location of the bank to use.
*
* This handles the workflow of:
* - Withdrawing incense stick preset
* - Coating incense sticks with ashes using hotkey
* - Depositing coated sticks
*/
fun coatIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) { fun coatIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) {
val params = StandingTaskParams( val params = StandingTaskParams(
volume, volume,
@ -121,7 +157,18 @@ object Routines {
Agent.doStandingTask(params) Agent.doStandingTask(params)
} }
@Deprecated("Needs validation before you use it for realsies") /**
* Infuses a specified volume of incense sticks with clean herbs.
*
* @param volume The number of incense sticks to infuse with herbs.
* @param agent Optional Agent instance to use for banking actions.
* @param bankPoint Optional Point location of the bank to use.
*
* This handles the workflow of:
* - Withdrawing incense stick preset
* - Infusing incense sticks with herbs using hotkey
* - Depositing infused incense sticks
*/
fun infuseIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) { fun infuseIncenseSticks(volume: Int, agent: Agent = Agent(), bankPoint: Point = agent.getBankPoint()) {
val params = StandingTaskParams( val params = StandingTaskParams(
volume, volume,
@ -188,6 +235,27 @@ object Routines {
} }
/**
* Processes a volume of inventory at a furnace near the bank.
*
* @param volume The number of inventory slots to process at the furnace.
*
* The following 2 values are hard coded from my own personal setup
* furnaceFromChest The Point location of the furnace from the bank chest.
* chestFromFurnace The Point location of the bank chest from the furnace.
*
* Uses an Agent instance for banking and traveling.
*
* This handles the workflow of:
* - Withdrawing bars at bank chest
* - Walking to furnace and processing bars into items
* - Walking back to bank and depositing processed items
*
* The furnace and bank locations are passed in as specific Point locations.
* The agent handles the navigation and banking actions.
*
* Before processing, the camera is reset to align points.
*/
fun processInventoryAtFurnace(volume: Int) { fun processInventoryAtFurnace(volume: Int) {
//these two points are specific to my computer. we need to export these into a file or something //these two points are specific to my computer. we need to export these into a file or something
val furnaceFromChest = Point(776, 321) val furnaceFromChest = Point(776, 321)