Skip to content

Commit 9b0f17a

Browse files
committed
add license to KeyboardScreen and some code cleanup
1 parent 4978a6b commit 9b0f17a

File tree

6 files changed

+96
-95
lines changed

6 files changed

+96
-95
lines changed

src/main/java/de/srendi/advancedperipherals/client/ClientRegistry.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import de.srendi.advancedperipherals.client.renderer.DistanceDetectorRenderer;
77
import de.srendi.advancedperipherals.client.screens.InventoryManagerScreen;
88
import de.srendi.advancedperipherals.client.screens.KeyboardScreen;
9-
import de.srendi.advancedperipherals.client.screens.SaddleTurtleScreen;
9+
import de.srendi.advancedperipherals.client.screens.SaddleTurtleOverlay;
1010
import de.srendi.advancedperipherals.client.screens.SmartGlassesScreen;
1111
import de.srendi.advancedperipherals.client.smartglasses.OverlayModuleOverlay;
1212
import de.srendi.advancedperipherals.client.smartglasses.OverlayObjectHolder;
@@ -30,7 +30,7 @@ public class ClientRegistry {
3030

3131
private static final String[] TURTLE_MODELS = new String[]{"turtle_chat_box_upgrade_left", "turtle_chat_box_upgrade_right", "turtle_environment_upgrade_left", "turtle_environment_upgrade_right", "turtle_player_upgrade_left", "turtle_player_upgrade_right", "turtle_geoscanner_upgrade_left", "turtle_geoscanner_upgrade_right"};
3232

33-
public static final SaddleTurtleScreen SADDLE_TURTLE_OVERLAY = new SaddleTurtleScreen();
33+
public static final SaddleTurtleOverlay SADDLE_TURTLE_OVERLAY = new SaddleTurtleOverlay();
3434
public static final OverlayModuleOverlay OVERLAY_MODULE_OVERLAY = new OverlayModuleOverlay();
3535

3636
@SubscribeEvent
@@ -76,7 +76,7 @@ public static void registeringRenderers(EntityRenderersEvent.RegisterRenderers e
7676

7777
@SubscribeEvent
7878
public static void registeringOverlays(RegisterGuiOverlaysEvent event) {
79-
event.registerAboveAll(SaddleTurtleScreen.ID, SADDLE_TURTLE_OVERLAY);
79+
event.registerAboveAll(SaddleTurtleOverlay.ID, SADDLE_TURTLE_OVERLAY);
8080
event.registerAboveAll(OverlayModuleOverlay.ID, OVERLAY_MODULE_OVERLAY);
8181
}
8282
}

src/main/java/de/srendi/advancedperipherals/client/screens/KeyboardScreen.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
// SPDX-FileCopyrightText: 2021 The CC: Tweaked Developers
2+
// SPDX-FileCopyrightText: 2025 The AdvancedPeripheral Developers
3+
//
4+
// SPDX-License-Identifier: MPL-2.0
5+
16
package de.srendi.advancedperipherals.client.screens;
27

38
import com.mojang.blaze3d.platform.InputConstants;

src/main/java/de/srendi/advancedperipherals/client/screens/SaddleTurtleScreen.java renamed to src/main/java/de/srendi/advancedperipherals/client/screens/SaddleTurtleOverlay.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import net.minecraftforge.client.gui.overlay.ForgeGui;
1414
import net.minecraftforge.client.gui.overlay.IGuiOverlay;
1515

16-
public class SaddleTurtleScreen extends GuiComponent implements IGuiOverlay {
16+
public class SaddleTurtleOverlay extends GuiComponent implements IGuiOverlay {
1717
public static final String ID = "saddle_turtle_overlay";
1818

1919
private static final long ACTIVE_TIMEOUT = 5000;
@@ -27,7 +27,7 @@ public class SaddleTurtleScreen extends GuiComponent implements IGuiOverlay {
2727
private int barColor = 0;
2828
private long lastActived = 0;
2929

30-
public SaddleTurtleScreen() {}
30+
public SaddleTurtleOverlay() {}
3131

3232
protected Font getFont() {
3333
return this.gui.getMinecraft().font;
@@ -45,12 +45,12 @@ protected int textWidth(FormattedCharSequence text) {
4545
return getFont().width(text);
4646
}
4747

48-
public static boolean isPlayerControllingTurtle() {
48+
public boolean isPlayerControllingTurtle() {
4949
LocalPlayer player = Minecraft.getInstance().player;
5050
return player != null && player.getVehicle() instanceof TurtleSeatEntity;
5151
}
5252

53-
public static boolean isPlayerMountedOnTurtle() {
53+
public boolean isPlayerMountedOnTurtle() {
5454
LocalPlayer player = Minecraft.getInstance().player;
5555
return player != null && player.getRootVehicle() instanceof TurtleSeatEntity;
5656
}
@@ -59,7 +59,7 @@ public boolean shouldRenderFuelBar() {
5959
if (this.lastActived == 0) {
6060
return false;
6161
}
62-
if (!isPlayerMountedOnTurtle()) {
62+
if (!this.isPlayerMountedOnTurtle()) {
6363
this.hide();
6464
return false;
6565
}
@@ -138,7 +138,7 @@ private void renderDismountHint(PoseStack stack) {
138138

139139
@Override
140140
public void render(ForgeGui gui, PoseStack poseStack, float partialTick, int screenWidth, int screenHeight) {
141-
if (!isPlayerMountedOnTurtle()) {
141+
if (!this.isPlayerMountedOnTurtle()) {
142142
return;
143143
}
144144

@@ -149,7 +149,7 @@ public void render(ForgeGui gui, PoseStack poseStack, float partialTick, int scr
149149
if (this.shouldRenderFuelBar()) {
150150
this.renderFuelBar(poseStack);
151151
}
152-
if (isPlayerControllingTurtle()) {
152+
if (this.isPlayerControllingTurtle()) {
153153
this.renderDismountHint(poseStack);
154154
}
155155
}

src/main/java/de/srendi/advancedperipherals/common/entity/TurtleSeatEntity.java

Lines changed: 17 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -39,18 +39,8 @@ public class TurtleSeatEntity extends Entity implements HasCustomInventoryScreen
3939
private ITurtleAccess turtle = null;
4040
private int life = 0;
4141

42-
private boolean forwardKey = false;
43-
private boolean backKey = false;
44-
private boolean leftKey = false;
45-
private boolean rightKey = false;
46-
private boolean upKey = false;
47-
private boolean downKey = false;
48-
private boolean forwardKeyOld = false;
49-
private boolean backKeyOld = false;
50-
private boolean leftKeyOld = false;
51-
private boolean rightKeyOld = false;
52-
private boolean upKeyOld = false;
53-
private boolean downKeyOld = false;
42+
private InputKeySet inputs = InputKeySet.NONE;
43+
private InputKeySet oldInputs = InputKeySet.NONE;
5444

5545
public TurtleSeatEntity(EntityType<?> type, Level world) {
5646
super(type, world);
@@ -158,41 +148,31 @@ public void tick() {
158148
return;
159149
}
160150
ServerComputer computer = this.getServerComputer();
161-
if (computer != null) {
162-
if (this.forwardKey != this.forwardKeyOld) {
163-
this.forwardKeyOld = this.forwardKey;
164-
computer.queueEvent("saddle_control", new Object[]{"forward", this.forwardKey});
151+
if (computer != null && this.inputs != this.oldInputs) {
152+
if (this.inputs.forward() != this.oldInputs.forward()) {
153+
computer.queueEvent("saddle_control", new Object[]{"forward", this.inputs.forward()});
165154
}
166-
if (this.backKey != this.backKeyOld) {
167-
this.backKeyOld = this.backKey;
168-
computer.queueEvent("saddle_control", new Object[]{"back", this.backKey});
155+
if (this.inputs.back() != this.oldInputs.back()) {
156+
computer.queueEvent("saddle_control", new Object[]{"back", this.inputs.back()});
169157
}
170-
if (this.leftKey != this.leftKeyOld) {
171-
this.leftKeyOld = this.leftKey;
172-
computer.queueEvent("saddle_control", new Object[]{"left", this.leftKey});
158+
if (this.inputs.left() != this.oldInputs.left()) {
159+
computer.queueEvent("saddle_control", new Object[]{"left", this.inputs.left()});
173160
}
174-
if (this.rightKey != this.rightKeyOld) {
175-
this.rightKeyOld = this.rightKey;
176-
computer.queueEvent("saddle_control", new Object[]{"right", this.rightKey});
161+
if (this.inputs.right() != this.oldInputs.right()) {
162+
computer.queueEvent("saddle_control", new Object[]{"right", this.inputs.right()});
177163
}
178-
if (this.upKey != this.upKeyOld) {
179-
this.upKeyOld = this.upKey;
180-
computer.queueEvent("saddle_control", new Object[]{"up", this.upKey});
164+
if (this.inputs.up() != this.oldInputs.up()) {
165+
computer.queueEvent("saddle_control", new Object[]{"up", this.inputs.up()});
181166
}
182-
if (this.downKey != this.downKeyOld) {
183-
this.downKeyOld = this.downKey;
184-
computer.queueEvent("saddle_control", new Object[]{"down", this.downKey});
167+
if (this.inputs.down() != this.oldInputs.down()) {
168+
computer.queueEvent("saddle_control", new Object[]{"down", this.inputs.down()});
185169
}
170+
this.oldInputs = this.inputs;
186171
}
187172
}
188173

189174
public void handleSaddleTurtleControlPacket(SaddleTurtleControlPacket packet) {
190-
this.forwardKey = packet.forward;
191-
this.backKey = packet.back;
192-
this.leftKey = packet.left;
193-
this.rightKey = packet.right;
194-
this.upKey = packet.up;
195-
this.downKey = packet.down;
175+
this.inputs = packet.inputs;
196176
}
197177

198178
@Override

src/main/java/de/srendi/advancedperipherals/common/network/toserver/SaddleTurtleControlPacket.java

Lines changed: 8 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,20 @@
22

33
import de.srendi.advancedperipherals.common.entity.TurtleSeatEntity;
44
import de.srendi.advancedperipherals.common.network.base.IPacket;
5+
import de.srendi.advancedperipherals.common.util.InputKeySet;
56
import net.minecraft.network.FriendlyByteBuf;
67
import net.minecraft.server.level.ServerPlayer;
78
import net.minecraftforge.network.NetworkEvent;
89

910
public class SaddleTurtleControlPacket implements IPacket {
11+
public final InputKeySet inputs;
1012

11-
public final boolean forward;
12-
public final boolean back;
13-
public final boolean left;
14-
public final boolean right;
15-
public final boolean up;
16-
public final boolean down;
17-
18-
private static final byte FORWARD_BIT = 1 << 0;
19-
private static final byte BACK_BIT = 1 << 1;
20-
private static final byte LEFT_BIT = 1 << 2;
21-
private static final byte RIGHT_BIT = 1 << 3;
22-
private static final byte UP_BIT = 1 << 4;
23-
private static final byte DOWN_BIT = 1 << 5;
24-
25-
public SaddleTurtleControlPacket(boolean forward, boolean back, boolean left, boolean right, boolean up, boolean down) {
26-
this.forward = forward;
27-
this.back = back;
28-
this.left = left;
29-
this.right = right;
30-
this.up = up;
31-
this.down = down;
13+
public SaddleTurtleControlPacket(InputKeySet inputs) {
14+
this.inputs = inputs;
3215
}
3316

34-
private SaddleTurtleControlPacket(byte bits) {
35-
this((bits & FORWARD_BIT) != 0, (bits & BACK_BIT) != 0, (bits & LEFT_BIT) != 0, (bits & RIGHT_BIT) != 0, (bits & UP_BIT) != 0, (bits & DOWN_BIT) != 0);
17+
public SaddleTurtleControlPacket(boolean forward, boolean back, boolean left, boolean right, boolean up, boolean down) {
18+
this(new InputKeySet(forward, back, left, right, up, down));
3619
}
3720

3821
@Override
@@ -43,35 +26,12 @@ public void handle(NetworkEvent.Context context) {
4326
}
4427
}
4528

46-
private byte encodeToBits() {
47-
byte b = 0;
48-
if (this.forward) {
49-
b |= FORWARD_BIT;
50-
}
51-
if (this.back) {
52-
b |= BACK_BIT;
53-
}
54-
if (this.left) {
55-
b |= LEFT_BIT;
56-
}
57-
if (this.right) {
58-
b |= RIGHT_BIT;
59-
}
60-
if (this.up) {
61-
b |= UP_BIT;
62-
}
63-
if (this.down) {
64-
b |= DOWN_BIT;
65-
}
66-
return b;
67-
}
68-
6929
@Override
7030
public void encode(FriendlyByteBuf buffer) {
71-
buffer.writeByte(this.encodeToBits());
31+
buffer.writeByte(this.inputs.toBits());
7232
}
7333

7434
public static SaddleTurtleControlPacket decode(FriendlyByteBuf buffer) {
75-
return new SaddleTurtleControlPacket(buffer.readByte());
35+
return new SaddleTurtleControlPacket(InputKeySet.fromByte(buffer.readByte()));
7636
}
7737
}
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package de.srendi.advancedperipherals.common.util;
2+
3+
public record InputKeySet(
4+
boolean forward,
5+
boolean back,
6+
boolean left,
7+
boolean right,
8+
boolean up,
9+
boolean down
10+
) {
11+
public static final InputKeySet NONE = new InputKeySet(false, false, false, false, false, false);
12+
13+
private static final byte FORWARD_BIT = 1 << 0;
14+
private static final byte BACK_BIT = 1 << 1;
15+
private static final byte LEFT_BIT = 1 << 2;
16+
private static final byte RIGHT_BIT = 1 << 3;
17+
private static final byte UP_BIT = 1 << 4;
18+
private static final byte DOWN_BIT = 1 << 5;
19+
20+
public byte toByte() {
21+
byte b = 0;
22+
if (this.forward) {
23+
b |= FORWARD_BIT;
24+
}
25+
if (this.back) {
26+
b |= BACK_BIT;
27+
}
28+
if (this.left) {
29+
b |= LEFT_BIT;
30+
}
31+
if (this.right) {
32+
b |= RIGHT_BIT;
33+
}
34+
if (this.up) {
35+
b |= UP_BIT;
36+
}
37+
if (this.down) {
38+
b |= DOWN_BIT;
39+
}
40+
return b;
41+
}
42+
43+
public static InputKeySet fromByte(final byte bits) {
44+
if (bits == 0) {
45+
return InputKeySet.NONE;
46+
}
47+
return new InputKeySet(
48+
(bits & FORWARD_BIT) != 0,
49+
(bits & BACK_BIT) != 0,
50+
(bits & LEFT_BIT) != 0,
51+
(bits & RIGHT_BIT) != 0,
52+
(bits & UP_BIT) != 0,
53+
(bits & DOWN_BIT) != 0
54+
);
55+
}
56+
}

0 commit comments

Comments
 (0)