Skript icon indicating copy to clipboard operation
Skript copied to clipboard

Copper Golem + Copper Block Support

Open Absolutionism opened this issue 3 months ago • 1 comments

Problem

No proper support for setting and getting attributes of copper golems and copper blocks.

Solution

Removes 'copper golem' from SimpleEntityData and adds CopperGolemData allowing users to specify the copper state of the copper golem and whether they're waxed. Adds a condition to check if a copper golem or a copper block is waxed. Adds an effect to wax or unwax a copper golem or a copper block. Adds an expression to get/set the time until the next oxidation for a copper golem. Adds an expression to get/set the pose of a copper golem statue. Adds an expression to get/set the copper state of a copper golem or a copper block.

Adds 'CopperState' that mimics 'WeatheringCopperState' for the versions that don't have it. Allowing easy use for getting and setting the copper states.

Registers ClassInfo for copper golem statue poses Registers ClassInfo for 'CopperState' or 'WeatheringCopperState' if it exists.

Adds 'ReflectUtils' that is a utility class for common reflection and caches where possible. Reflection was needed for 'CopperState', 'ExprCopperState', and 'ExprCopperGolemOxidationTime' which led to the creation of ReflectUtils.

Testing Completed

EntityData.sk EffWax.sk ExprCopperGolemOxidationTime.sk ExprCopperGolemPose.sk ExprCopperState.sk EffSecSpawn.sk

Supporting Information

N/A


Completes: none Related: none

Absolutionism avatar Oct 18 '25 00:10 Absolutionism

Forgot to write this in the last review, but this should all be in the skriptlang package.

sovdeeth avatar Oct 18 '25 02:10 sovdeeth