CodeEffect
Adds a new enchantment effect that runs a method registered by a mod for 24w18a's new data-driven enchantments. Similar to its run_function but with code
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
CodeEffect
For Users
This mod doesn't do anything on its own. This library allows mods to call code in data-driven enchantments.
For Devs
Registering your code: ```java CodeEffect.register(HOOK_ID, (world, level, context, user, pos) -> { // Code Here }); ``` or ```java CodeEffect.register(HOOK_ID, this::stuff); // ... public void stuff(ServerWorld world, int level, EnchantmentEffectContext context, Entity user, Vec3d pos) { // Code Here } ```
Using it: ```json "effect": { "type": "code_effect:run_code", "hook": "HOOK_ID" } ```
Full Enchantment example: *Sharpness but modified to run the code every tick* ```json { "anvil_cost": 1, "description": { "translate": "enchantment.minecraft.sharpness" }, "effects": { "minecraft:tick": [ { "effect": { "type": "code_effect:run_code", "hook": "HOOK_ID" } } ] }, "exclusive_set": "#minecraft:exclusive_set/damage", "max_cost": { "base": 21, "per_level_above_first": 11 }, "max_level": 5, "min_cost": { "base": 1, "per_level_above_first": 11 }, "primary_items": "#minecraft:enchantable/sword", "slots": [ "mainhand" ], "supported_items": "#minecraft:enchantable/weapon", "weight": 10 } ```