Merge branch 'master' into dev/7.0-2

This commit is contained in:
Zoë Gidiere
2025-06-03 22:38:32 -06:00
50 changed files with 151 additions and 116 deletions
+6 -1
View File
@@ -4,7 +4,7 @@ plugins {
dependencies {
shaded(project(":platforms:bukkit:common"))
shaded(project(":platforms:bukkit:nms:v1_21_3", configuration = "reobf"))
shaded(project(":platforms:bukkit:nms:v1_21_5", configuration = "reobf"))
shaded("xyz.jpenilla", "reflection-remapper", Versions.Bukkit.reflectionRemapper)
}
@@ -26,6 +26,11 @@ tasks {
minecraftVersion(Versions.Bukkit.minecraft)
dependsOn(shadowJar)
pluginJars(shadowJar.get().archiveFile)
downloadPlugins {
modrinth("viaversion", "5.3.2")
modrinth("viabackwards", "5.3.2")
}
}
}
@@ -54,10 +54,6 @@ public interface Initializer {
private static Initializer constructInitializer() {
try {
String packageVersion = NMS;
if (NMS.equals("v1_21_4")) {
packageVersion = "v1_21_3";
}
Class<?> initializerClass = Class.forName(TERRA_PACKAGE + "." + packageVersion + ".NMSInitializer");
try {
return (Initializer) initializerClass.getConstructor().newInstance();
@@ -2,7 +2,7 @@ name: "Terra"
main: "com.dfsek.terra.bukkit.TerraBukkitPlugin"
version: "@VERSION@"
load: "STARTUP"
authors: [ "dfsek", "duplexsystem", "Astrash", "solonovamax", "Sancires", "Aureus", "RogueShade" ]
authors: [ "dfsek", "duplexsystem", "Astrash", "solonovamax", "Sancires", "Aureus", "RogueShade", "OakLoaf" ]
website: "@WIKI@"
api-version: "1.21.1"
description: "@DESCRIPTION@"
@@ -1,6 +1,6 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import com.dfsek.terra.bukkit.nms.v1_21_3.config.VanillaBiomeProperties;
import com.dfsek.terra.bukkit.nms.v1_21_5.config.VanillaBiomeProperties;
import net.minecraft.core.Holder;
import net.minecraft.core.Holder.Reference;
@@ -1,11 +1,11 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import com.dfsek.terra.api.event.events.config.ConfigurationLoadEvent;
import com.dfsek.terra.api.event.functional.FunctionalEventHandler;
import com.dfsek.terra.api.world.biome.Biome;
import com.dfsek.terra.bukkit.BukkitAddon;
import com.dfsek.terra.bukkit.PlatformImpl;
import com.dfsek.terra.bukkit.nms.v1_21_3.config.VanillaBiomeProperties;
import com.dfsek.terra.bukkit.nms.v1_21_5.config.VanillaBiomeProperties;
public class NMSAddon extends BukkitAddon {
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.level.biome.Biome;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.core.Holder;
import net.minecraft.core.Registry;
@@ -12,7 +12,7 @@ import java.util.Objects;
import java.util.Optional;
import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.bukkit.nms.v1_21_3.config.VanillaBiomeProperties;
import com.dfsek.terra.bukkit.nms.v1_21_5.config.VanillaBiomeProperties;
public class NMSBiomeInjector {
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import com.mojang.serialization.MapCodec;
import net.minecraft.core.Holder;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import com.mojang.serialization.MapCodec;
import net.minecraft.core.BlockPos;
@@ -116,10 +116,10 @@ public class NMSChunkGeneratorDelegate extends ChunkGenerator {
if(noise > threshold) {
chunk.setBlockState(new BlockPos(x, y, z), ((CraftBlockData) ((BukkitBlockState) delegate
.getPalette(x + xi, y, z + zi, world, biomeProvider)
.get(depth, x + xi, y, z + zi, world.getSeed())).getHandle()).getState(), false);
.get(depth, x + xi, y, z + zi, world.getSeed())).getHandle()).getState(), 0);
depth++;
} else if(noise < airThreshold) {
chunk.setBlockState(new BlockPos(x, y, z), Blocks.AIR.defaultBlockState(), false);
chunk.setBlockState(new BlockPos(x, y, z), Blocks.AIR.defaultBlockState(), 0);
} else {
depth = 0;
}
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import com.dfsek.terra.bukkit.BukkitAddon;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.server.level.ChunkMap;
import net.minecraft.server.level.ServerLevel;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.world.level.LevelHeightAccessor;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.core.Holder;
import net.minecraft.core.Holder.Reference;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3;
package com.dfsek.terra.bukkit.nms.v1_21_5;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -7,7 +7,7 @@ import net.minecraft.world.entity.EntityType;
import net.minecraft.world.level.biome.MobSpawnSettings.SpawnerData;
public class SpawnEntryTemplate implements ObjectTemplate<SpawnerData> {
public class SpawnEntryConfig implements ObjectTemplate<SpawnEntryConfig> {
@Value("type")
@Default
private EntityType<?> type = null;
@@ -23,9 +23,17 @@ public class SpawnEntryTemplate implements ObjectTemplate<SpawnerData> {
@Value("max-group-size")
@Default
private Integer maxGroupSize = null;
public Integer getWeight() {
return weight;
}
public SpawnerData getSpawnerData() {
return new SpawnerData(type, minGroupSize, maxGroupSize);
}
@Override
public SpawnerData get() {
return new SpawnerData(type, weight, minGroupSize, maxGroupSize);
public SpawnEntryConfig get() {
return this;
}
}
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
@@ -6,7 +6,6 @@ import com.dfsek.tectonic.api.config.template.object.ObjectTemplate;
import java.util.List;
import net.minecraft.world.entity.MobCategory;
import net.minecraft.world.level.biome.MobSpawnSettings;
import net.minecraft.world.level.biome.MobSpawnSettings.SpawnerData;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -33,8 +32,8 @@ public class SpawnSettingsTemplate implements ObjectTemplate<MobSpawnSettings> {
MobSpawnSettings.Builder builder = new MobSpawnSettings.Builder();
for(SpawnTypeConfig spawn : spawns) {
MobCategory group = spawn.getGroup();
for(SpawnerData entry : spawn.getEntries()) {
builder.addSpawn(group, entry);
for(SpawnEntryConfig entry : spawn.getEntries()) {
builder.addSpawn(group, entry.getWeight(), entry.getSpawnerData());
}
}
for(SpawnCostConfig cost : costs) {
@@ -1,11 +1,10 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;
import com.dfsek.tectonic.api.config.template.object.ObjectTemplate;
import java.util.List;
import net.minecraft.world.entity.MobCategory;
import net.minecraft.world.level.biome.MobSpawnSettings.SpawnerData;
public class SpawnTypeConfig implements ObjectTemplate<SpawnTypeConfig> {
@@ -15,13 +14,13 @@ public class SpawnTypeConfig implements ObjectTemplate<SpawnTypeConfig> {
@Value("entries")
@Default
private List<SpawnerData> entries = null;
private List<SpawnEntryConfig> entries = null;
public MobCategory getGroup() {
return group;
}
public List<SpawnerData> getEntries() {
public List<SpawnEntryConfig> getEntries() {
return entries;
}
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.ConfigTemplate;
import com.dfsek.tectonic.api.config.template.annotations.Default;
@@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_3.config;
package com.dfsek.terra.bukkit.nms.v1_21_5.config;
import com.dfsek.tectonic.api.config.template.annotations.Default;
import com.dfsek.tectonic.api.config.template.annotations.Value;