Skip to content
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

Deprecate/Remove Optional Profile (CompatibleProfile is more robust) #61

Open
crashdemons opened this issue Feb 2, 2021 · 2 comments
Open
Labels
enhancement New feature or request

Comments

@crashdemons
Copy link
Owner

also it would be less duplicate code / less points of failure

@crashdemons crashdemons added the enhancement New feature or request label Feb 2, 2021
@crashdemons
Copy link
Owner Author

we could also consider deprecating the setProfile(username,id,texture) methods

crashdemons added a commit that referenced this issue Feb 3, 2021
@crashdemons crashdemons added this to the 5.2.14 milestone Feb 3, 2021
crashdemons added a commit that referenced this issue Feb 3, 2021
* add block information and setblock method to Compatibility-API reqs

* implement Common parts of new skull block information (compat api)

* implement Legacy parts of new skull block information (compat api)

* implement Modern(1.13+) parts of new skull block information (compat api)

* WIP implementation of setblock command

* WIP implementation of setblock command

* WIP: finish setblock code (maybe)

* comment [CI-SKIP]

* fix test to work with skulldetails block changes

* leave open a protected method for implementation changes for setblock

* use compat-api method instead of doing it ourself

* note version added on SkullDetails:getBlockMaterial [CI-SKIP]

* switch to compatiibleprofile over optionalprofile

* get profile from meta not stack. oof

* rebuild
note: setblock currently sets the head but does not correctly set profile

* debug setblock process

* update blockstate after setting profile... duh :-/

* attempt to set legacy head block attachment/rotation data

* Directional instead of skull since Skull inherits from Directional?

* attempt to set head rotation for modern support

* bump dep bukkit to spigot-api for modern-support

* make method abstract

* add method for determining if rotations are valid

* just move method directly into the SkullBlockAttachment API, easier

* make api method public

* finalize /ph setblock working for 1.13+
still need messages and debugs cleaned up

* rebuild [CI-SKIP]

* remove "UP"

* explicitly include datavalues in the SkullType replacement enum

* legacy head rotation working in specific cases, still needs work

* add method for checking if profiles are valid or dummy

* add method for checking if profiles are valid or dummy

* don't try to set invalid profile (IAE/NPE)
fix ##57

* move user contribution to package to properly give credit where it's due

* correct rotation/attachment for legacy support (tested in 1.8)
#58
this literally took me 48 hours to figure out because of poor documentation, magic values, and inconsistent when mixing rotation and DV

* explicit API method to clear profile information

* deprecate optional profile methods
#61

* underlying code for clearing profiles

* implement clearing profile API

* rebuild + fix tests for API changes

* setblock: swap attachment and facing order

* setblock lang entries

* polish setblock command messages

* attempt fix to clear head for modern setblock calls
#64

* precondition compatibility (owner not null)
crashdemons added a commit that referenced this issue Feb 3, 2021
* bugfix: shade paperapi-support into compatibility-lib and plugin

* attempt fix of NPE when constructing profile from item
#52

* attempt 2 to fix of NPE when constructing profile from item
#52

* rebuild [CI-SKIP]

* add CompatibilityProvider API method: isCustomHead

* change null check to CompatibilityAPI method

* bump version correctly

* rebuild [CI-SKIP]

* comment [CI-SKIP]

* add username-id version of method

* add username-id version of method (impl)

* ignore custom heads by default when a handling is not defined

* fix typo

* set dep version correctly

* rebuild [CI-SKIP]

* revert 0b24dd6
causes PH to not detect its own custom heads

* remove deprecated methods from skullconverter

* isolate shared skullconverter code

* isCustomHead shouldn't throw exception for 'boring' heads
CompatibilityLib

* allow filtering head detection within skullconverter itself
also generalize blockdropresult failure condition

* fix tests for skull detection filtering changes

* comment redundant code for future removal [CI-SKIP]

* Setblock command and Compatibility API updates (#68)

* add block information and setblock method to Compatibility-API reqs

* implement Common parts of new skull block information (compat api)

* implement Legacy parts of new skull block information (compat api)

* implement Modern(1.13+) parts of new skull block information (compat api)

* WIP implementation of setblock command

* WIP implementation of setblock command

* WIP: finish setblock code (maybe)

* comment [CI-SKIP]

* fix test to work with skulldetails block changes

* leave open a protected method for implementation changes for setblock

* use compat-api method instead of doing it ourself

* note version added on SkullDetails:getBlockMaterial [CI-SKIP]

* switch to compatiibleprofile over optionalprofile

* get profile from meta not stack. oof

* rebuild
note: setblock currently sets the head but does not correctly set profile

* debug setblock process

* update blockstate after setting profile... duh :-/

* attempt to set legacy head block attachment/rotation data

* Directional instead of skull since Skull inherits from Directional?

* attempt to set head rotation for modern support

* bump dep bukkit to spigot-api for modern-support

* make method abstract

* add method for determining if rotations are valid

* just move method directly into the SkullBlockAttachment API, easier

* make api method public

* finalize /ph setblock working for 1.13+
still need messages and debugs cleaned up

* rebuild [CI-SKIP]

* remove "UP"

* explicitly include datavalues in the SkullType replacement enum

* legacy head rotation working in specific cases, still needs work

* add method for checking if profiles are valid or dummy

* add method for checking if profiles are valid or dummy

* don't try to set invalid profile (IAE/NPE)
fix ##57

* move user contribution to package to properly give credit where it's due

* correct rotation/attachment for legacy support (tested in 1.8)
#58
this literally took me 48 hours to figure out because of poor documentation, magic values, and inconsistent when mixing rotation and DV

* explicit API method to clear profile information

* deprecate optional profile methods
#61

* underlying code for clearing profiles

* implement clearing profile API

* rebuild + fix tests for API changes

* setblock: swap attachment and facing order

* setblock lang entries

* polish setblock command messages

* attempt fix to clear head for modern setblock calls
#64

* precondition compatibility (owner not null)

* add local script to gitignore [CI-SKIP]
@crashdemons
Copy link
Owner Author

derecated, set for future removal

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant