paper plugin that introduces the "Soulbound" enchantment

1.21.10

kokirigla.de d52f89e5 c6a038e0

verified
Changed files
+3 -228
gradle
plugin
run
world
datapacks
checkerboard
src
main
java
de
kokirigla
+1 -1
gradle/libs.versions.toml
···
stylecheck = "0.2.1"
shadow = "8.3.0"
-
paper = "1.21.4-R0.1-SNAPSHOT"
+
paper = "1.21.10-R0.1-SNAPSHOT"
configurate = "4.2.0-SNAPSHOT"
[libraries]
+1 -1
license_header.txt
···
Soulbinding
-
Copyright (C) 2024 kokiriglade
+
Copyright (C) 2024-2025 kokiriglade
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-25
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/biome/dark.json
···
-
{
-
"carvers": [],
-
"downfall": 0,
-
"effects": {
-
"fog_color": 12638463,
-
"sky_color": 8103167,
-
"water_color": 4159204,
-
"water_fog_color": 329011
-
},
-
"features": [
-
[
-
"checkerboard:under_floor"
-
],
-
[
-
"checkerboard:dark_square"
-
],
-
[
-
"checkerboard:over_floor"
-
]
-
],
-
"has_precipitation": false,
-
"spawn_costs": {},
-
"spawners": {},
-
"temperature": 0
-
}
-25
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/biome/light.json
···
-
{
-
"carvers": [],
-
"downfall": 0,
-
"effects": {
-
"fog_color": 12638463,
-
"sky_color": 8103167,
-
"water_color": 4159204,
-
"water_fog_color": 329011
-
},
-
"features": [
-
[
-
"checkerboard:under_floor"
-
],
-
[
-
"checkerboard:light_square"
-
],
-
[
-
"checkerboard:over_floor"
-
]
-
],
-
"has_precipitation": false,
-
"spawn_costs": {},
-
"spawners": {},
-
"temperature": 0
-
}
-9
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/configured_feature/dark_square.json
···
-
{
-
"type": "minecraft:fill_layer",
-
"config": {
-
"state": {
-
"Name": "minecraft:lime_concrete"
-
},
-
"height": 62
-
}
-
}
-9
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/configured_feature/light_square.json
···
-
{
-
"type": "minecraft:fill_layer",
-
"config": {
-
"state": {
-
"Name": "minecraft:lime_concrete_powder"
-
},
-
"height": 62
-
}
-
}
-9
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/configured_feature/over_floor.json
···
-
{
-
"type": "minecraft:fill_layer",
-
"config": {
-
"state": {
-
"Name": "minecraft:lime_stained_glass"
-
},
-
"height": 63
-
}
-
}
-9
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/configured_feature/under_floor.json
···
-
{
-
"type": "minecraft:fill_layer",
-
"config": {
-
"state": {
-
"Name": "minecraft:black_concrete"
-
},
-
"height": 61
-
}
-
}
-41
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/noise_settings/superflat.json
···
-
{
-
"default_block": {
-
"Name": "minecraft:stone"
-
},
-
"default_fluid": {
-
"Name": "minecraft:water"
-
},
-
"sea_level": 0,
-
"disable_mob_generation": false,
-
"aquifers_enabled": false,
-
"ore_veins_enabled": false,
-
"legacy_random_source": false,
-
"noise": {
-
"min_y": 0,
-
"height": 256,
-
"size_horizontal": 1,
-
"size_vertical": 1
-
},
-
"noise_router": {
-
"barrier": 0,
-
"fluid_level_floodedness": 0,
-
"fluid_level_spread": 0,
-
"lava": 0,
-
"vein_toggle": 0,
-
"vein_ridged": 0,
-
"vein_gap": 0,
-
"temperature": 0,
-
"vegetation": 0,
-
"continents": 0,
-
"erosion": 0,
-
"depth": 0,
-
"ridges": 0,
-
"initial_density_without_jaggedness": 0,
-
"final_density": 0
-
},
-
"spawn_target": [],
-
"surface_rule": {
-
"type": "minecraft:sequence",
-
"sequence": []
-
}
-
}
-18
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/placed_feature/dark_square.json
···
-
{
-
"feature": "checkerboard:dark_square",
-
"placement": [
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": 8,
-
"y_spread": 0
-
},
-
{
-
"type": "minecraft:biome"
-
},
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": -8,
-
"y_spread": 0
-
}
-
]
-
}
-18
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/placed_feature/light_square.json
···
-
{
-
"feature": "checkerboard:light_square",
-
"placement": [
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": 8,
-
"y_spread": 0
-
},
-
{
-
"type": "minecraft:biome"
-
},
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": -8,
-
"y_spread": 0
-
}
-
]
-
}
-18
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/placed_feature/over_floor.json
···
-
{
-
"feature": "checkerboard:over_floor",
-
"placement": [
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": 8,
-
"y_spread": 0
-
},
-
{
-
"type": "minecraft:biome"
-
},
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": -8,
-
"y_spread": 0
-
}
-
]
-
}
-18
plugin/run/world/datapacks/checkerboard/data/checkerboard/worldgen/placed_feature/under_floor.json
···
-
{
-
"feature": "checkerboard:under_floor",
-
"placement": [
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": 8,
-
"y_spread": 0
-
},
-
{
-
"type": "minecraft:biome"
-
},
-
{
-
"type": "minecraft:random_offset",
-
"xz_spread": -8,
-
"y_spread": 0
-
}
-
]
-
}
-15
plugin/run/world/datapacks/checkerboard/data/minecraft/dimension/overworld.json
···
-
{
-
"type": "minecraft:overworld",
-
"generator": {
-
"type": "minecraft:noise",
-
"settings": "checkerboard:superflat",
-
"biome_source": {
-
"type": "minecraft:checkerboard",
-
"scale": 0,
-
"biomes": [
-
"checkerboard:light",
-
"checkerboard:dark"
-
]
-
}
-
}
-
}
-11
plugin/run/world/datapacks/checkerboard/pack.mcmeta
···
-
{
-
"pack": {
-
"description": [
-
{
-
"text": "checkerboard world gen",
-
"color": "gray"
-
}
-
],
-
"pack_format": 61
-
}
-
}
+1 -1
plugin/src/main/java/de/kokirigla/soulbinding/SoulbindingBootstrap.java
···
this.config = ConfigHelper.loadConfig(MainConfig.class, context.getDataDirectory().resolve("config.conf"));
ConfigHelper.saveConfig(context.getDataDirectory().resolve("config.conf"), this.config);
-
context.getLifecycleManager().registerEventHandler(RegistryEvents.ENCHANTMENT.freeze().newHandler(event -> {
+
context.getLifecycleManager().registerEventHandler(RegistryEvents.ENCHANTMENT.compose().newHandler(event -> {
event.registry().register(
EnchantmentKeys.create(SOULBOUND_ENCHANTMENT),
b -> b.description(config.soulboundDescription())