Skip to content

Commit 4611771

Browse files
Update to 26.2
1 parent ffb4c8c commit 4611771

18 files changed

Lines changed: 47 additions & 43 deletions

File tree

annotation-processor/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import javax.lang.model.element.TypeElement;
2222
import javax.tools.Diagnostic;
2323

24+
import org.embeddedt.modernfix.annotation.IgnoreMixin;
2425
import org.fury_phoenix.mixinAp.config.MixinConfig;
2526

2627
@SupportedAnnotationTypes({"org.spongepowered.asm.mixin.Mixin", "org.embeddedt.modernfix.annotation.ClientOnlyMixin"})
@@ -69,17 +70,18 @@ public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment
6970

7071
private void processMixins(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
7172
for (TypeElement annotation : annotations) {
72-
Set<? extends Element> annotatedMixins = roundEnv.getElementsAnnotatedWith(annotation);
73+
List<TypeElement> annotatedMixins = roundEnv.getElementsAnnotatedWith(annotation)
74+
.stream()
75+
.map(TypeElement.class::cast)
76+
.filter(e -> e.getAnnotation(IgnoreMixin.class) == null)
77+
.collect(Collectors.toList());
7378

74-
Stream<TypeElement> mixinStream =
75-
annotatedMixins.stream()
76-
.map(TypeElement.class::cast);
79+
Stream<TypeElement> mixinStream = annotatedMixins.stream();
7780

7881
validateCommonMixins(annotation, mixinStream);
7982

8083
List<String> mixins =
8184
annotatedMixins.stream()
82-
.map(TypeElement.class::cast)
8385
.map(e -> processingEnv.getElementUtils().getBinaryName(e).toString())
8486
.collect(Collectors.toList());
8587

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
plugins {
2-
id("net.neoforged.moddev") version("2.0.140")
2+
id("net.neoforged.moddev") version("2.0.141")
33
id("me.modmuss50.mod-publish-plugin") version("1.1.0")
44
}
55

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ junit_version=5.10.0-M1
55
mixinextras_version=0.4.1
66

77
mod_id=modernfix
8-
minecraft_version=26.1.2
8+
minecraft_version=26.2
99
enabled_platforms=neoforge
10-
forge_version=26.1.2.73
10+
forge_version=26.2.0.2-beta
1111
parchment_version=2025.12.20
1212
parchment_mc_version=1.21.11
1313
refined_storage_version=4392788
@@ -18,7 +18,7 @@ ctm_version=5587515
1818
ldlib_version=5782845
1919
kubejs_version=2101.7.1-build.181
2020
rhino_version=2101.2.7-build.74
21-
supported_minecraft_versions=26.1
21+
supported_minecraft_versions=26.2
2222

2323
fabric_loader_version=0.16.10
2424
fabric_api_version=0.102.1+1.21.1

src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/world_screen_skipped/WorldSelectionListMixin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class WorldSelectionListMixin {
1818

1919
@Inject(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList$WorldListEntry;doDeleteWorld()V", ordinal = 0, shift = At.Shift.AFTER), cancellable = true)
2020
private void preventClosingCreateScreenAfterDelete(CallbackInfo ci) {
21-
if(minecraft.screen instanceof CreateWorldScreen)
21+
if(minecraft.gui.screen() instanceof CreateWorldScreen)
2222
ci.cancel();
2323
}
2424
}

src/main/java/org/embeddedt/modernfix/common/mixin/devenv/MinecraftMixin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class MinecraftMixin {
1616
* @reason avoid exception stacktrace being printed in dev
1717
*/
1818
@Overwrite
19-
private UserApiService createUserApiService(YggdrasilAuthenticationService yggdrasilAuthenticationService, GameConfig arg) {
19+
private static UserApiService createUserApiService(YggdrasilAuthenticationService yggdrasilAuthenticationService, GameConfig arg) {
2020
return UserApiService.OFFLINE;
2121
}
2222
}

src/main/java/org/embeddedt/modernfix/common/mixin/feature/measure_time/MinecraftMixin.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package org.embeddedt.modernfix.common.mixin.feature.measure_time;
22

33
import net.minecraft.client.Minecraft;
4-
import net.minecraft.client.gui.screens.Overlay;
4+
import net.minecraft.client.gui.Gui;
55
import org.embeddedt.modernfix.ModernFixClient;
66
import org.embeddedt.modernfix.annotation.ClientOnlyMixin;
7-
import org.jetbrains.annotations.Nullable;
7+
import org.spongepowered.asm.mixin.Final;
88
import org.spongepowered.asm.mixin.Mixin;
99
import org.spongepowered.asm.mixin.Shadow;
1010
import org.spongepowered.asm.mixin.injection.At;
@@ -16,11 +16,11 @@
1616
@ClientOnlyMixin
1717
public class MinecraftMixin {
1818
// TODO re-add datapack reload time measurement
19-
@Shadow @Nullable public Overlay overlay;
19+
@Shadow @Final public Gui gui;
2020

2121
@Inject(method = "tick", at = @At("HEAD"))
2222
private void onClientTick(CallbackInfo ci) {
23-
if(this.overlay == null && ModernFixClient.INSTANCE != null) {
23+
if(this.gui.screen() == null && ModernFixClient.INSTANCE != null) {
2424
ModernFixClient.INSTANCE.onGameLaunchFinish();
2525
}
2626
}

src/main/java/org/embeddedt/modernfix/common/mixin/perf/optimize_surface_rules/BiomeConditionSourceMixin.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import net.minecraft.resources.ResourceKey;
44
import net.minecraft.world.level.biome.Biome;
55
import net.minecraft.world.level.levelgen.SurfaceRules;
6+
import org.embeddedt.modernfix.annotation.IgnoreMixin;
67
import org.embeddedt.modernfix.world.gen.ExtendedSurfaceContext;
78
import org.spongepowered.asm.mixin.Final;
89
import org.spongepowered.asm.mixin.Mixin;
@@ -15,6 +16,7 @@
1516
import java.util.Set;
1617

1718
@Mixin(SurfaceRules.BiomeConditionSource.class)
19+
@IgnoreMixin
1820
public class BiomeConditionSourceMixin {
1921
@Shadow
2022
@Final

src/main/java/org/embeddedt/modernfix/common/mixin/perf/optimize_surface_rules/NoiseBasedChunkGeneratorMixin.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import net.minecraft.world.level.chunk.LevelChunkSection;
1212
import net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator;
1313
import net.minecraft.world.level.levelgen.RandomState;
14+
import org.embeddedt.modernfix.annotation.IgnoreMixin;
1415
import org.embeddedt.modernfix.chunk.ExtendedPalettedContainer;
1516
import org.embeddedt.modernfix.world.gen.ExtendedSurfaceContext;
1617
import org.spongepowered.asm.mixin.Mixin;
@@ -22,6 +23,7 @@
2223
import java.util.Set;
2324

2425
@Mixin(NoiseBasedChunkGenerator.class)
26+
@IgnoreMixin
2527
public class NoiseBasedChunkGeneratorMixin {
2628
@SuppressWarnings("unchecked")
2729
private static void mfix$accumulate(Set<ResourceKey<Biome>> chunkBiomes, LevelChunkSection section) {

src/main/java/org/embeddedt/modernfix/common/mixin/perf/optimize_surface_rules/SurfaceRulesContextMixin.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
import net.minecraft.resources.ResourceKey;
44
import net.minecraft.world.level.biome.Biome;
55
import net.minecraft.world.level.levelgen.SurfaceRules;
6+
import org.embeddedt.modernfix.annotation.IgnoreMixin;
67
import org.embeddedt.modernfix.world.gen.ExtendedSurfaceContext;
78
import org.jetbrains.annotations.Nullable;
89
import org.spongepowered.asm.mixin.Mixin;
910

1011
import java.util.Set;
1112

1213
@Mixin(SurfaceRules.Context.class)
14+
@IgnoreMixin
1315
public class SurfaceRulesContextMixin implements ExtendedSurfaceContext {
1416
@Nullable Set<ResourceKey<Biome>> mfix$possibleBiomes;
1517

src/main/java/org/embeddedt/modernfix/common/mixin/perf/optimize_surface_rules/SurfaceSystemMixin.java

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import com.llamalad7.mixinextras.sugar.ref.LocalRef;
66
import net.minecraft.core.BlockPos;
77
import net.minecraft.core.Holder;
8-
import net.minecraft.core.Registry;
98
import net.minecraft.world.level.biome.Biome;
109
import net.minecraft.world.level.biome.BiomeManager;
1110
import net.minecraft.world.level.chunk.BlockColumn;
@@ -16,7 +15,6 @@
1615
import net.minecraft.world.level.levelgen.SurfaceSystem;
1716
import net.minecraft.world.level.levelgen.WorldGenerationContext;
1817
import org.embeddedt.modernfix.world.gen.ChunkBiomeLookup;
19-
import org.embeddedt.modernfix.world.gen.ExtendedSurfaceContext;
2018
import org.embeddedt.modernfix.world.gen.PrefetchingBlockColumn;
2119
import org.spongepowered.asm.mixin.Mixin;
2220
import org.spongepowered.asm.mixin.injection.At;
@@ -25,14 +23,15 @@
2523
import org.spongepowered.asm.mixin.injection.Redirect;
2624
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
2725

26+
import java.util.Set;
2827
import java.util.function.Function;
2928

3029
@Mixin(value = SurfaceSystem.class, priority = 2000)
3130
public class SurfaceSystemMixin {
3231
private static final ThreadLocal<ChunkBiomeLookup> MFIX_LOOKUP_CACHE = ThreadLocal.withInitial(ChunkBiomeLookup::new);
3332
private static final ThreadLocal<PrefetchingBlockColumn> MFIX_BLOCK_COLUMN = new ThreadLocal<>();
3433

35-
@ModifyArg(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;<init>(Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)V"), index = 4)
34+
@ModifyArg(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;<init>(Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;Ljava/util/Set;)V"), index = 4)
3635
private Function<BlockPos, Holder<Biome>> useFasterLookup(Function<BlockPos, Holder<Biome>> biomeGetter,
3736
@Local(ordinal = 0, argsOnly = true) BiomeManager manager,
3837
@Local(ordinal = 0, argsOnly = true) ChunkAccess chunk,
@@ -44,13 +43,8 @@ private Function<BlockPos, Holder<Biome>> useFasterLookup(Function<BlockPos, Hol
4443
return lookup;
4544
}
4645

47-
@Inject(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;apply(Ljava/lang/Object;)Ljava/lang/Object;", ordinal = 0))
48-
private void injectBiomesOnContext(CallbackInfo ci, @Local(ordinal = 0) SurfaceRules.Context surfacerules$context) {
49-
((ExtendedSurfaceContext)(Object) surfacerules$context).mfix$applyPossibleBiomes();
50-
}
51-
5246
@Inject(method = "buildSurface", at = @At("TAIL"))
53-
private void finishAndDisposeLookups(RandomState randomState, BiomeManager biomeManager, Registry<Biome> biomes, boolean p_224652_, WorldGenerationContext context, ChunkAccess chunk, NoiseChunk noiseChunk, SurfaceRules.RuleSource ruleSource, CallbackInfo ci) {
47+
private void finishAndDisposeLookups(RandomState randomState, BiomeManager biomeManager, boolean p_224652_, WorldGenerationContext context, ChunkAccess chunk, NoiseChunk noiseChunk, SurfaceRules.RuleSource ruleSource, Set<Holder<Biome>> possibleBiomes, CallbackInfo ci) {
5448
MFIX_LOOKUP_CACHE.get().dispose();
5549
var column = MFIX_BLOCK_COLUMN.get();
5650
if (column != null) {
@@ -63,7 +57,7 @@ private Holder<Biome> useFasterLookup(BiomeManager instance, BlockPos pos, @Shar
6357
return lookupRef.get().apply(pos);
6458
}
6559

66-
@Inject(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;<init>(Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)V"))
60+
@Inject(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;<init>(Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;Ljava/util/Set;)V"))
6761
private void captureRealBlockColumn(CallbackInfo ci, @Local(ordinal = 0) LocalRef<BlockColumn> column,
6862
@Local(ordinal = 0, argsOnly = true) ChunkAccess chunk,
6963
@Share("prefetchColumn") LocalRef<PrefetchingBlockColumn> prefetchRef) {
@@ -77,8 +71,8 @@ private void captureRealBlockColumn(CallbackInfo ci, @Local(ordinal = 0) LocalRe
7771
}
7872

7973
@Inject(method = "buildSurface", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos$MutableBlockPos;setZ(I)Lnet/minecraft/core/BlockPos$MutableBlockPos;", ordinal = 0, shift = At.Shift.AFTER))
80-
private void prefetchBlockArray(RandomState randomState, BiomeManager biomeManager, Registry<Biome> biomes, boolean p_224652_,
81-
WorldGenerationContext context, ChunkAccess chunk, NoiseChunk noiseChunk, SurfaceRules.RuleSource ruleSource, CallbackInfo ci,
74+
private void prefetchBlockArray(RandomState randomState, BiomeManager biomeManager, boolean p_224652_,
75+
WorldGenerationContext context, ChunkAccess chunk, NoiseChunk noiseChunk, SurfaceRules.RuleSource ruleSource, Set<Holder<Biome>> possibleBiomes, CallbackInfo ci,
8276
@Local(ordinal = 0) BlockColumn column,
8377
@Local(ordinal = 0) BlockPos.MutableBlockPos cursor) {
8478
((PrefetchingBlockColumn)column).prefetch(chunk, cursor.getX() & 15, cursor.getZ() & 15);

0 commit comments

Comments
 (0)