Merge branch 'master' into dev/7.0-2

This commit is contained in:
Zoë Gidiere 2025-07-09 16:48:22 -06:00
commit d33b75b77b
34 changed files with 62 additions and 57 deletions

View File

@ -29,8 +29,8 @@ object Versions {
} }
object Fabric { object Fabric {
const val fabricAPI = "0.127.0+${Mod.minecraft}" const val fabricAPI = "0.128.1+${Mod.minecraft}"
const val cloud = "2.0.0-beta.10" const val cloud = "2.0.0-beta.11"
} }
// //
// object Quilt { // object Quilt {
@ -42,7 +42,7 @@ object Versions {
const val mixin = "0.15.5+mixin.0.8.7" const val mixin = "0.15.5+mixin.0.8.7"
const val mixinExtras = "0.4.1" const val mixinExtras = "0.4.1"
const val minecraft = "1.21.6" const val minecraft = "1.21.7"
const val yarn = "$minecraft+build.1" const val yarn = "$minecraft+build.1"
const val fabricLoader = "0.16.14" const val fabricLoader = "0.16.14"
@ -57,8 +57,8 @@ object Versions {
// } // }
object Bukkit { object Bukkit {
const val minecraft = "1.21.6-R0.1" const val minecraft = "1.21.7-R0.1"
const val paperBuild = "$minecraft-20250617.170821-8" const val paperBuild = "$minecraft-20250630.144242-1"
const val paper = paperBuild const val paper = paperBuild
const val paperLib = "1.0.8" const val paperLib = "1.0.8"
const val reflectionRemapper = "0.1.2" const val reflectionRemapper = "0.1.2"

View File

@ -8,7 +8,7 @@ dependencies {
paperweight.paperDevBundle(Versions.Bukkit.paperDevBundle) paperweight.paperDevBundle(Versions.Bukkit.paperDevBundle)
shaded(project(":platforms:bukkit:common")) shaded(project(":platforms:bukkit:common"))
shaded(project(":platforms:bukkit:nms:v1_21_6")) shaded(project(":platforms:bukkit:nms:v1_21_7"))
shaded("xyz.jpenilla", "reflection-remapper", Versions.Bukkit.reflectionRemapper) shaded("xyz.jpenilla", "reflection-remapper", Versions.Bukkit.reflectionRemapper)
} }

View File

@ -53,8 +53,8 @@ public interface Initializer {
private static Initializer constructInitializer() { private static Initializer constructInitializer() {
try { try {
String packageVersion = NMS; String packageVersion = NMS;
if(NMS.equals("v1_21_5")) { if (NMS.equals("v1_21_5") || NMS.equals("v1_21_6")) {
packageVersion = "v1_21_6"; packageVersion = "v1_21_7";
} }
Class<?> initializerClass = Class.forName(TERRA_PACKAGE + "." + packageVersion + ".NMSInitializer"); Class<?> initializerClass = Class.forName(TERRA_PACKAGE + "." + packageVersion + ".NMSInitializer");

View File

@ -1,4 +1,8 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import com.dfsek.terra.bukkit.nms.v1_21_7.config.VanillaBiomeProperties;
import com.dfsek.terra.bukkit.world.BukkitBiomeInfo;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Holder.Reference; import net.minecraft.core.Holder.Reference;

View File

@ -1,11 +1,11 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import com.dfsek.terra.api.event.events.config.ConfigurationLoadEvent; import com.dfsek.terra.api.event.events.config.ConfigurationLoadEvent;
import com.dfsek.terra.api.event.functional.FunctionalEventHandler; import com.dfsek.terra.api.event.functional.FunctionalEventHandler;
import com.dfsek.terra.api.world.biome.Biome; import com.dfsek.terra.api.world.biome.Biome;
import com.dfsek.terra.bukkit.BukkitAddon; import com.dfsek.terra.bukkit.BukkitAddon;
import com.dfsek.terra.bukkit.PlatformImpl; import com.dfsek.terra.bukkit.PlatformImpl;
import com.dfsek.terra.bukkit.nms.v1_21_6.config.VanillaBiomeProperties; import com.dfsek.terra.bukkit.nms.v1_21_7.config.VanillaBiomeProperties;
public class NMSAddon extends BukkitAddon { public class NMSAddon extends BukkitAddon {

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.biome.Biome;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
@ -12,7 +12,7 @@ import java.util.Objects;
import java.util.Optional; import java.util.Optional;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.bukkit.nms.v1_21_6.config.VanillaBiomeProperties; import com.dfsek.terra.bukkit.nms.v1_21_7.config.VanillaBiomeProperties;
public class NMSBiomeInjector { public class NMSBiomeInjector {

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import com.mojang.serialization.MapCodec; import com.mojang.serialization.MapCodec;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import com.mojang.serialization.MapCodec; import com.mojang.serialization.MapCodec;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.server.level.ChunkMap; import net.minecraft.server.level.ChunkMap;
import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerLevel;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.world.level.LevelHeightAccessor; import net.minecraft.world.level.LevelHeightAccessor;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Holder.Reference; import net.minecraft.core.Holder.Reference;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6; package com.dfsek.terra.bukkit.nms.v1_21_7;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries; import net.minecraft.core.registries.Registries;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;
@ -28,7 +28,7 @@ public class SpawnEntryConfig implements ObjectTemplate<SpawnEntryConfig> {
return weight; return weight;
} }
public SpawnerData getSpawnerData() { public SpawnerData getSpawnEntry() {
return new SpawnerData(type, minGroupSize, maxGroupSize); return new SpawnerData(type, minGroupSize, maxGroupSize);
} }

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;
@ -34,7 +34,7 @@ public class SpawnSettingsTemplate implements ObjectTemplate<MobSpawnSettings> {
for(SpawnTypeConfig spawn : spawns) { for(SpawnTypeConfig spawn : spawns) {
MobCategory group = spawn.getGroup(); MobCategory group = spawn.getGroup();
for(SpawnEntryConfig entry : spawn.getEntries()) { for(SpawnEntryConfig entry : spawn.getEntries()) {
builder.addSpawn(group, entry.getWeight(), entry.getSpawnerData()); builder.addSpawn(group, entry.getWeight(), entry.getSpawnEntry());
} }
} }
for(SpawnCostConfig cost : costs) { for(SpawnCostConfig cost : costs) {

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.ConfigTemplate; import com.dfsek.tectonic.api.config.template.ConfigTemplate;
import com.dfsek.tectonic.api.config.template.annotations.Default; import com.dfsek.tectonic.api.config.template.annotations.Default;

View File

@ -1,4 +1,4 @@
package com.dfsek.terra.bukkit.nms.v1_21_6.config; package com.dfsek.terra.bukkit.nms.v1_21_7.config;
import com.dfsek.tectonic.api.config.template.annotations.Default; 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.annotations.Value;

View File

@ -35,7 +35,7 @@
"depends": { "depends": {
"fabricloader": ">=0.16.10", "fabricloader": ">=0.16.10",
"java": ">=21", "java": ">=21",
"minecraft": ">=1.21.6", "minecraft": "1.21.7",
"fabric": "*" "fabric": "*"
} }
} }

View File

@ -94,7 +94,7 @@ public abstract class ModPlatform extends AbstractPlatform {
.registerLoader(MusicSound.class, MusicSoundTemplate::new) .registerLoader(MusicSound.class, MusicSoundTemplate::new)
.registerLoader(EntityType.class, EntityTypeTemplate::new) .registerLoader(EntityType.class, EntityTypeTemplate::new)
.registerLoader(SpawnCostConfig.class, SpawnCostConfig::new) .registerLoader(SpawnCostConfig.class, SpawnCostConfig::new)
.registerLoader(SpawnEntry.class, SpawnEntryConfig::new) .registerLoader(SpawnEntryConfig.class, SpawnEntryConfig::new)
.registerLoader(SpawnTypeConfig.class, SpawnTypeConfig::new) .registerLoader(SpawnTypeConfig.class, SpawnTypeConfig::new)
.registerLoader(SpawnSettings.class, SpawnSettingsTemplate::new) .registerLoader(SpawnSettings.class, SpawnSettingsTemplate::new)
.registerLoader(VillagerType.class, VillagerTypeTemplate::new); .registerLoader(VillagerType.class, VillagerTypeTemplate::new);

View File

@ -5,16 +5,20 @@ import com.dfsek.tectonic.api.config.template.annotations.Value;
import com.dfsek.tectonic.api.config.template.object.ObjectTemplate; import com.dfsek.tectonic.api.config.template.object.ObjectTemplate;
import com.mojang.brigadier.StringReader; import com.mojang.brigadier.StringReader;
import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.brigadier.exceptions.CommandSyntaxException;
import net.minecraft.client.particle.Particle;
import net.minecraft.command.argument.ParticleEffectArgumentType; import net.minecraft.command.argument.ParticleEffectArgumentType;
import net.minecraft.particle.ParticleEffect;
import net.minecraft.registry.Registries; import net.minecraft.registry.Registries;
import net.minecraft.registry.RegistryWrapper; import net.minecraft.registry.RegistryWrapper;
import net.minecraft.util.Identifier;
import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.BiomeParticleConfig; import net.minecraft.world.biome.BiomeParticleConfig;
public class BiomeParticleConfigTemplate implements ObjectTemplate<BiomeParticleConfig> { public class BiomeParticleConfigTemplate implements ObjectTemplate<BiomeParticleConfig> {
@Value("particle") @Value("particle")
@Default @Default
private String particle = null; private Identifier particle = null;
@Value("probability") @Value("probability")
@Default @Default
@ -26,13 +30,7 @@ public class BiomeParticleConfigTemplate implements ObjectTemplate<BiomeParticle
return null; return null;
} }
try { return new BiomeParticleConfig((ParticleEffect) Registries.PARTICLE_TYPE.get(particle),
return new BiomeParticleConfig( probability);
ParticleEffectArgumentType.readParameters(new StringReader(particle),
(RegistryWrapper.WrapperLookup) Registries.PARTICLE_TYPE),
probability);
} catch(CommandSyntaxException e) {
throw new RuntimeException(e);
}
} }
} }

View File

@ -8,8 +8,7 @@ import net.minecraft.world.biome.SpawnSettings.SpawnEntry;
import com.dfsek.terra.api.util.range.Range; import com.dfsek.terra.api.util.range.Range;
public class SpawnEntryConfig implements ObjectTemplate<SpawnEntryConfig> {
public class SpawnEntryConfig implements ObjectTemplate<SpawnEntry> {
@Value("type") @Value("type")
@Default @Default
private EntityType<?> type = null; private EntityType<?> type = null;
@ -26,8 +25,12 @@ public class SpawnEntryConfig implements ObjectTemplate<SpawnEntry> {
return weight; return weight;
} }
@Override public SpawnEntry getSpawnEntry() {
public SpawnEntry get() {
return new SpawnEntry(type, groupSize.getMin(), groupSize.getMax()); return new SpawnEntry(type, groupSize.getMin(), groupSize.getMax());
} }
@Override
public SpawnEntryConfig get() {
return this;
}
} }

View File

@ -27,8 +27,8 @@ public class SpawnSettingsTemplate implements ObjectTemplate<SpawnSettings> {
SpawnSettings.Builder builder = new SpawnSettings.Builder(); SpawnSettings.Builder builder = new SpawnSettings.Builder();
for(SpawnTypeConfig spawn : spawns) { for(SpawnTypeConfig spawn : spawns) {
SpawnGroup group = spawn.getGroup(); SpawnGroup group = spawn.getGroup();
for(SpawnEntryConfig entry : spawn.getEntry()) { for(SpawnEntryConfig entry : spawn.getEntries()) {
builder.spawn(group, entry.getWeight(), entry.get()); builder.spawn(group, entry.getWeight(), entry.getSpawnEntry());
} }
} }
for(SpawnCostConfig cost : costs) { for(SpawnCostConfig cost : costs) {

View File

@ -15,14 +15,14 @@ public class SpawnTypeConfig implements ObjectTemplate<SpawnTypeConfig> {
@Value("entries") @Value("entries")
@Default @Default
private List<SpawnEntryConfig> entry = null; private List<SpawnEntryConfig> entries = null;
public SpawnGroup getGroup() { public SpawnGroup getGroup() {
return group; return group;
} }
public List<SpawnEntryConfig> getEntry() { public List<SpawnEntryConfig> getEntries() {
return entry; return entries;
} }
@Override @Override

View File

@ -12,10 +12,10 @@ import net.minecraft.village.VillagerType;
public class VillagerTypeTemplate implements ObjectTemplate<RegistryKey<VillagerType>> { public class VillagerTypeTemplate implements ObjectTemplate<RegistryKey<VillagerType>> {
@Value("id") @Value("id")
@Default @Default
private String id = null; private Identifier id = null;
@Override @Override
public RegistryKey<VillagerType> get() { public RegistryKey<VillagerType> get() {
return RegistryKey.of(RegistryKeys.VILLAGER_TYPE, Identifier.ofVanilla(id)); return RegistryKey.of(RegistryKeys.VILLAGER_TYPE, id);
} }
} }