176 Commits

Author SHA1 Message Date
md_5
8b3b096d1a
SPIGOT-6242: Fix some file line endings 2020-11-18 08:13:04 +11:00
md_5
3af81c7179
Update to Minecraft 1.16.4 2020-11-03 07:00:00 +11:00
Martoph
890130b460
#746: Add Fluid types / tags 2020-09-14 19:41:46 +10:00
md_5
bf3d720714
Update to Minecraft 1.16.3 2020-09-11 07:00:00 +10:00
md_5
9f12e29b71
Fix crash with composters 2020-08-12 09:22:28 +10:00
md_5
9c9fb593f5
Update to Minecraft 1.16.2 2020-08-12 07:00:00 +10:00
md_5
52fd29c0dc
SPIGOT-6033: Bukkit.getUnsafe().getMaterial() won't match renamed block materials 2020-07-28 18:22:34 +10:00
md_5
6b95d595cf
SPIGOT-6001: Hex colors format differently to traditional colours 2020-07-19 08:44:42 +10:00
md_5
fdf6017fa9
Fix event for unlucky composts 2020-07-01 09:36:38 +10:00
md_5
b567cb433d
SPIGOT-5910: loadAdvancement does not work 2020-07-01 09:33:50 +10:00
Parker Hawke
d47c47ee59
SPIGOT-5889: Villager using composter should call EntityChangeBlockEvent 2020-06-30 12:18:39 +10:00
md_5
1601ec31e3
SPIGOT-5845: ChatColor.RESET does not work in ItemMeta to reset italics 2020-06-27 10:37:33 +10:00
md_5
709b003fee
Re-add default bukkit datapack 2020-06-26 12:24:35 +10:00
md_5
174a2ee539
SPIGOT-5829: RGB hex colours not supported in several places 2020-06-26 09:40:21 +10:00
md_5
68b98b3d24
Fix 1.16 binary mappings not applying to modern plugins 2020-06-25 20:03:30 +10:00
md_5
7ea3c040bc
Update to Minecraft 1.16.1 2020-06-25 10:00:00 +10:00
Aikar
1b2830a3b3 SPIGOT-4441: Fix serializing Components to and from Legacy
While cfeef75cd97 might of semi helped being able to save black text
lore, it actually took a fundamental problem with the legacy serialization
code and expanded it to break even more aspects of the server when dealing
with Component to Legacy conversion.

This is causing data loss in Spigot with cases such as setting an item name
to white gets stripped resulting in it being italic.

Additionally, things such as book pages have been returning black formatting
codes for the end of the line even when the user doesn't have colors in the book.

The root issue is that the "Default Color" system is fundamentally wrong.

Components do not and should not care about what element of the game they
are being used by, and that's what the default color system did.

It results in components that if obtained from 1 source such as a Book
where the default / rendered color is black, is then copied to another
source such as an Entity name, the black is carried forward and shown
in the Entity name, when in reality it should have been white.

This commit reverts cfeef75cd97 and fixes the underlying serialization
issues when it comes to Legacy to and From conversions.

There was quite a number of issues with this code overall, in how
it handles inserting color codes, new line parsing and such.

Books was using mojangs own "getLegacyString" which doesn't match behavior.
We also do not want to use Mojangs method as there is no guarantee they don't
remove that in future.
Plus, everything about books uses the CB implementation anyways, and it should
be consistent (this was mandatory to avoid serialization format changes on old vs new)

These changes as is results in Item Stacks already serialized will not
change contents when they go to component and back, so this won't impact
any existing data.

Newly created books though for example will change behavior in that they
will no longer insert black color codes in the serialized data and will
only represent intentional color changes by the creator of the book.
This will result in cleaner data on them, and books are the only thing
I'm aware of that has a behavioral shift due to the likelyhood of the
default color system kicking in on other parts of the string.

A unit test has been added to verify integrity of serialization to
ensure that any legacy string that is converted into Components will
always re-encode back in the same way when going back to Legacy.
2020-06-01 19:19:42 +10:00
md_5
ce66f6937b Misc checkstyle fixes 2020-04-14 12:34:43 +10:00
md_5
3f6d0de989 Make it clear in error messages that api-version above 1.13 is also supported 2020-02-23 09:42:33 +11:00
md_5
b1e96bd5ca SPIGOT-5551: BlockState.setData fails when used by legacy plugin 2020-01-29 09:22:43 +11:00
md_5
a0e88fb362 SPIGOT-5536: Material.values() causes legacy data init 2020-01-23 08:53:36 +11:00
md_5
a81f6ed397 SPIGOT-5532: Material.values() yields an exception 2020-01-22 13:23:55 +11:00
md_5
efd6cf55fc Only load legacy support data if something uses it 2020-01-22 11:15:58 +11:00
md_5
dad61762f8 Fix log messages being split across GUI and terminal 2020-01-22 09:11:37 +11:00
md_5
6881a10803 Update to Minecraft 1.15.2 2020-01-22 08:00:00 +11:00
md_5
384225c282 Add thread name to TerminalConsoleWriterThread 2019-12-21 12:01:52 +11:00
md_5
30a1b6911f Update to Minecraft 1.15.1 2019-12-18 08:00:00 +11:00
md_5
de42aa13f3 Update to Minecraft 1.15 2019-12-11 09:00:00 +11:00
md_5
8d4bc54183 SPIGOT-5293: Sponge behaviour differs from Vanilla 2019-08-28 20:10:04 +10:00
md_5
e73aabd666 Update to Minecraft 1.14.4 2019-07-20 09:00:00 +10:00
md_5
63cde5caa5 SPIGOT-5106: Config option to prevent plugins with incompatible API's from loading 2019-06-29 16:36:58 +10:00
md_5
f1f33559fa Update to Minecraft 1.14.3 2019-06-25 06:44:52 +10:00
md_5
fe3930ce00 Update to Minecraft 1.14.3-pre4 2019-06-21 20:00:00 +10:00
md_5
043d31deb0 SPIGOT-5015: Players in spectator mode prevent block placement and block projectiles 2019-06-02 19:54:24 +10:00
md_5
ba575a5a41 SPIGOT-4992: Various villager issues due to broken mapping 2019-05-28 20:43:33 +10:00
md_5
cb3d14c5a7 Update to Minecraft 1.14.2 2019-05-28 06:30:00 +10:00
md_5
89c52b7b0e Update to Minecraft 1.14.1 2019-05-14 10:00:00 +10:00
md_5
bbd66d2046 SPIGOT-4823: Crash picking up arrows 2019-05-01 06:48:56 +10:00
md_5
dadc539211 World#spawnArrow should return an AbstractArrow now 2019-04-30 21:32:03 +10:00
md_5
e3df3d5cda Add Override annotations where appropriate 2019-04-28 11:38:01 +10:00
md_5
28adbcff5b SPIGOT-4751: Update mappings version 2019-04-26 09:08:32 +10:00
md_5
005e1bbc13 SPIGOT-4726: Lore not being applied to new items 2019-04-24 09:54:58 +10:00
md_5
93ad381a68 SPIGOT-4727: Fix CraftEvil for legacy plugins 2019-04-24 09:40:42 +10:00
md_5
5fea790398 Apply import ordering rules to CraftBukkit classes 2019-04-23 14:56:58 +10:00
md_5
48c4c5ca81 Begin implementation of CheckStyle style checking 2019-04-23 14:00:30 +10:00
md_5
a2d787f6eb Update to Minecraft 1.14-pre5 2019-04-23 12:00:00 +10:00
md_5
9ead700959 SPIGOT-4677: Add minecraft.admin.command_feedback permission 2019-04-20 13:24:20 +10:00
md_5
a49270b28b Mappings Update 2019-03-17 11:48:53 +11:00
Yannick Lamprecht
39a287b7da Don't ignore newlines in PlayerListHeader/Footer 2019-03-10 11:04:15 +11:00
md_5
cb98c6eaef Fix line endings in CraftDefaultPermissions 2019-02-25 19:44:21 +11:00