mirror of
https://github.com/GTMEGA/EndlessIDs.git
synced 2026-11-14 01:24:01 +00:00
chore: Update mixins to V2 api
This commit is contained in:
8 files changed
+716
-528
No files matched your search
+1
-2
@@ -13,7 +13,6 @@ minecraft_fp {
|
||||
|
||||
mixin {
|
||||
pkg = "mixin.mixins"
|
||||
pluginClass = "mixin.plugin.MixinPlugin"
|
||||
}
|
||||
|
||||
core {
|
||||
@@ -64,7 +63,7 @@ repositories {
|
||||
|
||||
dependencies {
|
||||
// region Our deps
|
||||
implementationSplit("com.falsepattern:falsepatternlib-mc1.7.10:1.8.1")
|
||||
implementationSplit("com.falsepattern:falsepatternlib-mc1.7.10:1.9.0")
|
||||
compileOnly("it.unimi.dsi:fastutil:8.5.16")
|
||||
implementationSplit("com.falsepattern:chunkapi-mc1.7.10:0.6.4")
|
||||
// endregion
|
||||
|
||||
@@ -24,7 +24,9 @@ package com.falsepattern.endlessids.asm;
|
||||
|
||||
import com.falsepattern.endlessids.Tags;
|
||||
import com.falsepattern.endlessids.config.GeneralConfig;
|
||||
import com.falsepattern.endlessids.util.ConfigFixUtil;
|
||||
import com.falsepattern.endlessids.mixin.plugin.Mixin;
|
||||
import com.gtnewhorizon.gtnhmixins.IEarlyMixinLoader;
|
||||
import com.gtnewhorizon.gtnhmixins.builders.IMixins;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.val;
|
||||
|
||||
@@ -33,7 +35,7 @@ import net.minecraft.launchwrapper.LaunchClassLoader;
|
||||
import cpw.mods.fml.relauncher.FMLInjectionData;
|
||||
import cpw.mods.fml.relauncher.IFMLLoadingPlugin;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -46,7 +48,7 @@ import static cpw.mods.fml.relauncher.IFMLLoadingPlugin.TransformerExclusions;
|
||||
@Name(Tags.MODID + "_core")
|
||||
@TransformerExclusions({"com.falsepattern.endlessids.asm", "com.falsepattern.endlessids.config.GeneralConfig"})
|
||||
@DependsOn("falsepatternlib")
|
||||
public class EndlessIDsCore implements IFMLLoadingPlugin {
|
||||
public class EndlessIDsCore implements IFMLLoadingPlugin, IEarlyMixinLoader {
|
||||
public static boolean deobfuscated;
|
||||
static {
|
||||
if (GeneralConfig.extendBlockItem) {
|
||||
@@ -125,4 +127,14 @@ public class EndlessIDsCore implements IFMLLoadingPlugin {
|
||||
public String getAccessTransformerClass() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMixinConfig() {
|
||||
return "mixins.endlessids.early.json";
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getMixins(Set<String> loadedCoreMods) {
|
||||
return IMixins.getEarlyMixins(Mixin.class, loadedCoreMods);
|
||||
}
|
||||
}
|
||||
+14
-21
@@ -4,7 +4,7 @@
|
||||
* Copyright (C) 2022-2025 FalsePattern, The MEGA Team
|
||||
* All Rights Reserved
|
||||
*
|
||||
* The above copyright notice, this permission notice and the words "MEGA"
|
||||
* The above copyright notice, this permission notice and the word "MEGA"
|
||||
* shall be included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
@@ -22,31 +22,24 @@
|
||||
|
||||
package com.falsepattern.endlessids.mixin.plugin;
|
||||
|
||||
import com.falsepattern.endlessids.Tags;
|
||||
import com.falsepattern.lib.mixin.IMixin;
|
||||
import com.falsepattern.lib.mixin.IMixinPlugin;
|
||||
import com.falsepattern.lib.mixin.ITargetedMod;
|
||||
import lombok.Getter;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import com.gtnewhorizon.gtnhmixins.ILateMixinLoader;
|
||||
import com.gtnewhorizon.gtnhmixins.LateMixin;
|
||||
import com.gtnewhorizon.gtnhmixins.builders.IMixins;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class MixinPlugin implements IMixinPlugin {
|
||||
public static final Logger LOG = IMixinPlugin.createLogger(Tags.MODNAME);
|
||||
|
||||
@Getter
|
||||
private final Logger logger = LOG;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
@LateMixin
|
||||
public class LateMixins implements ILateMixinLoader {
|
||||
@Override
|
||||
public IMixin[] getMixinEnumValues() {
|
||||
return Mixin.values();
|
||||
public String getMixinConfig() {
|
||||
return "mixins.endlessids.late.json";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ITargetedMod[] getTargetedModEnumValues() {
|
||||
return TargetedMod.values();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean useNewFindJar() {
|
||||
return true;
|
||||
public @NotNull List<String> getMixins(Set<String> loadedMods) {
|
||||
return IMixins.getLateMixins(Mixin.class, loadedMods);
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@
|
||||
* Copyright (C) 2022-2025 FalsePattern, The MEGA Team
|
||||
* All Rights Reserved
|
||||
*
|
||||
* The above copyright notice, this permission notice and the words "MEGA"
|
||||
* The above copyright notice, this permission notice and the word "MEGA"
|
||||
* shall be included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
@@ -22,417 +22,584 @@
|
||||
|
||||
package com.falsepattern.endlessids.mixin.plugin;
|
||||
|
||||
import com.falsepattern.endlessids.Tags;
|
||||
import com.falsepattern.endlessids.config.GeneralConfig;
|
||||
import com.falsepattern.lib.mixin.IMixin;
|
||||
import com.falsepattern.lib.mixin.ITargetedMod;
|
||||
import com.falsepattern.lib.mixin.v2.MixinHelper;
|
||||
import com.falsepattern.lib.mixin.v2.SidedMixins;
|
||||
import com.falsepattern.lib.mixin.v2.TaggedMod;
|
||||
import com.gtnewhorizon.gtnhmixins.builders.IMixins;
|
||||
import com.gtnewhorizon.gtnhmixins.builders.MixinBuilder;
|
||||
import lombok.Getter;
|
||||
import lombok.val;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.intellij.lang.annotations.Language;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.function.BooleanSupplier;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ABYSSALCRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.AM2;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ANTIIDCONFLICT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ANTIQUEATLAS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ATG;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.BIOMETWEAKER;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.BIOMEWAND;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.BLOCKPHYSICS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.BOP;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.BUILDCRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.CLIMATECONTROL;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.COFHLIB;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.COMPACTMACHINES;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.DARKWORLD;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.DIMDOORS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.DRAGONAPI;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.EB;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ENDERLICIOUS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.EREBUS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.EXTENDEDPLANETS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.EXTRAPLANETS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.EXTRAUTILITIES;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.FACTORIZATION;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.FASTCRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.FUTUREPACK;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.GADOMANCY;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.GALACTICRAFTCORE;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.GALAXYSPACE;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.HBM_NTM;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.HIGHLANDS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.ICG;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.IR3;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.JAS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.LOTR;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.MATTERMEGADRIVE;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.MATTEROVERDRIVE;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.MFQM;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.MYSTCRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.NATURESCOMPASS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.NETHERLICIOUS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.NOMADICTENTS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.OWG;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.RANDOMTHINGS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.RESTRUCTURED;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.RTG;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.RUINS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.RWG;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.TARDIS;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.THAUMCRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.THUTCORE;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.TMOR;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.TROPICRAFT;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.TWILIGHTFOREST;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.UBC;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.WITCHERY;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetedMod.WORLDEDIT;
|
||||
import static com.falsepattern.lib.mixin.IMixin.PredicateHelpers.avoid;
|
||||
import static com.falsepattern.lib.mixin.IMixin.PredicateHelpers.condition;
|
||||
import static com.falsepattern.lib.mixin.IMixin.PredicateHelpers.require;
|
||||
|
||||
public class Mixin {
|
||||
private Mixin() {
|
||||
}
|
||||
|
||||
public enum Common implements IMixin {
|
||||
//region antiidconflict
|
||||
antiidconflict_AntiIdConflictBaseMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_BiomeGenBasePlaceholderMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_BiomesManagerMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_DimensionsManagerMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_EnchantementsManagerMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_EntitiesManagerMixin(require(ANTIIDCONFLICT)),
|
||||
antiidconflict_PotionsManagerMixin(require(ANTIIDCONFLICT)),
|
||||
//endregion
|
||||
|
||||
//region biome
|
||||
biome_vanilla_BiomeDictionaryMixin(EXT_BIOME),
|
||||
biome_vanilla_BiomeGenBaseMixin(EXT_BIOME),
|
||||
biome_vanilla_BiomeGenBasePlaceholderMixin(
|
||||
all(EXT_BIOME, () -> GeneralConfig.biomeConflictAvoidancePlaceholders)),
|
||||
biome_vanilla_ChunkMixin(EXT_BIOME),
|
||||
biome_vanilla_GenLayerRiverMixMixin(EXT_BIOME, avoid(DRAGONAPI)),
|
||||
biome_vanilla_GenLayerVoronoiZoomMixin(EXT_BIOME),
|
||||
|
||||
biome_abyssalcraft_AbyssalCraftMixin(EXT_BIOME, require(ABYSSALCRAFT)),
|
||||
|
||||
biome_antiqueatlas_BiomeDetectorBaseMixin(EXT_BIOME, require(ANTIQUEATLAS)),
|
||||
biome_antiqueatlas_BiomeDetectorNetherMixin(EXT_BIOME, require(ANTIQUEATLAS)),
|
||||
|
||||
biome_atg_ATGBiomeConfigMixin(EXT_BIOME, require(ATG)),
|
||||
biome_atg_ATGBiomeManagerMixin(EXT_BIOME, require(ATG)),
|
||||
biome_atg_ATGWorldGenRocksMixin(EXT_BIOME, require(ATG)),
|
||||
|
||||
biome_biometweaker_BiomeEventHandlerMixin(EXT_BIOME, require(BIOMETWEAKER)),
|
||||
|
||||
biome_biomewand_BiomeWandItemMixin(EXT_BIOME, require(BIOMEWAND)),
|
||||
|
||||
biome_bop_BOPBiomeManagerMixin(EXT_BIOME, require(BOP)),
|
||||
biome_bop_BOPBiomesMixin(EXT_BIOME, require(BOP)),
|
||||
|
||||
biome_buildcraft_BuildcraftEnergyMixin(EXT_BIOME, require(BUILDCRAFT)),
|
||||
|
||||
biome_climatecontrol_api_BiomeSettingsMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_api_ClimateControlRulesMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_ConfirmBiomeMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerBiomeByClimateMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerBiomeByTaggedClimateMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerDefineClimateMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerLowlandRiverMixMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerSmoothCoastMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_customGenLayer_GenLayerSubBiomeMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_generator_AbstractWorldGeneratorMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_generator_BiomeSwapperMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_generator_SubBiomeChooserMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_genLayerPack_GenLayerHillsMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_genLayerPack_GenLayerPackMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_genLayerPack_GenLayerSmoothMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_genLayerPack_GenLayerVoronoiZoomMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
biome_climatecontrol_genLayerPack_GenLayerZoomMixin(EXT_BIOME, require(CLIMATECONTROL)),
|
||||
|
||||
biome_compactmachines_CubeToolsMixin(EXT_BIOME, require(COMPACTMACHINES)),
|
||||
|
||||
biome_darkworld_ModBiomesMixin(EXT_BIOME, require(DARKWORLD)),
|
||||
|
||||
biome_dimdoors_DDBiomeGenBaseMixin(EXT_BIOME, require(DIMDOORS)),
|
||||
|
||||
biome_dragonapi_vanilla_GenLayerRiverMixMixin(EXT_BIOME, require(DRAGONAPI)),
|
||||
biome_dragonapi_GenLayerRiverEventMixin(EXT_BIOME, require(DRAGONAPI)),
|
||||
biome_dragonapi_IDTypeMixin(EXT_BIOME, require(DRAGONAPI)),
|
||||
biome_dragonapi_ReikaChunkHelperMixin(EXT_BIOME, require(DRAGONAPI)),
|
||||
biome_dragonapi_ReikaWorldHelperMixin(EXT_BIOME, require(DRAGONAPI)),
|
||||
|
||||
biome_eb_BiomeIDsMixin(EXT_BIOME, require(EB)),
|
||||
biome_eb_GenLayerArchipelagoEdgeMixin(EXT_BIOME, require(EB)),
|
||||
biome_eb_GenLayerEBHillsMixin(EXT_BIOME, require(EB)),
|
||||
biome_eb_GenLayerEBRiverMixMixin(EXT_BIOME, require(EB)),
|
||||
biome_eb_GenLayerEBVoronoiZoomMixin(EXT_BIOME, require(EB)),
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.AbyssalCraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.AdvancedRocketry;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.AlternateTerrainGeneration;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.AntiIDConflict;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.AntiqueAtlas;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ArsMagica2;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.BiomeTweaker;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.BiomeWand;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.BiomesOPlenty;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.BlockPhysics;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.BuildCraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ClimateControl;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.CoFHLib;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.CompactMachines;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.DarkWorld;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.DimDoors;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.DragonAPI;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Enderlicious;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.EnhancedBiomes;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Erebus;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ExtendedPlanets;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ExtraPlanets;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ExtraUtilities;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Factorization;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.FastCraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Futurepack;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Gadomancy;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.GalactiCraftCore;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.GalaxySpace;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Highlands;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ImmersiveCavegen;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.IndustrialRevolutionByRedstone;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.JustAnotherSpawner;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.LordOfTheRings;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.MatterOverdrive;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.MoreFunQuicksand;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Mystcraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.NaturesCompass;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Netherlicious;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.NomadicTents;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.NuclearTech;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.OldWorldGen;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.RandomThings;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.RealisticTerrainGeneration;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.RealisticWorldGen;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Restructured;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Ruins;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Tardis;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Thaumcraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.TheMistsOfRioV;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.ThutCore;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Tropicraft;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.TwilightForest;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.UndergroundBiomes;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.Witchery;
|
||||
import static com.falsepattern.endlessids.mixin.plugin.TargetMod.WorldEdit;
|
||||
import static com.falsepattern.lib.mixin.v2.MixinHelper.avoid;
|
||||
import static com.falsepattern.lib.mixin.v2.MixinHelper.builder;
|
||||
import static com.falsepattern.lib.mixin.v2.MixinHelper.require;
|
||||
|
||||
@SuppressWarnings("UnstableApiUsage")
|
||||
@RequiredArgsConstructor
|
||||
public enum Mixin implements IMixins {
|
||||
// @formatter:off
|
||||
AntiIDConflict_Compat(Phase.EARLY,
|
||||
require(AntiIDConflict),
|
||||
common("antiidconflict.AntiIdConflictBaseMixin",
|
||||
"antiidconflict.BiomeGenBasePlaceholderMixin",
|
||||
"antiidconflict.BiomesManagerMixin",
|
||||
"antiidconflict.DimensionsManagerMixin",
|
||||
"antiidconflict.EnchantementsManagerMixin",
|
||||
"antiidconflict.EntitiesManagerMixin",
|
||||
"antiidconflict.PotionsManagerMixin")),
|
||||
|
||||
// region Biome
|
||||
|
||||
Biome_Vanilla(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
common("biome.vanilla.BiomeDictionaryMixin",
|
||||
"biome.vanilla.BiomeGenBaseMixin",
|
||||
"biome.vanilla.ChunkMixin",
|
||||
"biome.vanilla.GenLayerRiverMixMixin",
|
||||
"biome.vanilla.GenLayerVoronoiZoomMixin")),
|
||||
|
||||
Biome_Vanilla_Placeholders(Phase.EARLY,
|
||||
() -> GeneralConfig.extendBiome && GeneralConfig.biomeConflictAvoidancePlaceholders,
|
||||
common("biome.vanilla.BiomeGenBasePlaceholderMixin")),
|
||||
|
||||
Biome_AbyssalCraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(AbyssalCraft),
|
||||
common("biome.abyssalcraft.AbyssalCraftMixin")),
|
||||
|
||||
Biome_AdvancedRocketry(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(AdvancedRocketry),
|
||||
common("biome.arocketry.AdvancedRocketryMixin",
|
||||
"biome.arocketry.ChunkProviderSpaceMixin")),
|
||||
|
||||
Biome_AntiqueAtlas(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(AntiqueAtlas),
|
||||
common("biome.antiqueatlas.BiomeDetectorBaseMixin",
|
||||
"biome.antiqueatlas.BiomeDetectorNetherMixin")),
|
||||
|
||||
Biome_AlternateTerrainGeneration(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(AlternateTerrainGeneration),
|
||||
common("biome.atg.ATGBiomeConfigMixin",
|
||||
"biome.atg.ATGBiomeManagerMixin",
|
||||
"biome.atg.ATGWorldGenRocksMixin")),
|
||||
|
||||
Biome_BiomeTweaker(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(BiomeTweaker),
|
||||
common("biome.biometweaker.BiomeEventHandlerMixin")),
|
||||
|
||||
Biome_BiomeWand(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(BiomeWand),
|
||||
common("biome.biomewand.BiomeWandItemMixin"),
|
||||
client("biome.biomewand.BiomeWandItemMixin")),
|
||||
|
||||
Biome_BiomesOPlenty(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(BiomesOPlenty),
|
||||
common("biome.bop.BOPBiomeManagerMixin",
|
||||
"biome.bop.BOPBiomesMixin")),
|
||||
|
||||
Biome_BuildCraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(BuildCraft),
|
||||
common("biome.buildcraft.BuildcraftEnergyMixin")),
|
||||
|
||||
Biome_ClimateControl(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ClimateControl),
|
||||
common("biome.climatecontrol.api.BiomeSettingsMixin",
|
||||
"biome.climatecontrol.api.ClimateControlRulesMixin",
|
||||
"biome.climatecontrol.customGenLayer.ConfirmBiomeMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerBiomeByClimateMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerBiomeByTaggedClimateMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerDefineClimateMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerLowlandRiverMixMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerSmoothCoastMixin",
|
||||
"biome.climatecontrol.customGenLayer.GenLayerSubBiomeMixin",
|
||||
"biome.climatecontrol.generator.AbstractWorldGeneratorMixin",
|
||||
"biome.climatecontrol.generator.BiomeSwapperMixin",
|
||||
"biome.climatecontrol.generator.SubBiomeChooserMixin",
|
||||
"biome.climatecontrol.genLayerPack.GenLayerHillsMixin",
|
||||
"biome.climatecontrol.genLayerPack.GenLayerPackMixin",
|
||||
"biome.climatecontrol.genLayerPack.GenLayerSmoothMixin",
|
||||
"biome.climatecontrol.genLayerPack.GenLayerVoronoiZoomMixin",
|
||||
"biome.climatecontrol.genLayerPack.GenLayerZoomMixin")),
|
||||
|
||||
Biome_CompactMachines(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(CompactMachines),
|
||||
common("biome.compactmachines.CubeToolsMixin")),
|
||||
|
||||
Biome_DarkWorld(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(DarkWorld),
|
||||
common("biome.darkworld.ModBiomesMixin")),
|
||||
|
||||
Biome_DimDoors(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(DimDoors),
|
||||
common("biome.dimdoors.DDBiomeGenBaseMixin")),
|
||||
|
||||
Biome_DragonAPI(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(DragonAPI),
|
||||
common("biome.dragonapi.vanilla.GenLayerRiverMixMixin",
|
||||
"biome.dragonapi.GenLayerRiverEventMixin",
|
||||
"biome.dragonapi.IDTypeMixin",
|
||||
"biome.dragonapi.ReikaChunkHelperMixin",
|
||||
"biome.dragonapi.ReikaWorldHelperMixin")),
|
||||
|
||||
Biome_EnhancedBiomes(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(EnhancedBiomes),
|
||||
common("biome.eb.BiomeIDsMixin",
|
||||
"biome.eb.GenLayerArchipelagoEdgeMixin",
|
||||
"biome.eb.GenLayerEBHillsMixin",
|
||||
"biome.eb.GenLayerEBRiverMixMixin",
|
||||
"biome.eb.GenLayerEBVoronoiZoomMixin")),
|
||||
|
||||
Biome_Enderlicious(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Enderlicious),
|
||||
common("biome.enderlicious.BiomeConfigurationMixin",
|
||||
"biome.enderlicious.EndChunkProviderMixin")),
|
||||
|
||||
Biome_Erebus(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Erebus),
|
||||
common("biome.erebus.ModBiomesMixin")),
|
||||
|
||||
Biome_ExtendedPlanets(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ExtendedPlanets),
|
||||
common("biome.extendedplanets.ChunkProviderOceanMixin")),
|
||||
|
||||
Biome_ExtraPlanets(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ExtraPlanets),
|
||||
common("biome.extraplanets.ConfigMixin")),
|
||||
|
||||
Biome_ExtraUtilities(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ExtraUtilities),
|
||||
common("biome.extrautilities.ChunkProviderEndOfTimeMixin")),
|
||||
|
||||
Biome_Factorization(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(Factorization),
|
||||
common("biome.factorization.HammerChunkProviderMixin")),
|
||||
|
||||
Biome_Futurepack(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Futurepack),
|
||||
common("biome.futurepack.BiomeGenSpaceMixin")),
|
||||
|
||||
Biome_Gadomancy(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(Gadomancy),
|
||||
common("biome.gadomancy.ChunkProviderTCOuterMixin")),
|
||||
|
||||
Biome_GalactiCraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(GalactiCraftCore),
|
||||
common("biome.galacticraft.ChunkProviderOrbitMixin",
|
||||
"biome.galacticraft.ConfigManagerCoreMixin")),
|
||||
|
||||
Biome_GalaxySpace(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(GalaxySpace),
|
||||
common("biome.galaxyspace.ChunkProviderKuiperMixin",
|
||||
"biome.galaxyspace.ChunkProviderMarsSSMixin",
|
||||
"biome.galaxyspace.ChunkProviderSpaceLakesMixin",
|
||||
"biome.galaxyspace.ChunkProviderVenusSSMixin")),
|
||||
|
||||
Biome_Highlands(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Highlands),
|
||||
common("biome.highlands.ConfigMixin")),
|
||||
|
||||
Biome_ImmersiveCavegen(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ImmersiveCavegen),
|
||||
common("biome.icg.MysteriumPatchesFixesCaveMixin")),
|
||||
|
||||
Biome_IndustrialRevolutionByRedstone(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(IndustrialRevolutionByRedstone),
|
||||
common("biome.ir3.IR2Mixin")),
|
||||
|
||||
Biome_JustAnotherSpawner(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(JustAnotherSpawner),
|
||||
common("biome.jas.LegacyCreatureTypeMixin",
|
||||
"biome.jas.ModernCreatureTypeMixin")),
|
||||
|
||||
Biome_LordOfTheRings(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(LordOfTheRings),
|
||||
common("biome.lotr.LOTRBiomeVariantStorageMixin",
|
||||
"biome.lotr.LOTRChunkProviderMixin",
|
||||
"biome.lotr.LOTRChunkProviderUtumnoMixin",
|
||||
"biome.lotr.LOTRDimensionMixin",
|
||||
"biome.lotr.LOTRPacketBiomeVariantsWatchHandlerMixin",
|
||||
"biome.lotr.LOTRWorldChunkManagerMixin",
|
||||
"biome.lotr.LOTRWorldProviderMixin")),
|
||||
|
||||
Biome_Mystcraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Mystcraft),
|
||||
common("biome.mystcraft.BiomeReplacerMixin")),
|
||||
|
||||
Biome_NaturesCompass(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(NaturesCompass),
|
||||
common("biome.naturescompass.BiomeUtilsMixin")),
|
||||
|
||||
Biome_Netherlicious(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Netherlicious),
|
||||
common("biome.netherlicious.BiomeConfigurationMixin")),
|
||||
|
||||
Biome_NomadicTents(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(NomadicTents),
|
||||
common("biome.nomadictents.TentChunkProviderMixin")),
|
||||
|
||||
Biome_OldWorldGen(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(OldWorldGen),
|
||||
common("biome.owg.ChunkGeneratorBetaMixin")),
|
||||
|
||||
Biome_RandomThings(Phase.EARLY,
|
||||
Ext.Biome,
|
||||
require(RandomThings),
|
||||
common("biome.randomthings.ItemBiomePainterMixin",
|
||||
"biome.randomthings.MessagePaintBiomeMixin")),
|
||||
|
||||
Biome_RealisticTerrainGeneration(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(RealisticTerrainGeneration),
|
||||
common("biome.rtg.ChunkProviderRTGMixin",
|
||||
"biome.rtg.LandscapeGeneratorMixin",
|
||||
"biome.rtg.WorldChunkManagerRTGMixin")),
|
||||
|
||||
Biome_RealisticWorldGen(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(RealisticWorldGen),
|
||||
common("biome.rwg.RealisticBiomeBaseMixin",
|
||||
"biome.rwg.ChunkGeneratorRealisticMixin",
|
||||
"biome.rwg.VillageMaterialsMixin")),
|
||||
|
||||
Biome_Restructured(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Restructured),
|
||||
common("biome.restructured.BiomeHelperMixin")),
|
||||
|
||||
Biome_Ruins(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Ruins),
|
||||
common("biome.ruins.FileHandlerMixin",
|
||||
"biome.ruins.LoaderThreadMixin",
|
||||
"biome.ruins.RuinGeneratorMixin")),
|
||||
|
||||
Biome_Tardis(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Tardis),
|
||||
common("biome.tardismod.TardisChunkProviderMixin")),
|
||||
|
||||
Biome_Thaumcraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Thaumcraft),
|
||||
common("biome.thaumcraft.UtilsMixin")),
|
||||
|
||||
Biome_TheMistsOfRioV(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(TheMistsOfRioV),
|
||||
common("biome.tmor.ChunkProviderSanctuatiteMixin")),
|
||||
|
||||
Biome_ThutCore(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(ThutCore),
|
||||
common("biome.thut.Vector3Mixin")),
|
||||
|
||||
Biome_Tropicraft(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Tropicraft),
|
||||
common("biome.tropicraft.GenLayerTropiVoronoiZoomMixin")),
|
||||
|
||||
Biome_TwilightForest(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(TwilightForest),
|
||||
common("biome.twilightforest.TFBiomeBaseMixin")),
|
||||
|
||||
Biome_Witchery(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(Witchery),
|
||||
common("biome.witchery.BrewActionBiomeChangeMixin",
|
||||
"biome.witchery.WorldChunkManagerMirrorMixin")),
|
||||
|
||||
Biome_WorldEdit(Phase.LATE,
|
||||
Ext.Biome,
|
||||
require(WorldEdit),
|
||||
common("biome.worldedit.ForgeWorldMixin")),
|
||||
|
||||
// endregion Biome
|
||||
|
||||
// region BlockItem
|
||||
|
||||
BlockItem_Vanilla(Phase.EARLY,
|
||||
Ext.BlockItem,
|
||||
common("blockitem.vanilla.BlockFireMixin",
|
||||
"blockitem.vanilla.BlockMixin",
|
||||
"blockitem.vanilla.ExtendedBlockStorageMixin",
|
||||
"blockitem.vanilla.ItemInWorldManagerMixin",
|
||||
"blockitem.vanilla.ItemStackMixin",
|
||||
"blockitem.vanilla.PacketBufferMixin",
|
||||
"blockitem.vanilla.S22PacketMultiBlockChangeMixin",
|
||||
"blockitem.vanilla.S24PacketBlockActionMixin",
|
||||
"blockitem.vanilla.StatListMixin",
|
||||
"blockitem.vanilla.WorldMixin"),
|
||||
client("blockitem.vanilla.NetHandlerPlayClientMixin",
|
||||
"blockitem.vanilla.PlayerControllerMPMixin",
|
||||
"blockitem.vanilla.RenderGlobalMixin")),
|
||||
|
||||
BlockItem_BlockPhysics(Phase.EARLY,
|
||||
Ext.BlockItem,
|
||||
require(BlockPhysics),
|
||||
common("blockitem.blockphysics.DefinitionMapsMixin")),
|
||||
|
||||
BlockItem_CoFHLib(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(CoFHLib),
|
||||
common("blockitem.cofhlib.BlockHelperMixin")),
|
||||
|
||||
BlockItem_DragonAPI(Phase.EARLY,
|
||||
Ext.BlockItem,
|
||||
require(DragonAPI),
|
||||
common("blockitem.dragonapi.BlockPropertiesMixin",
|
||||
"blockitem.dragonapi.IDTypeMixin")),
|
||||
|
||||
BlockItem_FastCraft(Phase.EARLY,
|
||||
Ext.BlockItem,
|
||||
require(FastCraft),
|
||||
client("blockitem.fastcraft.EntityRendererMixin")),
|
||||
|
||||
BlockItem_NuclearTech(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(NuclearTech),
|
||||
common("blockitem.ntm.ChunkRadiationHandlerPRISMMixin",
|
||||
"blockitem.ntm.ChunkRadiationHandlerPRISMSubChunkMixin")),
|
||||
|
||||
BlockItem_MatterOverdrive(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(MatterOverdrive),
|
||||
common("blockitem.matteroverdrive.InventoryMixin",
|
||||
"blockitem.matteroverdrive.ItemPatternMixin")),
|
||||
|
||||
BlockItem_MoreFunQuicksand(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(MoreFunQuicksand),
|
||||
common("blockitem.mfqm.MFQMMixin")),
|
||||
|
||||
BlockItem_UndergroundBiomes(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(UndergroundBiomes),
|
||||
common("blockitem.ubc.BiomeUndergroundDecoratorMixin",
|
||||
"blockitem.ubc.OreUBifierMixin")),
|
||||
|
||||
BlockItem_WorldEdit(Phase.LATE,
|
||||
Ext.BlockItem,
|
||||
require(WorldEdit),
|
||||
common("blockitem.worldedit.BaseBlockMixin")),
|
||||
|
||||
// endregion BlockItem
|
||||
|
||||
// region DataWatcher
|
||||
|
||||
DataWatcher_Vanilla(Phase.EARLY,
|
||||
Ext.DataWatcher,
|
||||
common("datawatcher.vanilla.DataWatcherMixin")),
|
||||
|
||||
DataWatcher_MoreFunQuicksand(Phase.LATE,
|
||||
Ext.DataWatcher,
|
||||
common("datawatcher.mfqm.MFQMDataWatcherMixin")),
|
||||
|
||||
// endregion DataWatcher
|
||||
|
||||
// region Enchantment
|
||||
|
||||
Enchantment_Vanilla(Phase.EARLY,
|
||||
Ext.Enchantment,
|
||||
common("enchantment.vanilla.EnchantmentMixin")),
|
||||
|
||||
// endregion Enchantment
|
||||
|
||||
// region Entity
|
||||
|
||||
Entity_Vanilla(Phase.EARLY,
|
||||
Ext.Entity,
|
||||
common("entity.vanilla.EntityListMixin",
|
||||
"entity.vanilla.EntityRegistryMixin",
|
||||
"entity.vanilla.S0FPacketSpawnMobMixin")),
|
||||
|
||||
// endregion Entity
|
||||
|
||||
// region Potion
|
||||
|
||||
Potion_Vanilla(Phase.EARLY,
|
||||
Ext.Potion,
|
||||
common("potion.vanilla.PotionEffectMixin",
|
||||
"potion.vanilla.PotionMixin")),
|
||||
|
||||
Potion_Vanilla_NoArsMagica2(Phase.EARLY,
|
||||
Ext.Potion,
|
||||
avoid(ArsMagica2),
|
||||
common("potion.vanilla.network.S1DPacketEntityEffectMixin",
|
||||
"potion.vanilla.network.S1EPacketRemoveEntityEffectMixin"),
|
||||
client("potion.vanilla.NetHandlerPlayClientMixin")),
|
||||
|
||||
Potion_Thaumcraft(Phase.LATE,
|
||||
Ext.Potion,
|
||||
require(Thaumcraft),
|
||||
common("potion.thaumcraft.ConfigMixin")),
|
||||
|
||||
biome_enderlicious_BiomeConfigurationMixin(EXT_BIOME, require(ENDERLICIOUS)),
|
||||
biome_enderlicious_EndChunkProviderMixin(EXT_BIOME, require(ENDERLICIOUS)),
|
||||
// endregion Potion
|
||||
|
||||
biome_erebus_ModBiomesMixin(EXT_BIOME, require(EREBUS)),
|
||||
// region Redstone
|
||||
|
||||
biome_extendedplanets_ChunkProviderOceanMixin(EXT_BIOME, require(EXTENDEDPLANETS)),
|
||||
Redstone_Vanilla(Phase.EARLY,
|
||||
() -> GeneralConfig.extendBlockItem && GeneralConfig.extendRedstone,
|
||||
common("redstone.BlockCompressedPoweredMixin",
|
||||
"redstone.BlockRedstoneDiodeMixin",
|
||||
"redstone.BlockRedstoneTorchMixin",
|
||||
"redstone.WorldMixin"),
|
||||
client("redstone.BlockRedstoneWireMixin",
|
||||
"redstone.RenderBlocksMixin")),
|
||||
|
||||
biome_extraplanets_ConfigMixin(EXT_BIOME, require(EXTRAPLANETS)),
|
||||
// endregion Redstone
|
||||
|
||||
biome_extrautilities_ChunkProviderEndOfTimeMixin(EXT_BIOME, require(EXTRAUTILITIES)),
|
||||
|
||||
biome_factorization_HammerChunkProviderMixin(EXT_BIOME, require(FACTORIZATION)),
|
||||
|
||||
biome_futurepack_BiomeGenSpaceMixin(EXT_BIOME, require(FUTUREPACK)),
|
||||
|
||||
biome_gadomancy_ChunkProviderTCOuterMixin(EXT_BIOME, require(GADOMANCY)),
|
||||
|
||||
biome_galacticraft_ConfigManagerCoreMixin(EXT_BIOME, require(GALACTICRAFTCORE)),
|
||||
|
||||
biome_galaxyspace_ChunkProviderKuiperMixin(EXT_BIOME, require(GALAXYSPACE)),
|
||||
biome_galaxyspace_ChunkProviderMarsSSMixin(EXT_BIOME, require(GALAXYSPACE)),
|
||||
biome_galaxyspace_ChunkProviderSpaceLakesMixin(EXT_BIOME, require(GALAXYSPACE)),
|
||||
biome_galaxyspace_ChunkProviderVenusSSMixin(EXT_BIOME, require(GALAXYSPACE)),
|
||||
|
||||
biome_highlands_ConfigMixin(EXT_BIOME, require(HIGHLANDS)),
|
||||
|
||||
biome_icg_MysteriumPatchesFixesCaveMixin(EXT_BIOME, require(ICG)),
|
||||
|
||||
biome_ir3_IR2Mixin(EXT_BIOME, require(IR3)),
|
||||
|
||||
biome_jas_LegacyCreatureTypeMixin(EXT_BIOME, require(JAS)),
|
||||
biome_jas_ModernCreatureTypeMixin(EXT_BIOME, require(JAS)),
|
||||
|
||||
biome_lotr_LOTRBiomeVariantStorageMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRChunkProviderMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRChunkProviderUtumnoMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRDimensionMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRPacketBiomeVariantsWatchHandlerMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRWorldChunkManagerMixin(EXT_BIOME, require(LOTR)),
|
||||
biome_lotr_LOTRWorldProviderMixin(EXT_BIOME, require(LOTR)),
|
||||
|
||||
biome_mystcraft_BiomeReplacerMixin(EXT_BIOME, require(MYSTCRAFT)),
|
||||
|
||||
biome_naturescompass_BiomeUtilsMixin(EXT_BIOME, require(NATURESCOMPASS)),
|
||||
|
||||
biome_netherlicious_BiomeConfigurationMixin(EXT_BIOME, require(NETHERLICIOUS)),
|
||||
|
||||
biome_nomadictents_TentChunkProviderMixin(EXT_BIOME, require(NOMADICTENTS)),
|
||||
|
||||
biome_owg_ChunkGeneratorBetaMixin(EXT_BIOME, require(OWG)),
|
||||
|
||||
biome_randomthings_ItemBiomePainterMixin(EXT_BIOME, require(RANDOMTHINGS)),
|
||||
biome_randomthings_MessagePaintBiomeMixin(EXT_BIOME, require(RANDOMTHINGS)),
|
||||
|
||||
biome_restructured_BiomeHelperMixin(EXT_BIOME, require(RESTRUCTURED)),
|
||||
biome_rtg_ChunkProviderRTGMixin(EXT_BIOME, require(RTG)),
|
||||
biome_rtg_LandscapeGeneratorMixin(EXT_BIOME, require(RTG)),
|
||||
biome_rtg_WorldChunkManagerRTGMixin(EXT_BIOME, require(RTG)),
|
||||
|
||||
biome_ruins_FileHandlerMixin(EXT_BIOME, require(RUINS)),
|
||||
biome_ruins_LoaderThreadMixin(EXT_BIOME, require(RUINS)),
|
||||
biome_ruins_RuinGeneratorMixin(EXT_BIOME, require(RUINS)),
|
||||
|
||||
biome_rwg_ChunkGeneratorRealisticMixin(EXT_BIOME, require(RWG)),
|
||||
biome_rwg_RealisticBiomeBaseMixin(EXT_BIOME, require(RWG)),
|
||||
biome_rwg_VillageMaterialsMixin(EXT_BIOME, require(RWG)),
|
||||
|
||||
biome_tardismod_TardisChunkProviderMixin(EXT_BIOME, require(TARDIS)),
|
||||
|
||||
biome_thaumcraft_UtilsMixin(EXT_BIOME, require(THAUMCRAFT)),
|
||||
|
||||
biome_thut_Vector3Mixin(EXT_BIOME, require(THUTCORE)),
|
||||
|
||||
biome_tmor_ChunkProviderSanctuatiteMixin(EXT_BIOME, require(TMOR)),
|
||||
|
||||
biome_tropicraft_GenLayerTropiVoronoiZoomMixin(EXT_BIOME, require(TROPICRAFT)),
|
||||
|
||||
biome_twilightforest_TFBiomeBaseMixin(EXT_BIOME, require(TWILIGHTFOREST)),
|
||||
|
||||
biome_witchery_WorldChunkManagerMirrorMixin(EXT_BIOME, require(WITCHERY)),
|
||||
biome_witchery_BrewActionBiomeChangeMixin(EXT_BIOME, require(WITCHERY)),
|
||||
|
||||
biome_worldedit_ForgeWorldMixin(EXT_BIOME, require(WORLDEDIT)),
|
||||
//endregion
|
||||
|
||||
//region blockitem
|
||||
blockitem_vanilla_BlockFireMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_BlockMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_ExtendedBlockStorageMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_ItemInWorldManagerMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_ItemStackMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_PacketBufferMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_S22PacketMultiBlockChangeMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_S24PacketBlockActionMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_StatListMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_WorldMixin(EXT_BLOCK_ITEM),
|
||||
|
||||
blockitem_blockphysics_DefinitionMapsMixin(EXT_BLOCK_ITEM, require(BLOCKPHYSICS)),
|
||||
|
||||
blockitem_cofhlib_BlockHelperMixin(EXT_BLOCK_ITEM, require(COFHLIB)),
|
||||
|
||||
blockitem_dragonapi_BlockPropertiesMixin(EXT_BLOCK_ITEM, require(DRAGONAPI)),
|
||||
blockitem_dragonapi_IDTypeMixin(EXT_BLOCK_ITEM, require(DRAGONAPI)),
|
||||
|
||||
blockitem_ntm_ChunkRadiationHandlerPRISMMixin(EXT_BLOCK_ITEM, require(HBM_NTM)),
|
||||
blockitem_ntm_ChunkRadiationHandlerPRISMSubChunkMixin(EXT_BLOCK_ITEM, require(HBM_NTM)),
|
||||
|
||||
blockitem_matteroverdrive_InventoryMixin(EXT_BLOCK_ITEM, require(MATTEROVERDRIVE).or(require(MATTERMEGADRIVE))),
|
||||
blockitem_matteroverdrive_ItemPatternMixin(EXT_BLOCK_ITEM,
|
||||
require(MATTEROVERDRIVE).or(require(MATTERMEGADRIVE))),
|
||||
|
||||
blockitem_mfqm_MFQMMixin(EXT_BLOCK_ITEM, require(MFQM)),
|
||||
|
||||
blockitem_worldedit_BaseBlockMixin(EXT_BLOCK_ITEM, require(WORLDEDIT)),
|
||||
|
||||
blockitem_ubc_OreUBifierMixin(EXT_BLOCK_ITEM, require(UBC)),
|
||||
blockitem_ubc_BiomeUndergroundDecoratorMixin(EXT_BLOCK_ITEM, require(UBC)),
|
||||
//endregion
|
||||
|
||||
//region datawatcher
|
||||
datawatcher_vanilla_DataWatcherMixin(EXT_DATA_WATCHER),
|
||||
|
||||
datawatcher_mfqm_MFQMDataWatcherMixin(EXT_DATA_WATCHER, require(MFQM)),
|
||||
//endregion
|
||||
|
||||
//region enchantment
|
||||
enchantment_vanilla_EnchantmentMixin(EXT_ENCHANTMENT),
|
||||
//endregion
|
||||
|
||||
//region entity
|
||||
entity_vanilla_EntityListMixin(EXT_ENTITY),
|
||||
entity_vanilla_EntityRegistryMixin(EXT_ENTITY),
|
||||
entity_vanilla_S0FPacketSpawnMobMixin(EXT_ENTITY),
|
||||
//endregion
|
||||
|
||||
//region potion
|
||||
potion_vanilla_PotionEffectMixin(EXT_POTION),
|
||||
potion_vanilla_PotionMixin(EXT_POTION),
|
||||
potion_vanilla_network_S1DPacketEntityEffectMixin(EXT_POTION, avoid(AM2)),
|
||||
potion_vanilla_network_S1EPacketRemoveEntityEffectMixin(EXT_POTION, avoid(AM2)),
|
||||
|
||||
potion_thaumcraft_ConfigMixin(EXT_POTION, require(THAUMCRAFT)),
|
||||
//endregion
|
||||
|
||||
//region redstone
|
||||
redstone_BlockCompressedPoweredMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
redstone_BlockRedstoneDiodeMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
redstone_BlockRedstoneTorchMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
redstone_WorldMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
//endregion
|
||||
;
|
||||
|
||||
//region boilerplate
|
||||
@Getter
|
||||
private final Predicate<List<ITargetedMod>> filter;
|
||||
@Getter
|
||||
private final String mixin;
|
||||
|
||||
Common(Predicate<List<ITargetedMod>> predicate) {
|
||||
filter = predicate;
|
||||
mixin = buildMixin(name());
|
||||
}
|
||||
|
||||
Common(Supplier<Boolean> condition) {
|
||||
filter = buildPredicate(condition);
|
||||
mixin = buildMixin(name());
|
||||
}
|
||||
|
||||
Common(Supplier<Boolean> condition, Predicate<List<ITargetedMod>> predicate) {
|
||||
filter = buildPredicate(condition).and(predicate);
|
||||
mixin = buildMixin(name());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Side getSide() {
|
||||
return Side.COMMON;
|
||||
}
|
||||
//endregion
|
||||
}
|
||||
|
||||
public enum Client implements IMixin {
|
||||
//region biome
|
||||
biome_biomewand_BiomeWandItemMixin(EXT_BIOME, require(BIOMEWAND)),
|
||||
//endregion
|
||||
|
||||
//region blockitem
|
||||
blockitem_vanilla_NetHandlerPlayClientMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_PlayerControllerMPMixin(EXT_BLOCK_ITEM),
|
||||
blockitem_vanilla_RenderGlobalMixin(EXT_BLOCK_ITEM),
|
||||
|
||||
blockitem_fastcraft_EntityRendererMixin(EXT_BLOCK_ITEM, require(FASTCRAFT)),
|
||||
//endregion
|
||||
|
||||
//region potion
|
||||
potion_vanilla_NetHandlerPlayClientMixin(EXT_POTION, avoid(AM2)),
|
||||
//endregion
|
||||
|
||||
//region redstone
|
||||
redstone_BlockRedstoneWireMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
redstone_RenderBlocksMixin(all(EXT_BLOCK_ITEM, EXT_REDSTONE)),
|
||||
//endregion
|
||||
;
|
||||
|
||||
//region boilerplate
|
||||
@Getter
|
||||
private final Predicate<List<ITargetedMod>> filter;
|
||||
@Getter
|
||||
private final String mixin;
|
||||
|
||||
Client(Supplier<Boolean> condition) {
|
||||
filter = buildPredicate(condition);
|
||||
mixin = buildMixin(name());
|
||||
}
|
||||
|
||||
Client(Supplier<Boolean> condition, Predicate<List<ITargetedMod>> predicate) {
|
||||
filter = buildPredicate(condition).and(predicate);
|
||||
mixin = buildMixin(name());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Side getSide() {
|
||||
return Side.CLIENT;
|
||||
}
|
||||
//endregion
|
||||
}
|
||||
|
||||
public static IMixin[] values() {
|
||||
val common = Common.values();
|
||||
val client = Client.values();
|
||||
val result = new IMixin[common.length + client.length];
|
||||
System.arraycopy(common, 0, result, 0, common.length);
|
||||
System.arraycopy(client, 0, result, common.length, client.length);
|
||||
return result;
|
||||
}
|
||||
// @formatter:on
|
||||
|
||||
//region boilerplate
|
||||
private static Predicate<List<ITargetedMod>> buildPredicate(Supplier<Boolean> condition) {
|
||||
return condition(condition);
|
||||
;
|
||||
@Getter
|
||||
private final MixinBuilder builder;
|
||||
|
||||
Mixin(Phase phase, SidedMixins... mixins) {
|
||||
this(builder(mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
private static String buildMixin(String name) {
|
||||
return name.replace('_', '.');
|
||||
Mixin(Phase phase, BooleanSupplier cond, SidedMixins... mixins) {
|
||||
this(builder(cond, mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
private static final Supplier<Boolean> EXT_BIOME = () -> GeneralConfig.extendBiome;
|
||||
private static final Supplier<Boolean> EXT_BLOCK_ITEM = () -> GeneralConfig.extendBlockItem;
|
||||
private static final Supplier<Boolean> EXT_DATA_WATCHER = () -> GeneralConfig.extendDataWatcher;
|
||||
private static final Supplier<Boolean> EXT_ENCHANTMENT = () -> GeneralConfig.extendEnchantment;
|
||||
private static final Supplier<Boolean> EXT_POTION = () -> GeneralConfig.extendPotion;
|
||||
private static final Supplier<Boolean> EXT_ENTITY = () -> GeneralConfig.extendEntity;
|
||||
private static final Supplier<Boolean> EXT_REDSTONE = () -> GeneralConfig.extendRedstone;
|
||||
Mixin(Phase phase, TaggedMod mod, SidedMixins... mixins) {
|
||||
this(builder(mod, mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
@SafeVarargs
|
||||
private static Supplier<Boolean> all(Supplier<Boolean>... conds) {
|
||||
return () -> {
|
||||
for (Supplier<Boolean> cond : conds) {
|
||||
if (!cond.get()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
Mixin(Phase phase, TaggedMod[] mods, SidedMixins... mixins) {
|
||||
this(builder(mods, mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
Mixin(Phase phase, BooleanSupplier cond, TaggedMod mod, SidedMixins... mixins) {
|
||||
this(builder(cond, mod, mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
Mixin(Phase phase, BooleanSupplier cond, TaggedMod[] mods, SidedMixins... mixins) {
|
||||
this(builder(cond, mods, mixins).setPhase(phase));
|
||||
}
|
||||
|
||||
private static SidedMixins common(@Language(value = "JAVA",
|
||||
prefix = "import " + Tags.GROUPNAME + ".mixin.mixins.common.",
|
||||
suffix = ";") String... mixins) {
|
||||
return MixinHelper.common(mixins);
|
||||
}
|
||||
|
||||
private static SidedMixins client(@Language(value = "JAVA",
|
||||
prefix = "import " + Tags.GROUPNAME + ".mixin.mixins.client.",
|
||||
suffix = ";") String... mixins) {
|
||||
return MixinHelper.client(mixins);
|
||||
}
|
||||
|
||||
private static SidedMixins server(@Language(value = "JAVA",
|
||||
prefix = "import " + Tags.GROUPNAME + ".mixin.mixins.server.",
|
||||
suffix = ";") String... mixins) {
|
||||
return MixinHelper.server(mixins);
|
||||
}
|
||||
//endregion
|
||||
}
|
||||
|
||||
private static class Ext {
|
||||
public static final BooleanSupplier Biome = () -> GeneralConfig.extendBiome;
|
||||
public static final BooleanSupplier BlockItem = () -> GeneralConfig.extendBlockItem;
|
||||
public static final BooleanSupplier DataWatcher = () -> GeneralConfig.extendDataWatcher;
|
||||
public static final BooleanSupplier Enchantment = () -> GeneralConfig.extendEnchantment;
|
||||
public static final BooleanSupplier Potion = () -> GeneralConfig.extendPotion;
|
||||
public static final BooleanSupplier Entity = () -> GeneralConfig.extendEntity;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
/*
|
||||
* EndlessIDs
|
||||
*
|
||||
* Copyright (C) 2022-2025 FalsePattern, The MEGA Team
|
||||
* All Rights Reserved
|
||||
*
|
||||
* The above copyright notice, this permission notice and the word "MEGA"
|
||||
* shall be included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, only version 3 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package com.falsepattern.endlessids.mixin.plugin;
|
||||
|
||||
import com.gtnewhorizon.gtnhmixins.builders.ITargetMod;
|
||||
import com.gtnewhorizon.gtnhmixins.builders.TargetModBuilder;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.intellij.lang.annotations.Language;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
public enum TargetMod implements ITargetMod {
|
||||
//coremods
|
||||
AdvancedRocketry("zmaster587.advancedRocketry.AdvancedRocketry"),
|
||||
ArsMagica2("am2.AMCore"),
|
||||
AntiIDConflict("code.elix_x.coremods.antiidconflict.AntiIdConflictCore"),
|
||||
BlockPhysics("com.bloodnbonesgaming.blockphysics.BlockPhysics"),
|
||||
BiomeTweaker("me.superckl.biometweaker.BiomeTweaker"),
|
||||
DragonAPI("Reika.DragonAPI.DragonAPICore"),
|
||||
Factorization("factorization.coremod.LoadingPlugin"),
|
||||
FastCraft("fastcraft.Tweaker"),
|
||||
Gadomancy("makeo.gadomancy.common.Gadomancy"),
|
||||
GalaxySpace("galaxyspace.GalaxySpace"),
|
||||
LordOfTheRings("lotr.common.LOTRMod"),
|
||||
RandomThings("lumien.randomthings.RandomThings"),
|
||||
//regular mods
|
||||
AbyssalCraft("com.shinoow.abyssalcraft.AbyssalCraft"),
|
||||
AlternateTerrainGeneration("ttftcuts.atg.ATG"),
|
||||
AntiqueAtlas("hunternif.mc.atlas.AntiqueAtlasMod"),
|
||||
BiomesOPlenty("biomesoplenty.BiomesOPlenty"),
|
||||
BiomeWand("com.spacechase0.minecraft.biomewand.BiomeWandMod"),
|
||||
BuildCraft("buildcraft.BuildCraftCore"),
|
||||
ClimateControl("climateControl.ClimateControl"),
|
||||
CoFHLib("cofh.lib.CoFHLibProps"),
|
||||
CompactMachines("org.dave.CompactMachines.CompactMachines"),
|
||||
DarkWorld("matthbo.mods.darkworld.DarkWorld"),
|
||||
DimDoors("StevenDimDoors.mod_pocketDim.mod_pocketDim"),
|
||||
Enderlicious("DelirusCrux.Enderlicious.Enderlicious"),
|
||||
EnhancedBiomes("enhancedbiomes.EnhancedBiomesMod"),
|
||||
Erebus("erebus.Erebus"),
|
||||
ExtendedPlanets("ExtendedPlanets.EPMain"),
|
||||
ExtraPlanets("com.mjr.extraplanets.ExtraPlanets"),
|
||||
ExtraUtilities("com.rwtema.extrautils.ExtraUtilsMod"),
|
||||
Futurepack("futurepack.common.FPMain"),
|
||||
GalactiCraftCore("micdoodle8.mods.galacticraft.core.GalacticraftCore"),
|
||||
Highlands("highlands.Highlands"),
|
||||
ImmersiveCavegen("net.tclproject.immersivecavegen.ImmersiveCavegen"),
|
||||
IndustrialRevolutionByRedstone("jp.plusplus.ir2.IR2"),
|
||||
JustAnotherSpawner("jas.common.JustAnotherSpawner"),
|
||||
MatterOverdrive("matteroverdrive.MatterOverdrive"),
|
||||
MoreFunQuicksand("MoreFunQuicksandMod.main.MFQM"),
|
||||
Mystcraft("com.xcompwiz.mystcraft.Mystcraft"),
|
||||
NaturesCompass("com.chaosthedude.naturescompass.NaturesCompass"),
|
||||
Netherlicious("DelirusCrux.Netherlicious.Netherlicious"),
|
||||
NomadicTents("com.yurtmod.main.NomadicTents"),
|
||||
NuclearTech("com.hbm.main.MainRegistry"),
|
||||
OldWorldGen("owg.OWG"),
|
||||
Ruins("atomicstryker.ruins.common.RuinsMod"),
|
||||
RealisticTerrainGeneration("rtg.RTG"),
|
||||
RealisticWorldGen("rwg.RWG"),
|
||||
Restructured("org.blockartistry.mod.Restructured.Restructured"),
|
||||
Tardis("tardis.TardisMod"),
|
||||
Thaumcraft("thaumcraft.common.Thaumcraft"),
|
||||
TheMistsOfRioV("sheenrox82.RioV.src.base.TheMistsOfRioV"),
|
||||
ThutCore("thut.api.ThutCore"),
|
||||
Tropicraft("net.tropicraft.Tropicraft"),
|
||||
TwilightForest("twilightforest.TwilightForestMod"),
|
||||
UndergroundBiomes("exterminatorJeff.undergroundBiomes.common.UndergroundBiomes"),
|
||||
Witchery("com.emoniph.witchery.Witchery"),
|
||||
WorldEdit("com.sk89q.worldedit.forge.ForgeWorldEdit"),
|
||||
|
||||
;
|
||||
@Getter
|
||||
private final TargetModBuilder builder;
|
||||
|
||||
TargetMod(@Language(value = "JAVA",
|
||||
prefix = "import ",
|
||||
suffix = ";") @NotNull String className) {
|
||||
this(className, null);
|
||||
}
|
||||
|
||||
TargetMod(@Language(value = "JAVA",
|
||||
prefix = "import ",
|
||||
suffix = ";") @NotNull String className, @Nullable Consumer<TargetModBuilder> cfg) {
|
||||
builder = new TargetModBuilder();
|
||||
builder.setTargetClass(className);
|
||||
if (cfg != null) {
|
||||
cfg.accept(builder);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,106 +0,0 @@
|
||||
/*
|
||||
* EndlessIDs
|
||||
*
|
||||
* Copyright (C) 2022-2025 FalsePattern, The MEGA Team
|
||||
* All Rights Reserved
|
||||
*
|
||||
* The above copyright notice, this permission notice and the words "MEGA"
|
||||
* shall be included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, only version 3 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package com.falsepattern.endlessids.mixin.plugin;
|
||||
|
||||
import com.falsepattern.lib.mixin.ITargetedMod;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
import static com.falsepattern.lib.mixin.ITargetedMod.PredicateHelpers.contains;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
public enum TargetedMod implements ITargetedMod {
|
||||
ABYSSALCRAFT("AbyssalCraft", false, contains("abyssalcraft-")),
|
||||
AROCKETRY("Advanced Rocketry", false, contains("advancedrocketry-")),
|
||||
ATG("Alternate Terrain Generation", false, contains("atg")),
|
||||
AM2("Ars Magica 2", false, contains("am2").or(contains("arsmagica2"))),
|
||||
ANTIQUEATLAS("Antique Atlas", false, contains("antiqueatlas")),
|
||||
ANTIIDCONFLICT("Anti ID Conflict", false, contains("antiidconflict")),
|
||||
BLOCKPHYSICS("Block Physics", false, contains("blockphysics-")),
|
||||
BOP("Biomes O' Plenty", false, contains("biomesoplenty-")),
|
||||
BIOMETWEAKER("Biome Tweaker", false, contains("biometweaker-")),
|
||||
BIOMEWAND("Biome Wand", false, contains("biome-wand")),
|
||||
BUILDCRAFT("BuildCraft", false, contains("buildcraft-").and(contains("compat").negate())),
|
||||
CLIMATECONTROL("Climate Control", false, contains("climatecontrol-")),
|
||||
COFHLIB("CoFH Lib", false, contains("cofhlib-")),
|
||||
COMPACTMACHINES("Compact Machines", false, contains("compactmachines-")),
|
||||
DARKWORLD("Dark World", false, contains("darkworld-")),
|
||||
DIMDOORS("Dimensional Doors", false, contains("dimensionaldoors-").or(contains("dimdoors-"))),
|
||||
DRAGONAPI("DragonAPI", false, contains("dragonapi")),
|
||||
EB("Enhanced Biomes", false, contains("Enhanced Biomes").or(contains("enhancedbiomes"))),
|
||||
ENDERLICIOUS("Enderlicious", false, contains("enderlicious-")),
|
||||
EREBUS("The Erebus", false, contains("theerebus")),
|
||||
EXTENDEDPLANETS("Extended Planets", false, contains("extendedplanets-")),
|
||||
EXTRAPLANETS("Extra Planets", false, contains("extraplanets-")),
|
||||
EXTRAUTILITIES("Extra Utilities", false, contains("extrautilities-")),
|
||||
FACTORIZATION("Factorization", false, contains("factorization-")),
|
||||
FASTCRAFT("Fastcraft", false, contains("fastcraft-")),
|
||||
FUTUREPACK("Futurepack", false, contains("futurepack")),
|
||||
GADOMANCY("Gadomancy", false, contains("gadomancy-")),
|
||||
GALACTICRAFTCORE("GalactiCraftCore", false, contains("galacticraftcore")),
|
||||
GALAXYSPACE("GalaxySpace", false, contains("galaxyspace-")),
|
||||
HBM_NTM("Hbm's Nuclear Tech Mod", false, contains("hbm-ntm")),
|
||||
HIGHLANDS("Highlands", false, contains("highlands")),
|
||||
ICG("Immersive Cavegen", false, contains("immersivecavegen")),
|
||||
IR3("Industrial Revolution by Redstone Rebooted", false, contains("industrialrevolutionbyredstonerebooted-")),
|
||||
JAS("Just Another Spawner", false, contains("justanotherspawner-")),
|
||||
LOTR("LOTR Mod", false, contains("lotrmod")),
|
||||
MATTEROVERDRIVE("Matter Overdrive", false, contains("matteroverdrive-")),
|
||||
MATTERMEGADRIVE("Matter Megadrive", false, contains("mattermegadrive-")),
|
||||
MYSTCRAFT("Mystcraft", false, contains("mystcraft-")),
|
||||
MFQM("More Fun Quicksand Mod", false, contains("morefunquicksandmod-")),
|
||||
NATURESCOMPASS("Nature's Compass", false, contains("naturescompass")),
|
||||
NETHERLICIOUS("Netherlicious", false, contains("netherlicious-")),
|
||||
NOMADICTENTS("Nomadic Tents", false, contains("nomadictents")),
|
||||
OWG("Nostalgic world generation", false, contains("owg-").or(contains("nostalgiagenerator-"))),
|
||||
RANDOMTHINGS("Random Things", false, contains("randomthings-")),
|
||||
RUINS("Ruins", false, contains("ruins-")),
|
||||
RESTRUCTURED("Restructured", false, contains("restructured-")),
|
||||
RTG("Realistic Terrain Generation", false, contains("rtg-")),
|
||||
RWG("Realistic World Gen", false, contains("rwg-")),
|
||||
TARDIS("TARDIS Mod", false, contains("tardismod-")),
|
||||
THAUMCRAFT("Thaumcraft", false, contains("thaumcraft")),
|
||||
THUTCORE("ThutCore", false, contains("thutcore-").or(contains("thutmods-"))),
|
||||
TMOR("The Mists Of RioV", false, contains("the mists of riov-").or(contains("the-mists-of-riov-"))),
|
||||
TROPICRAFT("Tropicraft", false, contains("tropicraft-")),
|
||||
TWILIGHTFOREST("Twilight Forest", false, contains("twilightforest")),
|
||||
UBC("Underground Biomes Constructs", false, contains("undergroundbiomesconstructs-").or(contains("undergroundbiomes-"))),
|
||||
WITCHERY("Witchery", false, contains("witchery-")),
|
||||
WORLDEDIT("WorldEdit", false, contains("worldedit-")),
|
||||
;
|
||||
|
||||
@Getter
|
||||
private final String modName;
|
||||
@Getter
|
||||
private final boolean loadInDevelopment;
|
||||
@Getter
|
||||
private final Predicate<String> condition;
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return modName;
|
||||
}
|
||||
}
|
||||
-1
@@ -2,7 +2,6 @@
|
||||
"required": true,
|
||||
"minVersion": "0.8.5",
|
||||
"package": "com.falsepattern.endlessids.mixin.mixins",
|
||||
"plugin": "com.falsepattern.endlessids.mixin.plugin.MixinPlugin",
|
||||
"refmap": "mixins.endlessids.refmap.json",
|
||||
"target": "@env(DEFAULT)",
|
||||
"compatibilityLevel": "JAVA_8"
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"required": true,
|
||||
"minVersion": "0.8.5",
|
||||
"package": "com.falsepattern.endlessids.mixin.mixins",
|
||||
"refmap": "mixins.endlessids.refmap.json",
|
||||
"target": "@env(DEFAULT)",
|
||||
"compatibilityLevel": "JAVA_8"
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user