Skip to content
This repository has been archived by the owner on Apr 11, 2024. It is now read-only.

Commit

Permalink
base addon working
Browse files Browse the repository at this point in the history
  • Loading branch information
Fdr3iZzz committed Apr 11, 2024
1 parent 5ce4c64 commit b1d4d48
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 6 deletions.
2 changes: 1 addition & 1 deletion src/main/java/de/franz/addon/Addon.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,6 @@ public void onRegisterCategories() {

@Override
public String getPackage() {
return "com.franz.addon";
return "de.franz.addon";
}
}
68 changes: 63 additions & 5 deletions src/main/java/de/franz/addon/modules/AutoWalkInLine.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,30 +8,88 @@
import meteordevelopment.orbit.EventHandler;

public class AutoWalkInLine extends Module {
private int tickCounter = 0;

public AutoWalkInLine() {
super(Addon.CATEGORY, "Auto Walk in line", "Walk back and forth in a straight line");
}

@Override
public void onActivate() {

// correct looking direction
setYawAngle(getNormedYawDirection());
setPitchAngle(0f);
}

@Override
public void onDeactivate() {
unpress();
}

@EventHandler
private void onTick(TickEvent.Pre event) {
// correct looking direction
setYawAngle(getNormedYawDirection());
setPitchAngle(0f);

// walk
setPressed(mc.options.forwardKey, true);
// time or block threshold
tickCounter++;
if (tickCounter % 320 == 0) {
if (tickCounter == 320*500) {
tickCounter = 0;
}
turnAround();
}
}

/**
* helper class to press a key
*
* @param key
* @param pressed
*/
private void setPressed(KeyBinding key, boolean pressed) {
key.setPressed(pressed);
Input.setKeyState(key, pressed);
}

/**
* get yaw as float to align straight
*
* @return
*/
private float getNormedYawDirection() {
assert mc.player != null;
return Math.round((mc.player.getYaw() + 1f) / 90f) * 90f;
}
private void setPitchAngle(float pitchAngle) {
assert mc.player != null;
mc.player.setPitch(pitchAngle);
}
private void setYawAngle(float yawAngle) {
assert mc.player != null;
mc.player.setYaw(yawAngle);
mc.player.headYaw = yawAngle;
mc.player.bodyYaw = yawAngle;
}
/**
* make 1 180 turn
*/
private void turnAround() {
assert mc.player != null;
float yawAngle = mc.player.getYaw();
setYawAngle((yawAngle + 180) % 360);
}
/**
* stop walking
*/
private void unpress() {
setPressed(mc.options.forwardKey, false);
setPressed(mc.options.backKey, false);
setPressed(mc.options.leftKey, false);
setPressed(mc.options.rightKey, false);
}
private void setPressed(KeyBinding key, boolean pressed) {
key.setPressed(pressed);
Input.setKeyState(key, pressed);
tickCounter = 0;
}
}

0 comments on commit b1d4d48

Please sign in to comment.