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

2.2.x Feature: Heliolith, Levita, and Surtrum rework #785

Merged
merged 4 commits into from
Apr 5, 2024

Conversation

MBatt1
Copy link
Contributor

@MBatt1 MBatt1 commented Mar 31, 2024

  • Added a new decoration block set similar to granite, andesite and diorite to Paradise; "Heliolith"
    • Heliolith has a polished version like the others.
    • Spawns in striped veins in the islands
  • Added Levita and Levita Ore
    • Levita is like reverse gravel, floating upwards when not supported above
    • Levita Ore is a rare ore that can be used to craft the Redstone Levitator (previously Surtrum Levitator)
    • Levita can be used to make a Levitation Wand which can levitate blocks and entities 25 times, as long as the blocks are iron tool level or below
    • Levita Ore spawns in veins of 1-2 and can be found inside of Levita blobs rarely as well
  • Reworked Surtrum to not have any gravity functionality
    • All Surtrum items are now fireproof
    • Surtrum tools have innate Fire Aspect 2
2024-03-31_11 47 56 2024-03-31_11 51 55

Summary by CodeRabbit

  • New Features

    • Introduced a new GravityWandItem for manipulating gravity in-game.
    • Added new blocks: LEVITA, HELIOLITH (including variants), and LEVITA_ORE.
    • New items: LEVITA_GEM, LEVITA_WAND, and fireproof settings for REFINED_SURTRUM and RAW_SURTRUM.
    • New ore generation feature: JaggedOreFeature for jagged ore structures.
    • New world features and placements for HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA.
  • Bug Fixes

    • Removed gravitite handling from LivingEntityMixin, affecting damage logic.
  • Enhancements

    • Added method validForWand to check block state validity for GravityWandItem.
    • Introduced a tag IGNITING_TOOLS for specific tool handling.
  • Tools & Utilities

    • Added asset_helper.py for generating Minecraft asset files for the mod.

Copy link

coderabbitai bot commented Mar 31, 2024

Walkthrough

The recent updates to the "paradise_lost" mod introduce new blocks and items, including the unique LEVITA and HELIOLITH blocks, alongside their various forms and the LEVITA_ORE. Notably, a new item, the GravityWandItem, offers innovative gameplay by manipulating gravity. Changes also include adjustments to item settings, the introduction of new features and configurations for ore generation, and the addition of an asset_helper.py script to streamline asset creation. These enhancements expand the mod’s universe with fresh mechanics and content.

Changes

Files Change Summary
.../api/FloatingBlockHelper.java
.../mixin/enchantment/EnchantmentHelperMixin.java
.../mixin/entity/LivingEntityMixin.java
.../tag/ParadiseLostItemTags.java
- New method for validating blocks with GravityWandItem.
- Mixin adjustments for item handling and damage logic.
- New tag for igniting tools introduced.
.../blocks/ParadiseLostBlocks.java - Addition of LEVITA and HELIOLITH blocks, including variants and LEVITA_ORE.
- Modification of REFINED_SURTRUM_BLOCK behavior.
.../items/ParadiseLostItems.java - Adjustments to item declarations and settings, including fireproofing and new items like LEVITA_GEM and LEVITA_WAND.
.../items/tools/base_tools/GravityWandItem.java - Introduction of a new item class to manipulate gravity.
.../world/dimension/ParadiseLostBiomes.java
.../world/feature/ParadiseLostFeatures.java
.../world/feature/configs/JaggedOreConfig.java
.../world/feature/configured_features/ParadiseLostMiscConfiguredFeatures.java
.../world/feature/features/JaggedOreFeature.java
.../world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java
- New features and configurations for ore generation, including HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA with jagged ore generation.
src/main/resources/asset_helper.py - A script to generate Minecraft asset files for the mod.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share

Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

CodeRabbit Discord Community

Join our Discord Community to get help, request features, and share feedback.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Review Status

Configuration used: CodeRabbit UI

Commits Files that changed from the base of the PR and between 817891a and 8e4470e.
Files ignored due to path filters (86)
  • src/main/resources/assets/paradise_lost/blockstates/heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/heliolith_wall.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/levita.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/levita_ore.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/smooth_heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/smooth_heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/blockstates/smooth_heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/lang/en_us.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_slab_top.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_stairs_inner.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_stairs_outer.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_wall_inventory.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_wall_post.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_wall_side.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/heliolith_wall_side_tall.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/levita.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/levita_ore.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith_slab_top.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith_stairs_inner.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/block/smooth_heliolith_stairs_outer.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/cloud_vial.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/heliolith_wall.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/levita.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/levita_gem.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/levita_ore.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/levita_wand.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/mystery_milk.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/smooth_heliolith.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/smooth_heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/models/item/smooth_heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/assets/paradise_lost/textures/block/heliolith.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/block/levita.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/block/levita_ore.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/block/levitator_side.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/block/smooth_heliolith.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/item/levita_gem.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/assets/paradise_lost/textures/item/levita_wand.png is excluded by !**/*.png, !**/*.png
  • src/main/resources/data/paradise_lost/advancements/consume_food.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/heliolith.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/heliolith_wall.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/levita.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/levita_ore.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/smooth_heliolith.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/smooth_heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/loot_tables/blocks/smooth_heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_slab_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_stairs_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_wall.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/heliolith_wall_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/levita_from_blasting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/levita_from_smelting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/levita_wand.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/levitator.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_slab.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_slab_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_slab_from_smooth_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_stairs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_stairs_from_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/recipes/smooth_heliolith_stairs_from_smooth_heliolith_stonecutting.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/mineable_by_shovel.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/natural_stone.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/ores.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/requires_iron_tool.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/stone_blocks.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/stone_slabs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/stone_stairs.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/blocks/stone_walls.json is excluded by !**/*.json
  • src/main/resources/data/paradise_lost/tags/items/tool/igniting_tools.json is excluded by !**/*.json
  • src/main/resources/paradise_lost.mixins.json is excluded by !**/*.json
Files selected for processing (14)
  • src/main/java/net/id/paradiselost/api/FloatingBlockHelper.java (3 hunks)
  • src/main/java/net/id/paradiselost/blocks/ParadiseLostBlocks.java (3 hunks)
  • src/main/java/net/id/paradiselost/items/ParadiseLostItems.java (7 hunks)
  • src/main/java/net/id/paradiselost/items/tools/base_tools/GravityWandItem.java (1 hunks)
  • src/main/java/net/id/paradiselost/mixin/enchantment/EnchantmentHelperMixin.java (1 hunks)
  • src/main/java/net/id/paradiselost/mixin/entity/LivingEntityMixin.java (1 hunks)
  • src/main/java/net/id/paradiselost/tag/ParadiseLostItemTags.java (1 hunks)
  • src/main/java/net/id/paradiselost/world/dimension/ParadiseLostBiomes.java (1 hunks)
  • src/main/java/net/id/paradiselost/world/feature/ParadiseLostFeatures.java (1 hunks)
  • src/main/java/net/id/paradiselost/world/feature/configs/JaggedOreConfig.java (1 hunks)
  • src/main/java/net/id/paradiselost/world/feature/configured_features/ParadiseLostMiscConfiguredFeatures.java (3 hunks)
  • src/main/java/net/id/paradiselost/world/feature/features/JaggedOreFeature.java (1 hunks)
  • src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java (1 hunks)
  • src/main/resources/asset_helper.py (1 hunks)
Additional Context Used
Additional comments not posted (20)
src/main/java/net/id/paradiselost/tag/ParadiseLostItemTags.java (1)

13-13: The addition of the IGNITING_TOOLS tag is consistent with the PR's objectives and follows the correct implementation pattern for adding new item tags.

src/main/java/net/id/paradiselost/items/tools/base_tools/GravityWandItem.java (1)

1-24: The implementation of GravityWandItem aligns with the PR's objectives and demonstrates good coding practices by encapsulating gravity manipulation logic within the GravityTool class.

src/main/java/net/id/paradiselost/mixin/enchantment/EnchantmentHelperMixin.java (1)

14-17: The modification to the getFireAspect method correctly implements the desired functionality for items tagged with IGNITING_TOOLS, aligning with the PR's objectives.

src/main/java/net/id/paradiselost/world/feature/configs/JaggedOreConfig.java (1)

1-17: The introduction of JaggedOreConfig with its associated CODEC is correctly implemented and follows best practices for defining feature configurations in Minecraft mods.

src/main/java/net/id/paradiselost/world/feature/features/JaggedOreFeature.java (1)

1-47: The implementation of JaggedOreFeature correctly uses the provided configuration to generate ore formations, demonstrating good coding practices for feature generation.

src/main/java/net/id/paradiselost/world/feature/ParadiseLostFeatures.java (1)

33-33: The addition of the JAGGED_ORE feature to ParadiseLostFeatures is consistent with the PR's objectives and follows the correct implementation pattern for adding new features.

src/main/java/net/id/paradiselost/mixin/entity/LivingEntityMixin.java (1)

81-86: > 📝 NOTE

This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [1-81]

The removal of gravitite handling logic aligns with the PR's objectives, and the remaining mixin logic is correctly implemented.

src/main/java/net/id/paradiselost/world/feature/placed_features/ParadiseLostMiscPlacedFeatures.java (1)

25-30: The addition of HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA placed features with their specific placement modifiers aligns with the PR's objectives and demonstrates good coding practices for defining placed features.

src/main/java/net/id/paradiselost/api/FloatingBlockHelper.java (1)

135-137: The method validForWand checks if a block state is not in the BlockTags.NEEDS_DIAMOND_TOOL tag to determine its validity for the GravityWandItem. This is a straightforward and effective way to filter out blocks that require a diamond tool level, aligning with the intended functionality of the GravityWandItem. However, consider adding a comment explaining the rationale behind this check for future maintainability.

src/main/java/net/id/paradiselost/world/feature/configured_features/ParadiseLostMiscConfiguredFeatures.java (1)

43-47: The addition of new configured features for heliolith_blob, levita_blob, and ore_levita expands the variety of world generation options in the game. The configurations for these features, such as size and frequency, are crucial for balancing gameplay. Ensure that these values have been tested in-game to achieve the desired rarity and distribution of these materials.

src/main/resources/asset_helper.py (1)

4-83: The utility script asset_helper.py introduces functions for generating asset files for standard blocks, items, handheld items, log blocks, stairs blocks, and slab blocks. This script is a valuable tool for streamlining the asset creation process. However, consider adding error handling for file operations to prevent the script from crashing if there are issues with file paths or permissions. Additionally, using context managers (with statement) for file operations can ensure that files are properly closed even if an error occurs.

src/main/java/net/id/paradiselost/world/dimension/ParadiseLostBiomes.java (1)

222-226: The addition of HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA to the UNDERGROUND_ORES list aligns with the PR objectives of introducing new materials and enhancing world generation. Ensure that the corresponding PlacedFeature instances for these new ores and blobs are correctly defined elsewhere in the codebase, including their generation patterns and conditions. This is crucial for maintaining the intended gameplay experience and balance.

Verification successful

Given the lack of output from the initial script, it's necessary to broaden our search approach to verify the existence and configuration of HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA. Let's search the entire codebase for references to these features to gather more context.


The broader search successfully located references to HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA in the codebase. Specifically, it found their definitions in ParadiseLostMiscPlacedFeatures.java and ParadiseLostMiscConfiguredFeatures.java, including the configuration details for each feature. This confirms that the additions to the UNDERGROUND_ORES list in ParadiseLostBiomes.java are supported by properly defined and configured PlacedFeature instances, as required for correct world generation.

Based on this information, the review comment is verified as the necessary definitions and configurations for HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA are present and correctly implemented in the codebase.

Scripts Executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Verify the definition and configuration of HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA PlacedFeatures
ast-grep --lang java --pattern $'PlacedFeature $$$($_, $_) { $$$ }' | grep -E 'HELIOLITH_BLOB|LEVITA_BLOB|ORE_LEVITA'

Length of output: 118



Script:

#!/bin/bash
# Broaden the search for HELIOLITH_BLOB, LEVITA_BLOB, and ORE_LEVITA references in the codebase
rg 'HELIOLITH_BLOB|LEVITA_BLOB|ORE_LEVITA'

Length of output: 2807

src/main/java/net/id/paradiselost/blocks/ParadiseLostBlocks.java (4)

70-70: The addition of the LEVITA block aligns with the PR objectives. Ensure its floating behavior functions as expected in various scenarios.


135-143: The addition of HELIOLITH and its variants enriches the game's building materials. Verify that their aesthetic and functional properties are consistent with similar stone-like blocks in the game.


373-373: The addition of LEVITA_ORE introduces a unique ore with gravity-defying properties. Ensure its behavior and integration with the world generation are correctly implemented.


376-376: The modification of REFINED_SURTRUM_BLOCK from a FloatingBlock to a regular Block aligns with the rework of Surtrum. Verify that this change integrates well with existing gameplay mechanics and player expectations.

src/main/java/net/id/paradiselost/items/ParadiseLostItems.java (4)

53-53: The item settings methods (nightmare, resource, tool, wearable, food, misc, building_block, decoration) are well-implemented, enhancing code readability and maintainability.


54-66: The item declarations, including the addition of new items like LEVITA_GEM, LEVITA_WAND, and the application of fireproof settings to REFINED_SURTRUM and RAW_SURTRUM, align well with the PR objectives. The direct use of resource() in the add calls for GOLDEN_AMBER and HELLENROSE_PETAL simplifies the code and enhances readability.


195-303: The block declarations, including the addition of new blocks like HELIOLITH, LEVITA, and LEVITA_ORE, as well as a comprehensive set of Heliolith-related blocks, significantly contribute to the game's aesthetic and building possibilities. The use of building_block() in the add calls ensures these blocks are correctly categorized, aligning well with the PR objectives.


51-69: > 📝 NOTE

This review was outside the diff hunks, and no overlapping diff hunk was found. Original lines [432-432]

The add method implementations for registering items and blocks are well-designed, providing a flexible and streamlined way to introduce new content into the game. The ability to pass additional actions for further customization is a valuable feature.

@MBatt1 MBatt1 merged commit 77234bf into 2.1.0/1.19.2/master Apr 5, 2024
4 checks passed
@MBatt1 MBatt1 deleted the 2.2.0/1.19.2/polish branch April 5, 2024 18:59
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.

1 participant