Skip to content

Commit

Permalink
main hand is default interaction hand
Browse files Browse the repository at this point in the history
  • Loading branch information
rfresh2 committed Jan 30, 2025
1 parent 272345f commit 22f36bf
Showing 1 changed file with 120 additions and 3 deletions.
123 changes: 120 additions & 3 deletions src/main/java/com/zenith/feature/world/Input.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@AllArgsConstructor(access = AccessLevel.PROTECTED)
@NoArgsConstructor
public class Input {
public boolean pressingForward;
public boolean pressingBack;
Expand All @@ -18,7 +18,11 @@ public class Input {
public boolean sprinting;
public boolean leftClick;
public boolean rightClick;
public boolean clickMainHand;
public boolean clickMainHand = true;

public static Builder builder() {
return new Builder();
}

public Input(Input in) {
this(in.pressingForward, in.pressingBack, in.pressingLeft, in.pressingRight, in.jumping, in.sneaking, in.sprinting, in.leftClick, in.rightClick, in.clickMainHand);
Expand Down Expand Up @@ -56,4 +60,117 @@ public void reset() {
rightClick = false;
clickMainHand = true;
}

public String log() {
String out = "Input:";
// only log true values
if (pressingForward) {
out += " forward";
}
if (pressingBack) {
out += " back";
}
if (pressingLeft) {
out += " left";
}
if (pressingRight) {
out += " right";
}
if (jumping) {
out += " jump";
}
if (sneaking) {
out += " sneak";
}
if (sprinting) {
out += " sprint";
}


// but if none are true, log that
if (out.equals("Input:")) {
out += " none";
}
return out;
}

public static final class Builder {
private boolean pressingForward;
private boolean pressingBack;
private boolean pressingLeft;
private boolean pressingRight;
private boolean jumping;
private boolean sneaking;
private boolean sprinting;
private boolean leftClick;
private boolean rightClick;
private boolean clickMainHand = true;

private Builder() {}

public Builder pressingForward(boolean pressingForward) {
this.pressingForward = pressingForward;
return this;
}

public Builder pressingBack(boolean pressingBack) {
this.pressingBack = pressingBack;
return this;
}

public Builder pressingLeft(boolean pressingLeft) {
this.pressingLeft = pressingLeft;
return this;
}

public Builder pressingRight(boolean pressingRight) {
this.pressingRight = pressingRight;
return this;
}

public Builder jumping(boolean jumping) {
this.jumping = jumping;
return this;
}

public Builder sneaking(boolean sneaking) {
this.sneaking = sneaking;
return this;
}

public Builder sprinting(boolean sprinting) {
this.sprinting = sprinting;
return this;
}

public Builder leftClick(boolean leftClick) {
this.leftClick = leftClick;
return this;
}

public Builder rightClick(boolean rightClick) {
this.rightClick = rightClick;
return this;
}

public Builder clickMainHand(boolean clickMainHand) {
this.clickMainHand = clickMainHand;
return this;
}

public Input build() {
Input input = new Input();
input.setPressingForward(pressingForward);
input.setPressingBack(pressingBack);
input.setPressingLeft(pressingLeft);
input.setPressingRight(pressingRight);
input.setJumping(jumping);
input.setSneaking(sneaking);
input.setSprinting(sprinting);
input.setLeftClick(leftClick);
input.setRightClick(rightClick);
input.setClickMainHand(clickMainHand);
return input;
}
}
}

0 comments on commit 22f36bf

Please sign in to comment.