Skip to content

Commit cca266c

Browse files
authored
1.3
1 parent ef136a7 commit cca266c

File tree

9 files changed

+285
-37
lines changed

9 files changed

+285
-37
lines changed

build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ repositories {
2424
dependencies {
2525
// Fabric
2626
minecraft "com.mojang:minecraft:${project.minecraft_version}"
27-
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
27+
mappings "net.fabricmc:yarn:${project.yarn_version}:v2"
2828
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
2929

3030
// Meteor
31-
modImplementation "meteordevelopment:meteor-client:${project.meteor_version}"
32-
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
31+
modImplementation("meteordevelopment:meteor-client:SNAPSHOT")
32+
modImplementation("net.fabricmc.fabric-api:fabric-api:0.55.3+1.19")
3333
}
3434

3535
processResources {
@@ -71,6 +71,7 @@ jar {
7171
}
7272
}
7373

74+
7475
// configure the maven publication
7576
publishing {
7677
publications {

gradle.properties

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
# Done to increase the memory available to gradle.
22
org.gradle.jvmargs=-Xmx1G
3+
34
# Fabric Properties
4-
# check these on https://modmuss50.me/fabric.html
5-
minecraft_version=1.18.2
6-
yarn_mappings=1.18.2+build.2
7-
loader_version=0.13.3
5+
minecraft_version=1.19
6+
yarn_version=1.19+build.1
7+
loader_version=0.14.7
8+
89
# Mod Properties
9-
mod_version=1.1
10+
mod_version=1.3
1011
maven_group=zgoly
11-
archives_base_name=meteorist
12-
# Dependencies
13-
# check this on https://modmuss50.me/fabric.html
14-
meteor_version=SNAPSHOT
15-
fabric_version=0.48.0+1.18.2
12+
archives_base_name=meteorist

src/main/java/zgoly/meteorist/Meteorist.java

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,32 +12,25 @@
1212
import org.slf4j.Logger;
1313
import org.slf4j.LoggerFactory;
1414

15-
import java.io.BufferedReader;
16-
import java.io.File;
17-
import java.io.InputStream;
1815
import java.lang.invoke.MethodHandles;
19-
import java.net.URL;
20-
import java.nio.file.Path;
21-
import java.nio.file.Paths;
22-
import java.util.Objects;
23-
import java.io.IOException; import java.nio.file.Files;
24-
25-
import static meteordevelopment.meteorclient.MeteorClient.mc;
2616

2717
public class Meteorist extends MeteorAddon {
2818
public static final Logger LOG = LoggerFactory.getLogger("Meteorist");
2919
public static final Category CATEGORY = new Category("Meteorist", Items.DIRT.getDefaultStack());
3020

3121
@Override
3222
public void onInitialize() {
33-
LOG.info("Meteorist here!");
23+
LOG.info("Meteorist successfully stole your IP, credit card information, your residential address and CornHub login/password.");
3424
MeteorClient.EVENT_BUS.registerLambdaFactory("zgoly.meteorist", (lookupInMethod, klass) -> (MethodHandles.Lookup) lookupInMethod.invoke(null, klass, MethodHandles.lookup()));
3525
// Modules
3626
Modules.get().add(new AutoFeed());
27+
Modules.get().add(new AutoFloor());
3728
Modules.get().add(new AutoHeal());
3829
Modules.get().add(new AutoLeave());
3930
Modules.get().add(new AutoLogin());
31+
Modules.get().add(new AutoFloor());
4032
Modules.get().add(new ContainerCleaner());
33+
Modules.get().add(new AutoLight());
4134
Modules.get().add(new HighJump());
4235
Modules.get().add(new ItemSucker());
4336
Modules.get().add(new JumpFlight());
@@ -51,4 +44,4 @@ public void onInitialize() {
5144
public void onRegisterCategories() {
5245
Modules.registerCategory(CATEGORY);
5346
}
54-
}
47+
}

src/main/java/zgoly/meteorist/commands/Coordinates.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import meteordevelopment.meteorclient.systems.commands.Command;
66
import net.minecraft.client.toast.SystemToast;
77
import net.minecraft.command.CommandSource;
8-
import net.minecraft.text.LiteralText;
8+
import net.minecraft.text.Text;
99

1010
import static com.mojang.brigadier.Command.SINGLE_SUCCESS;
1111

@@ -20,9 +20,13 @@ public void build(LiteralArgumentBuilder<CommandSource> builder) {
2020
String s = ", ";
2121
String pos = mc.player.getBlockPos().getX() + s + mc.player.getBlockPos().getY() + s + mc.player.getBlockPos().getZ();
2222
mc.keyboard.setClipboard(pos);
23-
mc.getToastManager().add(new SystemToast(SystemToast.Type.TUTORIAL_HINT,
24-
new LiteralText("Coordinates copied"), new LiteralText("Paste, using Ctrl + V")));
23+
mc.getToastManager().add(new SystemToast(SystemToast.Type.TUTORIAL_HINT, Text.of("Coordinates copied"), Text.of("Paste, using Ctrl + V")));
2524
return SINGLE_SUCCESS;
2625
});
26+
builder.then(literal("share_in_chat").executes(context -> {
27+
String s = ", ";
28+
mc.player.sendChatMessage("Coordinates: " + mc.player.getBlockPos().getX() + s + mc.player.getBlockPos().getY() + s + mc.player.getBlockPos().getZ());
29+
return SINGLE_SUCCESS;
30+
}));
2731
}
2832
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
//By Zgoly
2+
package zgoly.meteorist.modules;
3+
4+
import meteordevelopment.meteorclient.events.world.TickEvent;
5+
import meteordevelopment.meteorclient.settings.*;
6+
import meteordevelopment.meteorclient.systems.modules.Module;
7+
import meteordevelopment.meteorclient.utils.player.FindItemResult;
8+
import meteordevelopment.meteorclient.utils.player.InvUtils;
9+
import meteordevelopment.meteorclient.utils.world.BlockUtils;
10+
import meteordevelopment.orbit.EventHandler;
11+
import net.minecraft.block.Block;
12+
import net.minecraft.block.Blocks;
13+
import net.minecraft.util.math.BlockPos;
14+
import zgoly.meteorist.Meteorist;
15+
16+
import java.util.List;
17+
18+
public class AutoFloor extends Module {
19+
20+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
21+
private final SettingGroup sgRange = settings.createGroup("Range");
22+
23+
private final Setting<List<Block>> blocks = sgGeneral.add(new BlockListSetting.Builder()
24+
.name("blocks")
25+
.description("Blocks to place.")
26+
.defaultValue(Blocks.COBBLESTONE)
27+
.build()
28+
);
29+
30+
private final Setting<Boolean> rotate = sgGeneral.add(new BoolSetting.Builder()
31+
.name("rotate")
32+
.description("Rotate camera?")
33+
.defaultValue(true)
34+
.build()
35+
);
36+
37+
private final Setting<Integer> hRange = sgRange.add(new IntSetting.Builder()
38+
.name("Horizontal range")
39+
.description("Range in which blocks will be placed.")
40+
.defaultValue(1)
41+
.min(1)
42+
.build()
43+
);
44+
45+
private final Setting<Integer> vRange = sgRange.add(new IntSetting.Builder()
46+
.name("Vertical range")
47+
.description("Distance after which blocks will be placed by \"Y\" axis")
48+
.defaultValue(1)
49+
.min(1)
50+
.build()
51+
);
52+
53+
public AutoFloor() {
54+
super(Meteorist.CATEGORY, "auto-floor", "Put blocks under you like \"scaffold\" module, but in range.");
55+
}
56+
57+
@EventHandler
58+
private void onTick(TickEvent.Pre event) {
59+
for (int x = -hRange.get(); x <= hRange.get(); x++) {
60+
for (int z = -hRange.get(); z <= hRange.get(); z++) {
61+
BlockPos pos = mc.player.getBlockPos().add(x, -vRange.get(), z);
62+
if (mc.world.getBlockState(pos).isAir()) {
63+
for (Block b : blocks.get()) {
64+
FindItemResult item = InvUtils.findInHotbar(b.asItem());
65+
BlockUtils.place(pos, item, rotate.get(), 0, true);
66+
}
67+
}
68+
}
69+
}
70+
}
71+
}

src/main/java/zgoly/meteorist/modules/AutoLeave.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import net.minecraft.entity.Entity;
1010
import net.minecraft.entity.player.PlayerEntity;
1111
import net.minecraft.network.packet.s2c.play.DisconnectS2CPacket;
12-
import net.minecraft.text.LiteralText;
12+
import net.minecraft.text.Text;
1313
import zgoly.meteorist.Meteorist;
1414

1515
public class AutoLeave extends Module {
@@ -69,7 +69,7 @@ private void onTick(TickEvent.Post event) {
6969
if (entity.getUuid() != mc.player.getUuid() && mc.player.distanceTo(entity) < range.get()) {
7070
if (ignoreFriends.get() && Friends.get().isFriend((PlayerEntity) entity)) return;
7171
if (mode.get() == Mode.Logout)
72-
mc.player.networkHandler.onDisconnect(new DisconnectS2CPacket(new LiteralText("[AutoLeave] Found player in radius.")));
72+
mc.player.networkHandler.onDisconnect(new DisconnectS2CPacket(Text.of("[AutoLeave] Found player in radius.")));
7373
else if (mode.get() == Mode.Command && !command.get().isEmpty()) mc.player.sendChatMessage(command.get());
7474
if (toggleOff.get()) this.toggle();
7575
}
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
//By Zgoly
2+
package zgoly.meteorist.modules;
3+
4+
import meteordevelopment.meteorclient.events.render.Render3DEvent;
5+
import meteordevelopment.meteorclient.events.world.TickEvent;
6+
import meteordevelopment.meteorclient.renderer.ShapeMode;
7+
import meteordevelopment.meteorclient.settings.*;
8+
import meteordevelopment.meteorclient.systems.modules.Module;
9+
import meteordevelopment.meteorclient.utils.player.FindItemResult;
10+
import meteordevelopment.meteorclient.utils.player.InvUtils;
11+
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
12+
import meteordevelopment.meteorclient.utils.world.BlockUtils;
13+
import meteordevelopment.orbit.EventHandler;
14+
import net.minecraft.block.Block;
15+
import net.minecraft.block.Blocks;
16+
import net.minecraft.util.math.BlockPos;
17+
import zgoly.meteorist.Meteorist;
18+
19+
import java.util.List;
20+
21+
public class AutoLight extends Module {
22+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
23+
private final SettingGroup sgRange = settings.createGroup("Range");
24+
private final SettingGroup sgColor = settings.createGroup("Render");
25+
26+
private final Setting<List<Block>> blocks = sgGeneral.add(new BlockListSetting.Builder()
27+
.name("blocks")
28+
.description("Light blocks to check.")
29+
.defaultValue(Blocks.TORCH)
30+
.build()
31+
);
32+
33+
private final Setting<Boolean> place = sgGeneral.add(new BoolSetting.Builder()
34+
.name("place")
35+
.description("Place blocks.")
36+
.defaultValue(true)
37+
.build()
38+
);
39+
40+
private final Setting<Boolean> rotate = sgGeneral.add(new BoolSetting.Builder()
41+
.name("rotate")
42+
.description("Rotate camera.")
43+
.defaultValue(true)
44+
.visible(place::get)
45+
.build()
46+
);
47+
48+
private final Setting<Integer> range = sgRange.add(new IntSetting.Builder()
49+
.name("range")
50+
.description("Range to light source.")
51+
.defaultValue(4)
52+
.min(1)
53+
.build()
54+
);
55+
56+
private final Setting<Integer> gRange = sgRange.add(new IntSetting.Builder()
57+
.name("grid-range")
58+
.description("Grid range in blocks.")
59+
.defaultValue(13)
60+
.min(1)
61+
.build()
62+
);
63+
64+
private final Setting<Boolean> show = sgColor.add(new BoolSetting.Builder()
65+
.name("show")
66+
.description("Shows overlay of suggested places for light.")
67+
.defaultValue(true)
68+
.build()
69+
);
70+
71+
private final Setting<Boolean> dynHeight = sgColor.add(new BoolSetting.Builder()
72+
.name("dynamic-height")
73+
.description("Places light source on the ground.")
74+
.defaultValue(true)
75+
.build()
76+
);
77+
78+
private final Setting<SettingColor> sC1 = sgColor.add(new ColorSetting.Builder()
79+
.name("main-side-color")
80+
.description("The color of the sides of the blocks being rendered.")
81+
.defaultValue(new SettingColor(255, 0, 0, 40))
82+
.build()
83+
);
84+
85+
private final Setting<SettingColor> lC1 = sgColor.add(new ColorSetting.Builder()
86+
.name("main-line-color")
87+
.description("The color of the lines of the blocks being rendered.")
88+
.defaultValue(new SettingColor(255, 0, 0, 100))
89+
.build()
90+
);
91+
92+
private final Setting<SettingColor> sC2 = sgColor.add(new ColorSetting.Builder()
93+
.name("hologram-side-color")
94+
.description("The color of the sides of the blocks being rendered.")
95+
.defaultValue(new SettingColor(255, 255, 0, 40))
96+
.build()
97+
);
98+
99+
private final Setting<SettingColor> lC2 = sgColor.add(new ColorSetting.Builder()
100+
.name("hologram-line-color")
101+
.description("The color of the lines of the blocks being rendered.")
102+
.defaultValue(new SettingColor(255, 255, 0, 100))
103+
.build()
104+
);
105+
106+
public AutoLight() {
107+
super(Meteorist.CATEGORY, "auto-light", "Shows best place to place light source block.");
108+
}
109+
110+
boolean work = false;
111+
BlockPos finalPos = new BlockPos(0,0,0);
112+
BlockPos xP = new BlockPos(0,0,0);
113+
BlockPos xM = new BlockPos(0,0,0);
114+
BlockPos zP = new BlockPos(0,0,0);
115+
BlockPos zM = new BlockPos(0,0,0);
116+
117+
@Override
118+
public void onDeactivate() {
119+
work = false;
120+
}
121+
122+
@EventHandler
123+
private void onTick(TickEvent.Pre event) {
124+
for (int x = -range.get(); x <= range.get(); x++) {
125+
for (int y = -range.get(); y <= range.get(); y++) {
126+
for (int z = -range.get(); z <= range.get(); z++) {
127+
BlockPos pos = mc.player.getBlockPos().add(x, y, z);
128+
final Block block = mc.world.getBlockState(pos).getBlock();
129+
if (blocks.get().contains(block)) {
130+
finalPos = pos;
131+
xP = finalPos.add(gRange.get(), 0, 0);
132+
xM = finalPos.add(-gRange.get(), 0, 0);
133+
zP = finalPos.add(0, 0, gRange.get());
134+
zM = finalPos.add(0, 0, -gRange.get());
135+
136+
if (dynHeight.get()) {
137+
while (!mc.world.getBlockState(xP).isAir()) xP = xP.add(0, 1, 0);
138+
while (mc.world.getBlockState(xP.add(0, -1, 0)).isAir()) xP = xP.add(0, -1, 0);
139+
while (!mc.world.getBlockState(xM).isAir()) xM = xM.add(0, 1, 0);
140+
while (mc.world.getBlockState(xM.add(0, -1, 0)).isAir()) xM = xM.add(0, -1, 0);
141+
while (!mc.world.getBlockState(zP).isAir()) zP = zP.add(0, 1, 0);
142+
while (mc.world.getBlockState(zP.add(0, -1, 0)).isAir()) zP = zP.add(0, -1, 0);
143+
while (!mc.world.getBlockState(zM).isAir()) zM = zM.add(0, 1, 0);
144+
while (mc.world.getBlockState(zM.add(0, -1, 0)).isAir()) zM = zM.add(0, -1, 0);
145+
}
146+
147+
work = true;
148+
}
149+
if (place.get() & mc.world.getBlockState(pos).isAir()) {
150+
if (pos.toString().contains(xP.toString()) ||
151+
pos.toString().contains(xM.toString()) ||
152+
pos.toString().contains(zP.toString()) ||
153+
pos.toString().contains(zM.toString())) {
154+
for (Block b : blocks.get()) {
155+
FindItemResult item = InvUtils.findInHotbar(b.asItem());
156+
BlockUtils.place(pos, item, rotate.get(), 0, true);
157+
}
158+
}
159+
}
160+
}
161+
}
162+
}
163+
}
164+
165+
@EventHandler
166+
private void onRender(Render3DEvent event) {
167+
if (work && show.get()) {
168+
event.renderer.box(finalPos, sC1.get(), lC1.get(), ShapeMode.Both, 0);
169+
event.renderer.box(xP, sC2.get(), lC2.get(), ShapeMode.Both, 0);
170+
event.renderer.box(xM, sC2.get(), lC2.get(), ShapeMode.Both, 0);
171+
event.renderer.box(zP, sC2.get(), lC2.get(), ShapeMode.Both, 0);
172+
event.renderer.box(zM, sC2.get(), lC2.get(), ShapeMode.Both, 0);
173+
} else event.renderer.end();
174+
}
175+
}

0 commit comments

Comments
 (0)