-
-
Notifications
You must be signed in to change notification settings - Fork 415
Mannequins #8270
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: dev/feature
Are you sure you want to change the base?
Mannequins #8270
Conversation
…to dev/feature
…to dev/feature
…to dev/feature
…to dev/feature
…to dev/feature
Efnilite
left a comment
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.
looks good
src/main/java/org/skriptlang/skript/bukkit/entity/mannequin/SkinPatchBuilder.java
Show resolved
Hide resolved
src/main/java/org/skriptlang/skript/bukkit/entity/mannequin/ResolvableProfileBuilder.java
Show resolved
Hide resolved
src/main/java/org/skriptlang/skript/bukkit/mannequin/elements/EffMannequinImmovable.java
Outdated
Show resolved
Hide resolved
sovdeeth
left a comment
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.
overall looks high quality
I think a lot of the syntaxes can be improved though, especially to help prevent the user from having to type mannequin a bazillion times.
src/main/java/org/skriptlang/skript/bukkit/entity/mannequin/elements/EffMannequinParts.java
Outdated
Show resolved
Hide resolved
src/main/java/org/skriptlang/skript/bukkit/entity/mannequin/elements/ExprMannequinBody.java
Show resolved
Hide resolved
| It can only contain one ':' to separate the namespace and the id. \ | ||
| Only alphanumeric characters, periods, underscores, and dashes can be used. | ||
| """) | ||
| @Example("set the mannequin body of {_mannequin} to \"custom:body\"") |
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.
are there any vanilla ones we can use for examples so users can see the example work on their server?
src/main/java/org/skriptlang/skript/bukkit/entity/mannequin/elements/ExprMannequinCape.java
Show resolved
Hide resolved
| if (mode == ChangeMode.SET) { | ||
| assert delta != null; | ||
| String string = (String) delta[0]; | ||
| component = Component.text(string); |
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.
shouldn't we be serializing this via normal skript methods to support skript color tags and formatting?
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.
I looked at MessageComponent and ChatMessage, idk if those are the right place to do that?
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.
I believe that's where it's handled, not certain though.
Problem
With the introduction of Mannequins into Minecraft, Skript does not yet have support for customizing a Mannequin.
Solution
Updates existing syntax to work with Mannequins
'CondIsLeftHanded' - to check if a mannequins main hand is left hand or right hand
'EffHandedness' - to set the main hand of a mannequin
Adds new syntax
'CondMannequinImmovable' - to check if a mannequin is immovable/movable
'CondMannequinParts' - to check which skin parts of a mannequin is enabled/disabled
'EffMannequinImmovable' - to make a mannequin immovable/movable
'EffMannequinParts' - to enable/disable skin parts of a mannequin
'ExprMannequinBody' - the body texture of a mannequin
'ExprMannequinCape' - the cape texture of a mannequin
'ExprMannequinDesc' - the description of a mannequin
'ExprMannequinElytra' - the elytra texture of a mannequin
'ExprMannequinModel' - the skin model of a mannequin
'ExprMannequinSkin' - the skin of a mannequin. outputs and intakes an offline player or a texture value.
Utils
'ResolvableProfileBuilder' - Helper class for converting a ResolvableProfile to a builder with all data retained
'SkinPatchBuilder' - Helper class for converting a SkinPatch to a builder with all data retained
Testing Completed
Supporting Information
N/A
Completes: none
Related: none