-
Notifications
You must be signed in to change notification settings - Fork 10
/
WorldRendererMixin.java
31 lines (25 loc) · 1.07 KB
/
WorldRendererMixin.java
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
31
package com.sinthoras.hydroenergy.mixins.minecraft;
import com.sinthoras.hydroenergy.client.renderer.HETessalator;
import net.minecraft.client.renderer.WorldRenderer;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
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.LocalCapture;
@Mixin(WorldRenderer.class)
public class WorldRendererMixin {
@Shadow
public int posX;
@Shadow
public int posY;
@Shadow
public int posZ;
// Update render cache about changes in rendered chunks
@Inject(method = "setPosition", at = @At("HEAD"), locals = LocalCapture.CAPTURE_FAILEXCEPTION, require = 1)
private void onSetPosition(int blockX, int blockY, int blockZ, CallbackInfo callbackInfo) {
if (blockX != posX || blockY != posY || blockZ != posZ) {
HETessalator.onRenderChunkUpdate(posX, posZ, blockX, blockY, blockZ);
}
}
}