Releases: CryptoMorin/XSeries
v13.6.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.6.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.6.0")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
Added support for 1.21.11
XBlock
- Fixed errors with
getType()andisSimilar()(which depended ongetType()) on slab blocks pre-1.13 (Fixes #381)
XParticle
- Added the experimental
getDataType()method similar to Spigot's API.
ParticleDisplay
- Added
withRawData()for easier access.
XItemStack
- the
serialize(),deserialize()andedit()methods are now deprecated. You should use the inner classes instead
which provide a much cleaner API. - Fixed backwards compatibility of base potion effect serialization and deserialization. (Fixes #379)
- Fixed serialization issues with
item-modeloptions. - Added MiniMessage support (Closes #382)
v13.5.1
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.5.1</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.5.1")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
No changes were needed for 1.21.10 support.
XSkull
- Fixed an issue with older versions (~pre-1.21.7)
v13.5.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.5.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.5.0")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
Added 1.21.9 support.
XSkull
- After Mojang ass fucked us by changing the GameProfile object after many years, all APIs concerning a GameProfile object now deal with a custom MojangGameProfile object instead.
XEntity
- Added methods that support modifying the entity before spawning them.
XTag
- Fixed
BAMBOO,CARROTandPOTATObeing listed asINVENTORY_NOT_DISPLAYABLE.
v13.4.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.4.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.4.0")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
General
- Fixed JitPack repository issues.
MinecraftConnection
- Fix packet sending for 1.21.6 and 1.21.7 for Spigot
Titles
- Fixed when Titles are sent with null title or subtitle.
XMaterial
- Fixed some compatibility issues with egg materials pre-1.11
- Fixed unknown material
PUMPKINfor pre-1.12
ParticleDisplay
- Fixed a ConcurrentModificationException for the visibility list, making the class thread-safe.
Particles
- Fixed issues with
displayRenderedImage()rotation.
XItemStack
- Fixed a rare error in outdated server software caused by
XItemStack.stack(...)when giving it aMaterial.AIRitem. - Fixed some issues with custom model data deserialization and serialization.
XBlock
- Added experimental
getType()method for as a cross-version compatible method. - Fixed
setType()when the material is sugar cane (pre v1.13). - Most
is...()methods are deprecated now. UseisSimilar(Block, XMaterial)instead.
XTag
- Fixed shovel duplicated in
DIAMOND_TOOLSandNETHERITE_TOOLS. - Added
XTag#SWORDS,XTag#PICKAXES,XTag#AXES,XTag#SHOVELS, andXTag#HOES.
v13.3.3
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.3.3</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.3.3")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
- Added v1.21.7 support.
v13.3.2
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.3.2</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.3.2")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
- Added v1.21.6 support.
- Fixed some incorrect materials in
XTag.INVENTORY_NOT_DISPLAYABLE - Fixed some issues with XWorldBorder.
v13.3.1
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.3.1</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.3.1")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
XSkull
- Added
Profileable#prepare() - More documentation.
- Performance improvements.
Titles
- Fixed an error in newer versions.
XItemStack
- Fixed custom model data deserialization.
v13.3.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.3.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.3.0")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
Updated the links in the README page with a logo and added some info about each of the classes.
XRegistry
- Fixed an error caused by running the server in some outdated server versions (Around 1.13-1.15)
Titles & ActionBar
- Now support BaseComponent support (Mainly because of text shadow color for now)
NoteBlockMusic
- No longer uses CompletableFuture due to Paper blocking async sound plays.
XSkull
- Support for Bukkit's new PlayerProfile API.
- Added a way to directly use a GameProfile without updating its textures using
Profileable.of(GameProfile, false) - More documentation specifically for Geyser and NetEase.
- Added
Profileable#isReady()which is useful for knowing if a profile will send requests or not. - Performance improvements.
XItemFlag
- Added nullability and contract annotations.
- Fixed
Set<XItemFlag> getFlags(ItemMeta)not being static.
XItemStack
- Added support for new custom model data identifier types.
- Fixed
SpawnEggMetain older versions. - Improved version support for certain item components.
v13.2.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.2.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.2.0")
}Important
Don't forget to set api-version: 1.13 in your plugins.yml.
Don't forget to shade the library.
Added v1.21.5 support.
XRegistry
- Added a way to get registries of modules by their class.
XInventoryView & XArt
- Fixed errors on older versions when equals()/hashcode()/toString() are called.
XItemStack
- Revamped the serialization system to use a cleaner item meta chaining system instead of the current YanDev if-else chain.
- Fixed an issue with armor trims not being properly deserialized.
- Improved Unit Tests.
XWorldBorder
- Now uses the native Bukkit API when possible.
XItemFlag
- Renamed
hideEverything(ItemMeta)todecorationOnly(ItemMeta)due to the new v1.21.5 new flags.
v13.1.0
Maven
<dependency>
<groupId>com.github.cryptomorin</groupId>
<artifactId>XSeries</artifactId>
<version>13.1.0</version>
</dependency>Gradle
repositories {
mavenCentral()
}
dependencies {
implementation("com.github.cryptomorin:XSeries:13.1.0")
}Important
Don't forget to shade the library.
Maven Aggregate Project
This project has been converted into an aggregator Maven project with
submodules. This change was necessary to implement the new API classes
mentioned below.
XInventoryView & XArt
Introducing XInventoryView.of(InventoryView) & XArt.of(Art) which allows you to use Bukkit's InventoryView
and Art
classes respectively in a cross-version compatible way. Bukkit changed their API from abstract/enum classes to
interfaces for these classes. Although this might not appear to cause any issues at first, plugins compiled for
non-interface vs interface have a different underlying bytecode which can cause runtime errors depending on which
version the plugin was compiled against. These two classes add a minimal zero-overhead wrapper that handles this issue.
XItemStack
- Fixed ItemFlags for v1.20.6+
addItems()now uses item-specific stack size checking instead of inventory-based stack size by default.
XBlock
- Fixed
setColor()for 1.13+
XSkull
- Attempted a fix for hybrid server softwares like Arclight Forge.