Compare commits
2 commits
84c1ae2a12
...
0b04e3f7e2
Author | SHA1 | Date | |
---|---|---|---|
0b04e3f7e2 | |||
4843b890de |
3 changed files with 56 additions and 14 deletions
src/main
java/lat/amy/fixsquared
resources
|
@ -1,34 +1,35 @@
|
|||
package lat.amy.fixsquared;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.common.collect.ImmutableListMultimap;
|
||||
import com.google.common.collect.ListMultimap;
|
||||
import com.gtnewhorizon.gtnhmixins.ILateMixinLoader;
|
||||
import com.gtnewhorizon.gtnhmixins.LateMixin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
@LateMixin
|
||||
public final class FixSquaredLate implements ILateMixinLoader {
|
||||
private static final Map<String, Set<String>> MIXINS = ImmutableMap.of(
|
||||
"Railcraft", ImmutableSet.of(
|
||||
private static final ListMultimap<String, String> MIXINS = ImmutableListMultimap.<String, String>builder()
|
||||
.putAll("Railcraft",
|
||||
"gtnh_railcraft_bf.ItemPlateMixin",
|
||||
"gtnh_railcraft_bf.ModuleFactoryMixin",
|
||||
"gtnh_railcraft_bf.ModuleSteamMixin",
|
||||
"gtnh_railcraft_bf.ModuleTransportMixin"),
|
||||
"LogisticsPipes", ImmutableSet.of(
|
||||
"logisticspipes_cull_resets.LogisticsPipesMixin"),
|
||||
"lwjgl3ify", ImmutableSet.of(
|
||||
"lwjgl3ify_silence_exclusions.Lwjgl3ifyMixin"),
|
||||
"OpenComputers", ImmutableSet.of(
|
||||
"opencomputers_gtnh_item.ModOpenComputersMixin"),
|
||||
"PowerConverters", ImmutableSet.of(
|
||||
"gtnh_railcraft_bf.ModuleTransportMixin")
|
||||
.putAll("LogisticsPipes",
|
||||
"logisticspipes_cull_resets.LogisticsPipesMixin")
|
||||
.putAll("lwjgl3ify",
|
||||
"lwjgl3ify_silence_exclusions.Lwjgl3ifyMixin")
|
||||
.putAll("OpenComputers",
|
||||
"opencomputers_gtnh_item.ModOpenComputersMixin")
|
||||
.putAll("PowerConverters",
|
||||
"powerconverters_buildcraft_recipe.RecipeBuildCraftMixin",
|
||||
"powerconverters_ic2_voltage.TileEntityIndustrialCraftConsumerMixin",
|
||||
"powerconverters_ic2_voltage.TileEntityIndustrialCraftProducerMixin")
|
||||
);
|
||||
.build();
|
||||
|
||||
@Override
|
||||
public String getMixinConfig() {
|
||||
|
@ -39,7 +40,7 @@ public final class FixSquaredLate implements ILateMixinLoader {
|
|||
public List<String> getMixins(final Set<String> loadedMods) {
|
||||
final List<String> mixins = new ArrayList<>();
|
||||
|
||||
for (final Map.Entry<String, Set<String>> entry: MIXINS.entrySet()) {
|
||||
for (final Map.Entry<String, Collection<String>> entry : MIXINS.asMap().entrySet()) {
|
||||
if (!loadedMods.contains(entry.getKey())) continue;
|
||||
|
||||
mixins.addAll(entry.getValue());
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
package lat.amy.fixsquared.mixin.delete_snooper;
|
||||
|
||||
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
|
||||
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
|
||||
import net.minecraft.profiler.PlayerUsageSnooper;
|
||||
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.CallbackInfo;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
|
||||
import java.util.Timer;
|
||||
|
||||
@Mixin(PlayerUsageSnooper.class)
|
||||
public abstract class PlayerUsageSnooperMixin {
|
||||
@WrapOperation(method = "<init>", at = @At(value = "NEW", target = "(Ljava/lang/String;Z)Ljava/util/Timer;"))
|
||||
private Timer init$newTimer(final String name, final boolean daemon, final Operation<Timer> original) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Inject(method = "startSnooper", at = @At("HEAD"), cancellable = true)
|
||||
private void startSnooper(final CallbackInfo ci) {
|
||||
ci.cancel();
|
||||
}
|
||||
|
||||
@Inject(method = "stopSnooper", at = @At("HEAD"), cancellable = true)
|
||||
private void stopSnooper(final CallbackInfo ci) {
|
||||
ci.cancel();
|
||||
}
|
||||
|
||||
@Inject(method = "isSnooperRunning", at = @At("HEAD"), cancellable = true)
|
||||
private void isSnooperRunning(final CallbackInfoReturnable<Boolean> ci) {
|
||||
ci.setReturnValue(true);
|
||||
}
|
||||
|
||||
@Inject(method = "addMemoryStatsToSnooper", at = @At("HEAD"), cancellable = true)
|
||||
private void addMemoryStatsToSnooper(final CallbackInfo ci) {
|
||||
ci.cancel();
|
||||
}
|
||||
}
|
|
@ -10,6 +10,7 @@
|
|||
"nvidia_gl_destroy.MinecraftMixin"
|
||||
],
|
||||
"mixins": [
|
||||
"delete_snooper.PlayerUsageSnooperMixin",
|
||||
"properly_detect_vanilla.NetworkDispatcherMixin"
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue