lots of stuff

This commit is contained in:
craisinlord committed 2026-08-12 09:27:27 -05:00
1 parent ee9ac93b5e
commit ea24b19068
5242 files changed
+336231 -112

No files matched your search

+13
View File
@@ -40,6 +40,7 @@ dependencies {
modImplementation "software.bernie.geckolib:geckolib-fabric-1.21.1:${geckolib_version}"
modCompileOnly("curse.maven:intapi-${intapi_curseforge_id}:${intapi_curseforge_file_id_fabric}")
modLocalRuntime("curse.maven:intapi-${intapi_curseforge_id}:${intapi_curseforge_file_id_fabric}")
modLocalRuntime("dev.architectury:architectury-fabric:${architectury_api_version}")
compileOnly "mezz.jei:jei-1.21.1-common-api:${jei_version}"
compileOnly "mezz.jei:jei-1.21.1-fabric-api:${jei_version}"
modLocalRuntime "mezz.jei:jei-1.21.1-fabric:${jei_version}"
@@ -100,6 +101,18 @@ tasks.named('processResources', ProcessResources).configure {
}
}
tasks.matching { it.name in ["runClient", "runServer", "runDatagen"] }.configureEach {
doFirst {
def infinityConfigPrefix = "config/common/"
zipTree(rootProject.file("infinite_dimensions_jars/infinity-2.7.2+1.21.1-fabric.jar")).visit { details ->
if (!details.directory && details.relativePath.pathString.startsWith(infinityConfigPrefix)) {
def targetPath = details.relativePath.pathString.substring(infinityConfigPrefix.length())
file("run/config/infinity/${targetPath}").parentFile.mkdirs()
}
}
}
}
publishing {
publications {
mavenJava(MavenPublication) {
@@ -21,6 +21,7 @@ import com.craisinlord.antarchy.content.command.CavarynCommand;
import com.craisinlord.antarchy.content.command.CaterpillarCommand;
import com.craisinlord.antarchy.content.command.GravityCommand;
import com.craisinlord.antarchy.content.item.MinersDreamExcavationManager;
import com.craisinlord.antarchy.content.worldgen.thoraxis.ThoraxisUndersideManager;
import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback;
import net.fabricmc.fabric.api.entity.event.v1.ServerLivingEntityEvents;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents;
@@ -148,6 +149,7 @@ public final class AntarchyFabricEvents {
for (ServerLevel level : server.getAllLevels()) {
CavarynHordeManager.tick(level);
com.craisinlord.antarchy.content.horde.CavarynCreatureSpawner.tick(level);
ThoraxisUndersideManager.tick(level);
tickInvertedPlayers(level, activeThisTick);
tickDuctTapePlayers(level);
tickIchorPlayers(level);
@@ -0,0 +1,25 @@
package com.craisinlord.antarchy.fabric.mixin;
import com.craisinlord.antarchy.content.recipe.CustomBrewingRecipes;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.entity.BrewingStandBlockEntity;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(BrewingStandBlockEntity.class)
public abstract class BrewingStandCustomIngredientMixin {
@Inject(method = "canPlaceItem", at = @At("HEAD"), cancellable = true)
private void antarchy$canPlaceCustomBrewingItem(int slot, ItemStack stack, CallbackInfoReturnable<Boolean> cir) {
if (slot == 3) {
if (CustomBrewingRecipes.isCustomIngredient(stack)) {
cir.setReturnValue(true);
}
} else if (slot >= 0 && slot <= 2) {
if (CustomBrewingRecipes.isCustomContainer(stack)) {
cir.setReturnValue(true);
}
}
}
}
@@ -0,0 +1,33 @@
package com.craisinlord.antarchy.fabric.mixin.infinity;
import net.lerariemann.infinity.util.config.Amendment;
import net.lerariemann.infinity.util.core.ConfigType;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Mixin(value = Amendment.class, remap = false)
/*
* Makes Antarchy's uranium/titanium ores and blocks much rarer in Infinite Dimensions'
* procedural dimensions. This is done natively via Infinity's own amendment system rather
* than relying on players editing infinity's config, keyed off the antarchy:infinity_dimension_rare_ores
* block tag so the list stays data-driven and native to Antarchy.
*/
public class AmendmentRareOresMixin {
@Inject(method = "getAmendmentList", at = @At("RETURN"), remap = false)
private static void antarchy$addRareOreAmendment(CallbackInfoReturnable<Map<ConfigType, List<Amendment>>> cir) {
Map<ConfigType, List<Amendment>> data = cir.getReturnValue();
List<Amendment> list = data.computeIfAbsent(ConfigType.BLOCKS, k -> new ArrayList<>());
list.add(new Amendment(
ConfigType.BLOCKS,
new Amendment.UniversalModSelector(),
new Amendment.MatchingBlockTagSelector("antarchy:infinity_dimension_rare_ores"),
new Amendment.SetValue(0.02)
));
}
}