Skip to content

Commit 3e9808d

Browse files
authored
Merge pull request #3 from yyonezu/master
Suggest coords to avoid idiota
2 parents 652b57c + c8644e9 commit 3e9808d

1 file changed

Lines changed: 35 additions & 3 deletions

File tree

src/main/java/com/jelly/CaneBuilder/CaneBuilder.java

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.jelly.CaneBuilder.config.Config;
88
import com.jelly.CaneBuilder.features.Failsafe;
99
import com.jelly.CaneBuilder.processes.*;
10+
import com.jelly.CaneBuilder.structures.Coord;
1011
import com.jelly.CaneBuilder.utils.*;
1112
import javafx.util.Builder;
1213
import net.minecraft.client.Minecraft;
@@ -181,16 +182,17 @@ public static void startScript(ProcessModule processModule){
181182
isFastBreakOn = false;
182183
if(BuilderState.layer == 0){
183184
Utils.addCustomLog("Bozo set layer count");
185+
184186
return;
185187
}
186188
if(BuilderState.direction == 0){
187-
if ((Math.abs(BuilderState.corner1.getZ() - BuilderState.corner2.getZ()) + 1) % 3 != 0){
188-
Utils.addCustomLog("Bozo read #how-to-use and set the corners correctly");
189+
if ((Math.abs(BuilderState.corner1.getZ() - BuilderState.corner2.getZ()) + 1) % 3 != 0) {
190+
Utils.addCustomLog(suggestCoords(BuilderState.direction));
189191
return;
190192
}
191193
} else {
192194
if ((Math.abs(BuilderState.corner1.getX() - BuilderState.corner2.getX()) + 1) % 3 != 0){
193-
Utils.addCustomLog("Bozo read #how-to-use and set the corners correctly");
195+
Utils.addCustomLog(suggestCoords(BuilderState.direction));
194196
return;
195197
}
196198
}
@@ -240,7 +242,37 @@ public static void startScript(ProcessModule processModule){
240242
}
241243

242244

245+
private static String suggestCoords(int direction) {
246+
int corner1 = direction == 0 ? BuilderState.corner1.getZ() : BuilderState.corner1.getX();
247+
int corner2 = direction == 0 ? BuilderState.corner2.getZ() : BuilderState.corner2.getX();
248+
while ((Math.abs(corner1) + Math.abs(corner2) + 1) % 3 != 0) {
249+
if (Math.abs(corner1) < Math.abs(corner2)) {
250+
if (Math.abs(corner2) == 80) {
251+
if (corner1 == -80) {corner1 += 2; break;}
252+
else if (corner1 == 80) {corner1 -= 2;break;}
253+
}
254+
corner1 += Integer.signum(corner2);
255+
} else {
256+
if (Math.abs(corner1) == 80) {
257+
if (corner2 == -80) {corner2 += 2; break;}
258+
else if (corner2 == 80) {corner2 -= 2;break;}
259+
}
260+
corner2 += Integer.signum(corner2);
261+
}
262+
}
263+
Coord first;
264+
Coord second;
243265

266+
if (direction == 0) {
267+
first = new Coord(BuilderState.corner1.getX(), BuilderState.corner1.getY(), corner1);
268+
second = new Coord(BuilderState.corner2.getX(), BuilderState.corner2.getY(), corner2);
269+
} else {
270+
first = new Coord(corner1, BuilderState.corner1.getY(), BuilderState.corner1.getZ());
271+
second = new Coord(corner2, BuilderState.corner2.getY(), BuilderState.corner2.getZ());
272+
}
273+
274+
return ("Incorrect corners bozo, you should change them to §a" + first + " " + second + "§7. If you don't like these coords, check out #how-to-use and do it yourself");
275+
}
244276

245277
public static void disableScript() {
246278
BuilderState.enabled = false;

0 commit comments

Comments
 (0)