Skip to content

Conversation

@Pingger
Copy link

@Pingger Pingger commented Jul 21, 2018

Updates several classes to work with the updated API of spigot and CB

Please review the changes made before merging, since some of them WILL break serialization and simple updating.

Fixes #142
Fixes #143
Fixes #148
Fixes #150
Fixes #153

Pingger added 6 commits July 21, 2018 11:12
BukkitCommon: Updated SIGN_POST to SIGN (2 times)
BukkitCommon: Removed a blank line in imports (formatter did this)
BukkitConnector: Sorted Imports
BukkitConnector: Updated SIGN_POST to SIGN (2 times)
BukkitConnector Updated LEAVES to each LEAF type
SerializableFireworkEffectMeta: Changed FIREWORK_CHARGE to FIREWORK_STAR
SerializableFireworkMeta: Changed FIREWORK to FIREWORK_ROCKET
!! SerializableSkullMeta: Changed SKULL_ITEM to PLAYER_HEAD (Please review)
BukkitListener updated PlayerPickupEvent to EntityPickupEvent
NBTTools: updated newInstance from deperecated Call
NBTTools: Changed type of nbtTagCompound from Class to Class<?>, this prevents warnings and does effectively the same as before
HyperWebAPI: updated deprecated newInstance Access to new Access
HyperWebAPI: updated construction of Character to use valueOf as proposed by Deprecation
For this, the getOwner() method was split into getOwnerName() and getOwnerUUID()
The UUID is serialized, while the Name is retrieved from Bukkit
Enchantments have been updated to use NamespacedKeys. Currently this only works for vanilla enchantments, other enchantments break!
The getEnchantmentName() method has been refactored to return NamespacedKey and is now called getEnchantmentKey()
The method getEnchantmentKeyString() method has been added, which returns the Key String of the NamespacedKey

referencing Classes have been updated accordingly
@Pingger
Copy link
Author

Pingger commented Jul 21, 2018

Known Issues:
Enchantments need to be updated in the CSV
new Items not yet added (neither Mats, Points, nor Enchantments) (What to do with Cursed enchantments?)
https://pastebin.com/qvBPYjsv <- Something is wrong with the NBTTags. The method has been fundamentally changed
https://pastebin.com/GqK9xB2P <- Hacky ClassLoader code, that no longer works (works until Java 8, not working with Java 9)
Resulting in unusable commands

Pingger added 4 commits July 22, 2018 12:50
Sockets are now managed by 'try-with' which automatically closes them when no longer needed/used
@Pingger
Copy link
Author

Pingger commented Jul 22, 2018

@RegalOwl I'm done for now.
I don't know what the CMethod in NBTTools should do and therefore can't fix that. Found the method by comparing the mc server source codes
And I don't really understand what that ClassLoader Code in the LibraryManager tries to accomplish (Java 9 issue) Fixed by using the intended java way of loading libraries

Cmethod is now called 'getKeys' in minecraft which is a more apropriate name
@Pingger
Copy link
Author

Pingger commented Jul 22, 2018

Ready to merge

Pingger added 5 commits July 22, 2018 20:18
Create a debug.mode file or folder in the HyperConomy-Config folder. 
Start the Server
A materials.list file is written
And a LogEntry tells you that it has been written
Pingger added 2 commits July 22, 2018 23:41
now includes Potion effects and null checks
Pingger and others added 8 commits August 29, 2018 19:05
Changed no longer available maven repository to a new one, that should work for now
+HyperAccount Documentation
+HyperAccount updateBalance(...) function
~HyperAccount hasBalance(...) changed to 'default' from 'public'
~HyperAccount Sorted Class-Members
Fixed #3
Removed unnecessary blank line
Fixed #3
Removed unnecessary blank line
@PurpleStormCloud
Copy link

Well this is certainly interesting xD welp I might have done work for nothing now. Well if you can call it that.... Is there at least anything useful we can take from this? What I did there works without issues afaik (I didn't used Maven so I didn't update any refs) have been running it in production for a while without issues #156

@PurpleStormCloud
Copy link

One thing we could do is that we could use Material.values() for the items instead the csv, and for enchanting and stuff, that might be a good idea for the future? I get that its for the price but there should be possibly a better solution to that ....

@Pingger Pingger closed this Jul 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants