Changes

Summary

  1. Implement modifier traits (details)
  2. Seems I forgot to check all the boxes on the autorenamer, that class used to be called state (details)
Commit 793e549026535170a8e8dfd14b3e54373c35de7b by KnightMiner
Implement modifier traits

This is a very powerful hook that allows a modifier to add additional modifiers to the tool. Example usecases:
* Add a modifier with special usages as an effect of a custom modifier, e.g. reinforced
* Add an internal modifier to run part of a modifier with a different priority
Create a modifier that dynamically adds other modifiers under some conditions
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/tools/context/ToolRebuildContext.java (diff)
The file was addedsrc/main/java/slimeknights/tconstruct/library/modifiers/modules/ModifierTraitModule.java
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/tools/nbt/ToolStack.java (diff)
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/modifiers/ModifierEntry.java (diff)
The file was addedsrc/main/java/slimeknights/tconstruct/library/modifiers/hook/build/ModifierTraitHook.java
The file was modifiedsrc/main/java/slimeknights/tconstruct/tools/TinkerModifiers.java (diff)
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/modifiers/TinkerHooks.java (diff)
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/tools/nbt/ModifierNBT.java (diff)
Commit d4cd73b4f12802d63ede48b33d3658c75803647f by KnightMiner
Seems I forgot to check all the boxes on the autorenamer, that class used to be called state
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/modifiers/TinkerHooks.java (diff)
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/modifiers/hook/build/ModifierTraitHook.java (diff)
The file was modifiedsrc/main/java/slimeknights/tconstruct/library/modifiers/modules/ModifierTraitModule.java (diff)