Initial work on making LivingEntities available for disguising#64
Draft
MATRIX-feather wants to merge 119 commits into
Draft
Initial work on making LivingEntities available for disguising#64MATRIX-feather wants to merge 119 commits into
MATRIX-feather wants to merge 119 commits into
Conversation
…缓存到全局依赖中,请通过 MirrorHub 获取与生物对应的 IOperationHandle; misc: 现在对玩家模型进行镜像还要求玩家本身具有交互镜像的权限
…mirror control distance
misc: 变形形态的 actionbar 显示现在在 DisguiseState 中处理
…eManager+OverlayingMessageStore; add: Add command for dumping builtin language files
…t players unlocking the corresponding disguise, see docs/Misc.md !
…ves; enhance: Rotations are now read as a double list
…re's too many elements in the collection
…n will now rename the existing file to a .old.xxx.json file - Where the "xxx" is a hex string of `System.currentTimeMillis()`
…erty to the DisguiseState
- Since we decided to allow plugins to add their own disguise property to the DisguiseState, we also need to allow them to validate the input, so this is here
…builder, removed AbstractProperties#createProperty. Also, SingleProperty is now a record
… DisguiseProperty
- Removed references to AbstractDisguiseProperties from PropertyHandler
- Removed references to AbstractDisguiseProperties from DisguiseState
- AbstractDisguiseProperties now determines whether a disguise's property setup can be copied from a given other disguise instance based on disguise ID and type
- AbstractDisguiseProperties has been renamed to PropertyCollection to better reflect its new role
- Other classes originally named xxxxProperties have also been renamed to xxxPropertyCollection
…orphSkill use DisguiseState#setEquipment and DisguiseState#setShowingDisguisedEquipment explicitly
…s disposed without updating once; Raise FeatherMorph API version
…lanned to spilt out from the main plugin
…e target entity matches the given DisguiseMeta's EntityType
…sound for player disguise
…PropertyHandler and Entity instance, move DisguiseMeta check to new function `validateEntity`
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Dependencies
Summary
This PR adds the ability for disguise backends to disguise LivingEntities rather than players.
This PR adds a new command
/clone-morphto allow people who are interested to try this feature.Use
/clone-morph apply <entities>to clone your current disguise to selected entities. Use/clone-morph clear <entities>to clear their disguise.I plan to implement an entity disguising gameplay mechanism in a separate plugin, not in FeatherMorph.
Please note that in this PR, entities disguised using the
/clone-morphcommand won't get tracked byMorphManager, as the command directly interacts with the backend... Which means that disguised entities' "session" will stay in the backend forever unless the server stops, or someone uses/clone-morph clearto clear the session for them.