Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
* Copyright (c) Meteor Development.
*/

package meteordevelopment.meteorclient.events.entity.player;

public class PlayerRespawnEvent {
private static final PlayerRespawnEvent INSTANCE = new PlayerRespawnEvent();

public static PlayerRespawnEvent get() {
return INSTANCE;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import meteordevelopment.meteorclient.MeteorClient;
import meteordevelopment.meteorclient.events.entity.EntityDestroyEvent;
import meteordevelopment.meteorclient.events.entity.player.PickItemsEvent;
import meteordevelopment.meteorclient.events.entity.player.PlayerRespawnEvent;
import meteordevelopment.meteorclient.events.game.GameJoinedEvent;
import meteordevelopment.meteorclient.events.game.GameLeftEvent;
import meteordevelopment.meteorclient.events.game.SendMessageEvent;
Expand Down Expand Up @@ -153,4 +154,9 @@ private void onSendChatMessage(String message, CallbackInfo ci) {
ci.cancel();
}
}

@Inject(method = "onPlayerRespawn", at = @At("TAIL"))
public void onPlayerRespawn(PlayerRespawnS2CPacket packet, CallbackInfo ci) {
MeteorClient.EVENT_BUS.post(PlayerRespawnEvent.get());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import meteordevelopment.meteorclient.utils.player.Rotations;
import meteordevelopment.meteorclient.utils.world.BlockUtils;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.orbit.EventHandler;
import net.minecraft.block.Block;
import net.minecraft.block.Blocks;
Expand Down Expand Up @@ -156,7 +155,7 @@ private void onTick(TickEvent.Pre event) {

// Bucket mode
else if (mode.get() == Mode.Place) {
PlacedItem placedItem1 = autoDimension.get() && PlayerUtils.getDimension() == Dimension.Nether ? PlacedItem.PowderSnow : placedItem.get();
PlacedItem placedItem1 = autoDimension.get() && mc.world.getDimension().ultrawarm() ? PlacedItem.PowderSnow : placedItem.get();
if (mc.player.fallDistance > 3 && !EntityUtils.isAboveWater(mc.player)) {
Item item = placedItem1.item;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

package meteordevelopment.meteorclient.systems.modules.render;

import meteordevelopment.meteorclient.events.entity.player.PlayerRespawnEvent;
import meteordevelopment.meteorclient.events.render.Render3DEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.settings.*;
Expand All @@ -13,7 +14,6 @@
import meteordevelopment.meteorclient.utils.misc.Pool;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.orbit.EventHandler;
import net.minecraft.world.dimension.DimensionType;

import java.util.ArrayDeque;
import java.util.Queue;
Expand Down Expand Up @@ -51,8 +51,6 @@ public class Breadcrumbs extends Module {

private Section section;

private DimensionType lastDimension;

public Breadcrumbs() {
super(Categories.Render, "breadcrumbs", "Displays a trail behind where you have walked.");
}
Expand All @@ -61,8 +59,6 @@ public Breadcrumbs() {
public void onActivate() {
section = sectionPool.get();
section.set1();

lastDimension = mc.world.getDimension();
}

@Override
Expand All @@ -72,12 +68,13 @@ public void onDeactivate() {
}

@EventHandler
private void onTick(TickEvent.Post event) {
if (lastDimension != mc.world.getDimension()) {
for (Section sec : sections) sectionPool.free(sec);
sections.clear();
}
private void onPlayerRespawn(PlayerRespawnEvent event) {
for (Section sec : sections) sectionPool.free(sec);
sections.clear();
}

@EventHandler
private void onTick(TickEvent.Post event) {
if (isFarEnough(section.x1, section.y1, section.z1)) {
section.set2();

Expand All @@ -90,8 +87,6 @@ private void onTick(TickEvent.Post event) {
section = sectionPool.get();
section.set1();
}

lastDimension = mc.world.getDimension();
}

@EventHandler
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
package meteordevelopment.meteorclient.systems.modules.render;

import meteordevelopment.meteorclient.events.entity.EntityAddedEvent;
import meteordevelopment.meteorclient.events.entity.player.PlayerRespawnEvent;
import meteordevelopment.meteorclient.events.render.Render2DEvent;
import meteordevelopment.meteorclient.events.render.Render3DEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
Expand All @@ -19,7 +20,6 @@
import meteordevelopment.meteorclient.utils.render.NametagUtils;
import meteordevelopment.meteorclient.utils.render.color.Color;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.orbit.EventHandler;
import net.minecraft.client.network.PlayerListEntry;
import net.minecraft.entity.Entity;
Expand Down Expand Up @@ -98,7 +98,6 @@ public class LogoutSpots extends Module {
private final List<PlayerEntity> lastPlayers = new ArrayList<>();

private int timer;
private Dimension lastDimension;

public LogoutSpots() {
super(Categories.Render, "logout-spots", "Displays a box where another player has logged out at.");
Expand All @@ -111,7 +110,6 @@ public void onActivate() {
updateLastPlayers();

timer = 10;
lastDimension = PlayerUtils.getDimension();
}

@Override
Expand All @@ -127,6 +125,11 @@ private void updateLastPlayers() {
}
}

@EventHandler
private void onPlayerRespawn(PlayerRespawnEvent event) {
players.clear();
}

@EventHandler
private void onEntityAdded(EntityAddedEvent event) {
if (event.entity instanceof PlayerEntity) {
Expand Down Expand Up @@ -169,10 +172,6 @@ private void onTick(TickEvent.Post event) {
} else {
timer--;
}

Dimension dimension = PlayerUtils.getDimension();
if (dimension != lastDimension) players.clear();
lastDimension = dimension;
}

private void add(Entry entry) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.misc.Pool;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.meteorclient.utils.world.Dir;
import meteordevelopment.orbit.EventHandler;
import net.minecraft.block.Block;
Expand All @@ -23,71 +21,72 @@
import net.minecraft.util.math.Direction;
import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.chunk.ChunkStatus;
import net.minecraft.world.dimension.DimensionTypes;

import java.util.ArrayList;
import java.util.List;

public class VoidESP extends Module {
private static final Direction[] SIDES = { Direction.EAST, Direction.NORTH, Direction.SOUTH, Direction.WEST };
private static final Direction[] SIDES = {Direction.EAST, Direction.NORTH, Direction.SOUTH, Direction.WEST};

private final SettingGroup sgGeneral = settings.getDefaultGroup();
private final SettingGroup sgRender = settings.createGroup("Render");

// General

private final Setting<Boolean> airOnly = sgGeneral.add(new BoolSetting.Builder()
.name("air-only")
.description("Checks bedrock only for air blocks.")
.defaultValue(false)
.build()
.name("air-only")
.description("Checks bedrock only for air blocks.")
.defaultValue(false)
.build()
);

private final Setting<Integer> horizontalRadius = sgGeneral.add(new IntSetting.Builder()
.name("horizontal-radius")
.description("Horizontal radius in which to search for holes.")
.defaultValue(64)
.min(0)
.sliderMax(256)
.build()
.name("horizontal-radius")
.description("Horizontal radius in which to search for holes.")
.defaultValue(64)
.min(0)
.sliderMax(256)
.build()
);

private final Setting<Integer> holeHeight = sgGeneral.add(new IntSetting.Builder()
.name("hole-height")
.description("The minimum hole height to be rendered.")
.defaultValue(1)
.min(1)
.sliderRange(1, 5)
.build()
.name("hole-height")
.description("The minimum hole height to be rendered.")
.defaultValue(1)
.min(1)
.sliderRange(1, 5)
.build()
);

private final Setting<Boolean> netherRoof = sgGeneral.add(new BoolSetting.Builder()
.name("nether-roof")
.description("Check for holes in nether roof.")
.defaultValue(true)
.build()
.name("nether-roof")
.description("Check for holes in nether roof.")
.defaultValue(true)
.build()
);

// Render

private final Setting<ShapeMode> shapeMode = sgRender.add(new EnumSetting.Builder<ShapeMode>()
.name("shape-mode")
.description("How the shapes are rendered.")
.defaultValue(ShapeMode.Both)
.build()
.name("shape-mode")
.description("How the shapes are rendered.")
.defaultValue(ShapeMode.Both)
.build()
);

private final Setting<SettingColor> sideColor = sgRender.add(new ColorSetting.Builder()
.name("fill-color")
.description("The color that fills holes in the void.")
.defaultValue(new SettingColor(225, 25, 25, 50))
.build()
.name("fill-color")
.description("The color that fills holes in the void.")
.defaultValue(new SettingColor(225, 25, 25, 50))
.build()
);

private final Setting<SettingColor> lineColor = sgRender.add(new ColorSetting.Builder()
.name("line-color")
.description("The color to draw lines of holes to the void.")
.defaultValue(new SettingColor(225, 25, 255))
.build()
.name("line-color")
.description("The color to draw lines of holes to the void.")
.defaultValue(new SettingColor(225, 25, 255))
.build()
);

private final BlockPos.Mutable blockPos = new BlockPos.Mutable();
Expand Down Expand Up @@ -121,7 +120,7 @@ private boolean isHole(BlockPos.Mutable blockPos, boolean nether) {
@EventHandler
private void onTick(TickEvent.Post event) {
voidHoles.clear();
if (PlayerUtils.getDimension() == Dimension.End) return;
if (mc.world.getDimensionKey() == DimensionTypes.THE_END) return;

int px = mc.player.getBlockPos().getX();
int pz = mc.player.getBlockPos().getZ();
Expand All @@ -130,10 +129,11 @@ private void onTick(TickEvent.Post event) {
for (int x = px - radius; x <= px + radius; x++) {
for (int z = pz - radius; z <= pz + radius; z++) {
blockPos.set(x, mc.world.getBottomY(), z);
if (isHole(blockPos, false)) voidHoles.add(voidHolePool.get().set(blockPos.set(x, mc.world.getBottomY(), z), false));
if (isHole(blockPos, false))
voidHoles.add(voidHolePool.get().set(blockPos.set(x, mc.world.getBottomY(), z), false));

// Check for nether roof
if (netherRoof.get() && PlayerUtils.getDimension() == Dimension.Nether) {
if (netherRoof.get() && mc.world.getDimensionKey() == DimensionTypes.THE_NETHER) {
blockPos.set(x, 127, z);
if (isHole(blockPos, true)) voidHoles.add(voidHolePool.get().set(blockPos.set(x, 127, z), true));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,19 @@

import it.unimi.dsi.fastutil.longs.Long2ObjectMap;
import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap;
import meteordevelopment.meteorclient.events.entity.player.PlayerRespawnEvent;
import meteordevelopment.meteorclient.events.render.Render3DEvent;
import meteordevelopment.meteorclient.events.world.BlockUpdateEvent;
import meteordevelopment.meteorclient.events.world.ChunkDataEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.renderer.ShapeMode;
import meteordevelopment.meteorclient.settings.*;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.Utils;
import meteordevelopment.meteorclient.utils.misc.UnorderedArrayList;
import meteordevelopment.meteorclient.utils.network.MeteorExecutor;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import meteordevelopment.meteorclient.utils.render.color.RainbowColors;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.orbit.EventHandler;
import net.minecraft.block.Block;
import net.minecraft.util.math.BlockPos;
Expand Down Expand Up @@ -80,8 +78,6 @@ public class BlockESP extends Module {
private final Long2ObjectMap<ESPChunk> chunks = new Long2ObjectOpenHashMap<>();
private final List<ESPGroup> groups = new UnorderedArrayList<>();

private Dimension lastDimension;

public BlockESP() {
super(Categories.Render, "block-esp", "Renders specified blocks through walls.");

Expand All @@ -98,8 +94,6 @@ public void onActivate() {
for (Chunk chunk : Utils.chunks()) {
searchChunk(chunk, null);
}

lastDimension = PlayerUtils.getDimension();
}

@Override
Expand Down Expand Up @@ -225,12 +219,8 @@ private void onBlockUpdate(BlockUpdateEvent event) {
}

@EventHandler
private void onPostTick(TickEvent.Post event) {
Dimension dimension = PlayerUtils.getDimension();

if (lastDimension != dimension) onActivate();

lastDimension = dimension;
private void onPlayerRespawn(PlayerRespawnEvent event) {
onActivate();
}

@EventHandler
Expand Down
Loading