Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Made plant check of Agricarnation more flexible #4659

Open
wants to merge 1 commit into
base: 1.20.x
Choose a base branch
from

Conversation

TheRealWormbo
Copy link
Collaborator

Resolves #4644 (and also closes #4446, which is superseded by this PR) by implementing the rule set laid out in that issue:

  • when the location of a GrowingPlantBodyBlock is encountered, the corresponding head block location is used instead
  • new block tags:
    • #botania:agricarnation/growth_candidate specifies blocks that should be considered candidates, in addition to any blocks that extend BushBlock or accept bonemeal
    • #botania:agricarnation/apply_bonemeal defines blocks that should be boosted by applying bonemeal instead of random ticks (only relevant if the block actually accepts bonemeal)
    • #botania:agricarnation/growth_excluded excludes blocks from any growth boost considerations
  • azalea bushes are bonemealing candidates via the corresponding tag by default, to make them work similar to other saplings
  • the bonemealing tag is included in the growth candidates tag by default
  • vanilla mushrooms are growth-excluded via the corrsponding tag by default
  • blocks extending SpreadingSnowyDirtBlock (i.e. grass or mycelium) or NyliumBlock are excluded via code, unless explicitly tagged as growth candidate
  • the flower will boost growth for candidate blocks that can be random-ticked, or that are tagged for bonemeal application and also accept bonemeal
  • bonemeal application needs to pass a built-in chance check and the block's own success check before applying the bonemeal effect; mana will still be consumed if either of those checks fail

- if a `GrowingPlantBodyBlock` is found (kelp, cave/nether vines), its corresponding head block is picked as candidate location instead
- three new Agricarnation-related block tags for growth candidates, growth exclusions (for vanilla mushrooms by default) and growing via bonemeal application (by default, azalea bushes are tagged for bonemealing, and the entire bonemealing tag is included in the candidate tag)
- blocks extending SpreadingSnowyDirtBlock or NyliumBlock that aren't explicitly tagged as growth candidates, and any blocks tagged for exclusion are not considered at all
- blocks that accept bonemeal, extend BushBlock, or are tagged as candidate are considered as candidates
- candidate blocks that can be random-ticked, or that are tagged for bonemealing and can accept bonemeal are accepted as growth boost target
- if a growth boost target is tagged for bonemealing and accepts bonemeal, it needs to pass both the Agricarnation's and the block's success chance checks to receive a bonemeal-based boost; mana is consumed even if those checks fail
- regardless whether a growth boost target block is tagged for bonemealing, if it cannot accept bonemeal, it will be random-ticked instead
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Agricarnation has conflicting requirement and effect
2 participants