-
-
Notifications
You must be signed in to change notification settings - Fork 59
Reeling Rods - Module #1104
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
base: master
Are you sure you want to change the base?
Reeling Rods - Module #1104
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as outdated.
This comment was marked as outdated.
* Intial commit for id changes * Fix everything * overwrite old * actual overwrite old
Agreed.
|
- if 0%, playsound and fail - else, yoink - there are exceptions for stealing mainhand Also did some reorganization to make this easier to update in the future
…into fishing-rod-module
- extend leash knot search range to 12 blocks - add happy_ghast to leashable tag list - add happy_ghast harness reeling
Implemented the drop chance rework as discussed above.
Also updated the module to work with 1.21.6 |
…atapacks into fishing-rod-module
…into fishing-rod-module
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did a full (excluding Guidebook and the folder barbed/
) code review.
Nothing that's wrong, but found some nitpicks.
You should go over the header comments again and make sure they match the spec outlined in our docs (docs/
folder)
gm4_reeling_rods/data/gm4_reeling_rods/function/id/loop.mcfunction
Outdated
Show resolved
Hide resolved
gm4_reeling_rods/data/gm4_reeling_rods/function/tick.mcfunction
Outdated
Show resolved
Hide resolved
gm4_reeling_rods/data/gm4_reeling_rods/function/id/get_next.mcfunction
Outdated
Show resolved
Hide resolved
# with {bit, UUID} | ||
# run from player/bit_{bit}_{value} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whilst our header comment standard does not explicitly state how to handle macro information yet, we have been appending it to the parent function line, as a separate (optional) line seems a bit excessive. In the future we should manifest this in the standard.
You are right about only stating the keys, not the values, of the macro information. Make sure you state all keys supplied by the macro.
# with {bit, UUID} | |
# run from player/bit_{bit}_{value} | |
# run from player/bit_{bit}_{value} with {bit, UUID} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Talked in DMs, agreed to shelve the topic of macros in function headers for a future discussion.
Quick summary: There is no consistent standard for macro information in function headers currently. Most modules just don't include anything. A separate line in the style I've done here is what I've been doing since the Blossoming Pots code review. There are a few other styles used in the repo. We should revisit this in a future discussion on code standards where we can standardize everything properly. Ideally headers should remain machine parsable.
I will leave this conversation unresolved, so as to not hide it.
gm4_reeling_rods/data/gm4_reeling_rods/function/player/find_hooked_entity.mcfunction
Show resolved
Hide resolved
gm4_reeling_rods/data/gm4_reeling_rods/function/reeling/mooshroom/action.mcfunction
Outdated
Show resolved
Hide resolved
gm4_reeling_rods/data/gm4_reeling_rods/function/reeling/stealable/steal_equipment.mcfunction
Show resolved
Hide resolved
gm4_reeling_rods/data/gm4_reeling_rods/function/reeling/stealable/steal_hand.mcfunction
Outdated
Show resolved
Hide resolved
@@ -0,0 +1,110 @@ | |||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NOTE for future us: I did not check this file.
…tion Co-authored-by: Bloo <git@bloo.boo>
Co-authored-by: Bloo <git@bloo.boo>
A couple notes pulled from
|
…function, adjust a few commands
…player.mcfunction - Swear this is the last time. I got all nitpicky about the comments
As a last minute addition, I added a reeling interaction for enderman. You can steal the enderman's held block as a falling block entity that gets launched at you |
Reeling Rods
A module that expands the capabilities of all fishing rods, as well as adding 2 new fishing rod enchantments (Reeling and Barbed) which are mutually exclusive.
These are the first GM4 custom enchantments using the vanilla system; they are intentionally not metallurgy shamirs.
All Rods
Added the following capabilities to all fishing rods:
* These entities can be hooked with a fishing rod, but in vanilla the only thing that happens is durability gets used.
Reeling
Reeling is an enchantment that revolves around stealing or yoinking certain items from entities.
These interactions are locked behind an enchantment either for balance reasons, or gameplay reasons, allowing normal rods to maintain the interaction of simply pulling the entity.
Reeling has only 1 level and adds the following interactions on pulling in the entity type:
Barbed
Barbed is an enchantment that revolves around dealing damage, turning a fishing rod into a lethal weapon. It has 5 levels.
Barbed applies an initial scratching damage to the hooked mob on pulling and then bleeding damage over time.
The level scales both the scratching damage, and the frequency of bleeding damage.
Damage over time lasts 3 seconds, regardless of enchantment level.
Notes
steal_*
entity type tag and implement the stealing following the example of how villagers are set up.To-Do: