266 Commits

Author SHA1 Message Date
md_5
b95736b13f
Update to Minecraft 1.21.1 2024-08-09 07:00:00 +10:00
Doc
fccf5243ad
SPIGOT-7837: Support data pack banner patterns 2024-07-27 10:14:41 +10:00
DerFrZocker
aceddcd0bf
SPIGOT-7820: Enum changes - duplicate method name 2024-07-08 07:01:03 +10:00
DerFrZocker
082aa51c50
#1424: Trial changing a small number of inner enums to classes/interfaces to better support custom values
This PR is a subset of the enum PR #931 and is designed as a low impact
trial run of the design and backwards compatibility to inform
subsequent development.

Additional plugin compatibility features may be available by setting
`settings.compatibility.enum-compatibility-mode` to `true` in
`bukkit.yml`.
2024-07-06 17:14:22 +10:00
blablubbabc
62e3b73a49
SPIGOT-7804: Fix written book serialization
* Account for null/missing values when deserializing the 'resolved' and
  'generation' fields.
* Serialize the book pages as JSON strings.
* Avoid redundant conversion from strings to components to JSON and back to
  components during deserialization.
  Add CraftChatMessage.fromJSONOrString that accepts a maxLength argument
  and remove the no longer used fromJSONOrStringToJSON, fromStringToJSON,
  and fromJSONComponent helper methods.
2024-06-30 16:27:23 +10:00
Jannyboy11
d01c70e93e
#1425: Fix bytecode transformation taking care of class-to-interface compatibility. 2024-06-18 19:19:15 +10:00
2008Choco
3f8e4161fd
#1426: Deprecate more unused methods in UnsafeValues 2024-06-17 20:56:19 +10:00
md_5
2c9dd879e7
SPIGOT-7771: Material.getDefaultAttributes always returns an empty map 2024-06-17 19:44:14 +10:00
Miles Holder
eae9f760c9
#1414: Convert InventoryView to interface 2024-06-16 08:47:38 +10:00
md_5
a4c2ee70db
Update to Minecraft 1.21 2024-06-14 01:05:00 +10:00
DerFrZocker
9003845569
SPIGOT-7676: Enforce locale parameter in toLowerCase and toUpperCase method calls and always use root locale 2024-06-03 07:18:17 +10:00
DerFrZocker
9608279815
#1403, SPIGOT-4288, SPIGOT-6202: Add material rerouting in preparation for the switch to ItemType and BlockType
This also moves the conversion from and to legacy material to the method
calls of legacy plugins, and no longer allows them directly in the
server.

This has the side effect of fixing some legacy plugin issues, such as
SPIGOT-4288, SPIGOT-6161. Also fixes legacy items sometimes not stacking
in inventory when using addItem, a client disconnect when using legacy
items in recipes and probably some more.
2024-05-29 06:48:55 +10:00
DerFrZocker
94e44ec934
#1401: Add a config option to accept old keys in registry get calls 2024-05-29 06:45:14 +10:00
md_5
66f1f439aa
Restore null page behaviour of signed books even though not strictly allowed by API 2024-05-10 19:08:54 +10:00
DerFrZocker
2a6207fe15
#1393: Improve field rename handling and centralize conversion between bukkit and string more 2024-05-04 08:19:07 +10:00
md_5
66fd94322c
SPIGOT-7652: Remove remap for SPELL_MOB_AMBIENT which no longer exists 2024-05-02 21:26:08 +10:00
Doc
5d84f48a40
SPIGOT-7653: Update ApiVersion.CURRENT with latest version and include tests 2024-05-02 07:00:16 +10:00
md_5
df83bfa1ee
Update to Minecraft 1.20.6 2024-04-30 06:15:00 +10:00
DerFrZocker
0297f87bb0
SPIGOT-7355: More field renames and fixes
- Rename MapCursor Types to match their Minecraft names
- SPIGOT-7355: Rename ItemFlag#HIDE_POTION_EFFECTS to better reflect its function
- Fix Attribute rename (CraftBukkit only)
- Add rename routing validation (CraftBukkit only)
2024-04-25 07:49:44 +10:00
md_5
e77951fac9
Fix equality of deserialized display names 2024-04-25 07:26:05 +10:00
DerFrZocker
801767ed80
SPIGOT-5336: Field name parity with Minecraft keys 2024-04-24 01:15:00 +10:00
DerFrZocker
e05615dc78
#1357: Remove legacy Particle values 2024-04-24 01:15:00 +10:00
md_5
735b2d0d7f
Update to Minecraft 1.20.5 2024-04-24 01:15:00 +10:00
DerFrZocker
1a1bda9b9a
SPIGOT-6705: Re-print tab completion "Display all" message in console, when another message is being logged 2024-04-07 11:54:28 +10:00
Miles Holder
ca3bc37075
#1361: Add more translation keys 2024-03-17 10:26:55 +11:00
Doc
80f0ce4be6
SPIGOT-7300, #1180: Add new DamageSource API providing enhanced information about entity damage 2024-02-11 09:54:25 +11:00
DerFrZocker
161784713a
#1340: Centralize the conversion from and to Minecraft / Bukkit registry items even more and add a test case for them 2024-01-22 20:36:36 +11:00
Jishuna
771182f70c
#1327: Add methods to place structures with block/entity transformers 2024-01-10 18:44:31 +11:00
md_5
76931e8bd4
Add EntityMountEvent and EntityDismount Event
Adapted from Spigot commit ab1e1a2a5ae1e6cc42afe8bf48832721407365fd.
2024-01-07 08:59:55 +11:00
DerFrZocker
9b29b21c76
#1183: Better handle lambda expression and renaming of classes in Commodore 2024-01-06 16:15:23 +11:00
md_5
1462ebe85d
Reformat Commodore.java 2024-01-06 16:15:21 +11:00
DerFrZocker
bcf56171a6
#1321: Clean up some stuff which got missed during previous PRs
- Add missing CraftBukkit comment to CommandGive
- Remove no longer needed IRegistryCustom from CraftStructure conversion
- Use setBasePotionType instead of deprecated setBasePotionData
2023-12-26 07:44:21 +11:00
md_5
b3b43a6ad2
Add Checkstyle check for unused imports 2023-12-17 10:26:49 +11:00
md_5
07e5dd5d59
Update to Minecraft 1.20.3 2023-12-06 03:40:00 +11:00
DerFrZocker
71b0135cc7
SPIGOT-5753: Back PotionType by a minecraft registry 2023-10-09 20:22:53 +11:00
Jishuna
a6bcb84890
SPIGOT-7080: Add World#locateNearestBiome 2023-10-09 20:11:46 +11:00
Lauriichan
dab849f084
SPIGOT-7283, SPIGOT-7318: Add AsyncStructureGenerateEvent and BlockState cloning 2023-09-29 06:54:35 +10:00
Bjarne Koll
f0661c3514
#1230: Move unstructured PDC NBT serialisation to SNBT
The initial implementation of the CraftNBTTagConfigSerialiser attempted
to represent the entire NBT tree in yaml. While the tree structure
itself is nicely represented, the values and their respective types
become increasingly difficult to properly store in the context of
snakeyml/yml in general.

This is mainly due to the fact that nbt offers a lot of different types
compared to yaml, specifically the primitive arrays and different
floating point values are troublesome as they require parsing via mojang
parsers due to their custom format.

To build a future proof system for unstructured nbt in spigot yml,
this commit moves the entire serialisation fully into SNBT,
producing a single string as output rather than a full yml tree.
SNBT remains easily readable and editable for server owners, which was
one of the main criteria during the initial implementation of the
serialiser (preventing the use of bas64ed gzipped nbt bytes), while also
completely using mojangs parsing, eliminating any need for custom
parsing logic in spigot.

Additionally, a string allows for very straight forward handling of
legacy data by simply parsing strings as SNBT and maps/yml trees as
legacy content, depending on what type snakeyml produces after parsing
the yml content, removing the need for a versioning schema.
2023-09-24 10:12:19 +10:00
DerFrZocker
02d4907887
#1250: Standardize and centralize Bukkit / Minecraft registry conversion 2023-09-22 03:02:16 +10:00
DerFrZocker
9024a09b92
#1251: Use Java Consumer instead of Bukkit Consumer 2023-09-22 02:57:13 +10:00
md_5
28c1023286
Update to Minecraft 1.20.2 2023-09-22 02:40:00 +10:00
DerFrZocker
00f5a80fbe
#1252: Fix error when generating a tree in water 2023-09-02 12:55:26 +10:00
md_5
9c5d600d13
Update to Minecraft 1.20.1 2023-06-13 07:00:00 +10:00
Doc
40945171bf
#1182: Consolidate Preconditions use and minor cleanup 2023-06-12 19:41:02 +10:00
md_5
e1188ed3a2
Update to Minecraft 1.20 2023-06-08 01:30:00 +10:00
Doc
dbc70bed55
SPIGOT-7195, SPIGOT-7197: Add DataPack API 2023-05-30 19:05:48 +10:00
Doc
f92a41c396
#1181: Consolidate Location conversion code 2023-04-19 19:59:19 +10:00
md_5
15a3eac661
SPIGOT-7335: Fix typo in TextDisplay#TextAlignment enum name 2023-04-11 18:52:28 +10:00
md_5
1264a6fb57
Fix crash with composters 2023-03-15 18:08:47 +11:00
md_5
bcedf28a1b
Update to Minecraft 1.19.4 2023-03-15 03:30:00 +11:00