summaryrefslogtreecommitdiff
path: root/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/mixin/AbstractBlockStateMixin.java
blob: cba7c2489cad2f8f77221a70f547d4153075899e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/*
THIS FILE EXISTS AS AN ARCHIVE!!!!
Injecting into getLuminance causes TONS of weird crashes and issues related to world rendering
New logic is implemented in AbstractBlockMixin.java
 */
package com.arslaancodes.arslaansmagichax.mixin;

import com.arslaancodes.arslaansmagichax.ArslaansMagicHaxClient;
import net.minecraft.block.AbstractBlock.AbstractBlockState;
import net.minecraft.block.BlockState;
import net.minecraft.client.MinecraftClient;
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(AbstractBlockState.class)
public class AbstractBlockStateMixin {
    private static MinecraftClient mc = MinecraftClient.getInstance();

    @Inject(method = "getLuminance", at = @At("HEAD"), cancellable = true)
    private void onGetLuminance(CallbackInfoReturnable<Integer> cir) {
        AbstractBlockState state = (AbstractBlockState)(Object)this;

        if (mc.world != null && (ArslaansMagicHaxClient.xray.isEnabled() && ArslaansMagicHaxClient.xray.isInterestingBlock((BlockState) state) || ArslaansMagicHaxClient.fullbright.isEnabled())) {
            cir.setReturnValue(15);
        }
    }
}