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
Bloo-dev
left a comment
There was a problem hiding this comment.
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)
| # with {bit, UUID} | ||
| # run from player/bit_{bit}_{value} |
There was a problem hiding this comment.
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.
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.
| @@ -0,0 +1,110 @@ | |||
| { | |||
There was a problem hiding this comment.
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 |
…into fishing-rod-module
- because I forgot them
…hanted book with them on it
* Initial Commit * Fix Version Compat * Add player gamemode check * Fix Allay HandItems[0] being removed instead of set empty * Add shulker pulling * Fix minecart fishing bobber vertical displacement off by 0.00001 * Fix Allay item summon wrong location * Add witch potion stealing * Slight python change * Add villager theft * Python changes to allow baby mobs to be processed * Add fox theft * Add witch theft limit * Add pig desaddling * Add strider desaddling * Add snow golem beheading * Add entity TODO list * Add wolf armor stealing * Add horse type mob item yoinking * Fix Donkey and Mule code a bit * Add Llama yoinking * Python refactor & the start of Dismounting work * Remove witch limit * Fix file new line issue * Switch to id based system for entity selection * Intial commit for id changes * Fix everything * overwrite old * actual overwrite old * minor text fixes * more fixes from the id change * Fix wrong command syntax :( * Re-Add smithed.entity ignore * Change id tags to be removed when unneeded * Vehicle separation passenger transfer * Add live catch to recommended * Misc comments because I need these file changes on my laptop to work on this while not at home * misc beet changes * py comment restructure * Refactor in prep for generic item yoinking * Refactor & Add Generic Hand/Armor Yoinking * Update to 1.21.5 * Some comment changes * Missed changes for 1.21.5 * Fix shulker teleporting * Fix chest boat yoinking * Rename function for clarity * Add Sheep shearing yoinking * Fix sheep wool yoinking I was rushing before * Fixes (hopefully) * Add Binding blocking for equipment theft * Add Entities - Wandering Trader: Steal Hands - Armor Stand: Steal Equipment - Camel: Steal Saddle - Mooshroom: Shear and steal shrooms - Bee: Steal honey comb and suffer the consequences * Optimize bobber id setting * single comment change because nobody can stop me * Fix my id changes & add sounds :D * Change some player selectors to `@p` * Change a few more player selectors to @p * Shorten bee anger time * Add Barbed Enchantment (#2) * Add Barbed Enchantment * Fix formatting * Update apply_barbed_damage header * Add missing comma * Remove extra line * Update non_treasure.json to include barbed Needed for it to show up in enchanting table * Fix barbed damage not running * Increase Barbed Damage * Adjust Enchantment Cost --------- Co-authored-by: runcows <124551271+runcows@users.noreply.github.com> * Fix overassigning ID causing breakage * Adjust enchantment cost & rarity * Remove excess entity_data storage * Add Barbed Delayed Damage * Fix Bleeding Damage not Starting * Adjust Damage & Particles * Add Custom Death Messages * Adjust Enchantment Weights * Fix Death Messages & Properly Reset Players on Respawn * Fix Bleeding Damage not Triggering for non-Player Entities * ID rewrite to use scores & optimization * Swap enchantment name for translation string * Big Reorganization * Add Bloo to credits * Missed renaming for reorganization * minor changes * Fix item data not being reset all the time * Change barbed to explode tnt minecarts * Rework hooked_entity/select_type to use bolt in file instead of generating file * Add drop chance usage to reeling * Drop Chance Rework - 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 * Formatting Changes * Update to 1.21.6 - extend leash knot search range to 12 blocks - add happy_ghast to leashable tag list - add happy_ghast harness reeling * Fix item frame yoinking not respecting fixed tag * Set module to not run if hooked entity is Invulnerable * Upload Icon * Uncomment Icon Design in beet.yaml * Initial Guidebook and Readme * Automated Guidebook Building Stuff * Update gm4_reeling_rods/data/gm4_reeling_rods/function/id/loop.mcfunction Co-authored-by: Bloo <git@bloo.boo> * Update gm4_reeling_rods/data/gm4_reeling_rods/function/tick.mcfunction Co-authored-by: Bloo <git@bloo.boo> * A couple of header comments * Update gm4_reeling_rods/generate_files.py * Fail minecart & mooshroom if passengers * Optimize reeling/stealable/steal_hand * Clean `generate_files.py` and move a tag command * Add enderman falling block yoinking, fix a logical error with motion function, adjust a few commands * Update get_motion_to_player header comment * Update gm4_reeling_rods/data/gm4_reeling_rods/function/get_motion_to_player.mcfunction - Swear this is the last time. I got all nitpicky about the comments * Translations file * Forgot key in translations * Add Panda to steal hand - because I forgot them * Update header in get_execution_pos * Guidebook pages for reeling and barbed now unlock when getting an enchanted book with them on it * Reword Guidebook Pages * Add unreleased modrinth page id --------- Co-authored-by: Bloo <git@bloo.boo>
* New module: Reeling Rods (Gamemode4Dev#1104) * Shrink Blossoming Pots pack.png * Shrink Reeling Rods pack.png (Gamemode4Dev#1153) * Update raw wood set file. Add cherry models and textures for bench, stool and chair. Remove version from spruce model files. * Add Reeling Rods Smithed ID (Gamemode4Dev#1156)
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: