Skip to content

Conversation

@LordIdra
Copy link
Contributor

Adds a new abstraction for machines which process recipes. This is the first of 2 abstractions that will be used to create GUI machines which process recipes much like AContainer (the second abstraction will be concerned with inventory management).

Also adds a new postInitialise method which is invoked after either constructor is invoked. This was starting to be necessary for a few different use cases.

Usage:

  1. call setRecipeType in your create constructor
  2. call setProgressItem in your postInitialise method (if using a progress item)
  3. use startRecipe to start a new recipe
  4. the current recipe will be ticked automatically, and when it finished, onRecipeFinished will be called (which must be implemented)
  5. override tick and add your recipe start logic, and any other ticking logic like particles, making sure to call PylonRecipeProcessor.super.tick
  6. that's it

See companion base PR for an example, I have converted the diesel pipe bender to use this interface

…pes/RecipeProcessorDataPersistentDataType.kt

Co-authored-by: Seggan <seggan21@gmail.com>
Base automatically changed from direct-cargo-connections to master December 30, 2025 12:39
@LordIdra LordIdra merged commit 3687ea9 into master Dec 30, 2025
3 checks passed
@LordIdra LordIdra deleted the pylon-recipe-processor branch December 30, 2025 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants