Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.zeroeightsix.kami.module.modules.misc;
- import me.zeroeightsix.kami.module.Module;
- import me.zero.alpine.listener.EventHandler;
- import me.zeroeightsix.kami.util.Wrapper;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.client.Minecraft;
- import net.minecraft.client.gui.Gui;
- import net.minecraft.client.gui.ScaledResolution;
- import net.minecraft.client.renderer.GlStateManager;
- import net.minecraft.client.renderer.OpenGlHelper;
- import net.minecraft.client.settings.GameSettings;
- import net.minecraft.entity.Entity;
- import net.minecraft.inventory.IInventory;
- import net.minecraft.util.math.BlockPos;
- import net.minecraft.util.math.RayTraceResult;
- import net.minecraftforge.client.event.RenderGameOverlayEvent;
- import net.minecraftforge.fml.common.ObfuscationReflectionHelper;
- import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
- @Module.Info(name = "Debug-Crosshair", category = Module.Category.MISC)
- public class DebugCrosshair extends Module
- {
- @SubscribeEvent
- public void stopRegularCrosshair(final RenderGameOverlayEvent event) {
- if (this.getEnabled() && event.getType() == RenderGameOverlayEvent.ElementType.CROSSHAIRS) {
- event.setCanceled(true);
- final int width = new ScaledResolution(DebugCrosshair.mc).getScaledWidth();
- final int height = new ScaledResolution(DebugCrosshair.mc).getScaledHeight();
- final float zLevel = (float)ObfuscationReflectionHelper.getPrivateValue((Class)Gui.class, (Object)Globals.mc.ingameGUI, new String[] { "zLevel", "zLevel" });
- renderCrosshair(event.getPartialTicks(), width, height, zLevel);
- }
- }
- private boolean getEnabled() {
- }
- public static void renderCrosshair(final float partialTicks, final int width, final int height, final float zLevel) {
- final GameSettings gamesettings = DebugCrosshair.mc.gameSettings;
- if (gamesettings.thirdPersonView == 0) {
- if (DebugCrosshair.mc.playerController.isSpectator() && DebugCrosshair.mc.pointedEntity == null) {
- final RayTraceResult raytraceresult = DebugCrosshair.mc.objectMouseOver;
- if (raytraceresult == null || raytraceresult.typeOfHit != RayTraceResult.Type.BLOCK) {
- return;
- }
- final BlockPos blockpos = raytraceresult.getBlockPos();
- final IBlockState state = DebugCrosshair.mc.world.getBlockState(blockpos);
- if (!state.getBlock().hasTileEntity(state) || !(DebugCrosshair.mc.world.getTileEntity(blockpos) instanceof IInventory)) {
- return;
- }
- }
- if (!gamesettings.hideGUI) {
- GlStateManager.pushMatrix();
- GlStateManager.translate((float)(width / 2), (float)(height / 2), zLevel);
- final Entity entity = DebugCrosshair.mc.getRenderViewEntity();
- if (entity != null) {
- GlStateManager.rotate(((Entity) entity).prevRotationPitch + (entity.rotationPitch - entity.prevRotationPitch) * partialTicks, -1.0f, 0.0f, 0.0f);
- GlStateManager.rotate(entity.prevRotationYaw + (entity.rotationYaw - entity.prevRotationYaw) * partialTicks, 0.0f, 1.0f, 0.0f);
- GlStateManager.scale(-1.0f, -1.0f, -1.0f);
- OpenGlHelper.renderDirections(10);
- GlStateManager.popMatrix();
- }
- }
- }
- }
- private static Minecraft mc;
- private Wrapper Globals;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement