This is KotStom's first release on GitHub to the Bladehunt maven repository.
Using in projects
repositories {
maven("https://mvn.bladehunt.net/releases")
}
dependencies {
implementation("net.bladehunt:kotstom:0.3.0")
implementation("net.bladehunt:kotstom-serialization:0.3.0")
implementation("net.bladehunt:kotstom-adventure-serialization:0.3.0")
}
Changes
- Breaking Changes
- ItemComponents no longer use invoke in the item builder dsl
- Removed
Schedulable.scheduler
becausescheduler()
exists
- Fixes
- Pos and Vec now return the appropriate classes when using operations
- Vec now rounds to BlockVec
- Get and set operators for inventories now use the super class AbstractInventory
- Features
adventure-serialization
- A kotlinx.serialization encoder/decoder for Adventure NBT compounds and lists
- Usage:
AdventureNbt.encodeToCompound
,AdventureNbt.decodeFromCompound
- AdventureNbt can also be instantiated to have custom properties
- discriminator (polymorphism)
- shouldEncodeDefaults
- serializersModule
serialization
- Minestom/Adventure kotlinx.serialization serializers
- Contains
MinestomModule
andMinestomConfigModule
for their respective serializersMinestomModule
serializes things in less human-readable formatsMinestomConfigModule
serializes things in slightly more human-readable formats, such as UUIDs as strings
- MiniMessageSerializer is not included by default as to not have a hard dependency on MiniMessage and can be used by including it as a contextual serializer
- Misc
- Item builder DSL now has a function that doesn't take a block
- ItemStack now has an inline
builder
DSL extension