Skip to content

Commit

Permalink
[VirtualInput] Renamed VirtualSubticks to VirtualCamera, fixed format
Browse files Browse the repository at this point in the history
  • Loading branch information
ScribbleTAS committed Jan 6, 2024
1 parent 4b38957 commit 1b73117
Show file tree
Hide file tree
Showing 10 changed files with 115 additions and 122 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
import com.minecrafttas.tasmod.virtual.VirtualInput;
import com.minecrafttas.tasmod.virtual.VirtualKeyboard;
import com.minecrafttas.tasmod.virtual.VirtualMouse;
import com.minecrafttas.tasmod.virtual.VirtualSubticks;
import com.minecrafttas.tasmod.virtual.VirtualCamera;
import com.mojang.realmsclient.gui.ChatFormatting;
import com.mojang.realmsclient.util.Pair;

Expand Down Expand Up @@ -88,7 +88,7 @@ public class PlaybackControllerClient implements ClientPacketHandler {

private VirtualMouse mouse = new VirtualMouse();

private VirtualSubticks subticks = new VirtualSubticks();
private VirtualCamera subticks = new VirtualCamera();

public final File directory = new File(Minecraft.getMinecraft().mcDataDir.getAbsolutePath() + File.separator + "saves" + File.separator + "tasfiles");

Expand Down Expand Up @@ -379,7 +379,7 @@ public VirtualMouse addMouseToContainer(VirtualMouse mouse) {
* @param subticks Subticks to add
* @return Subticks to retrieve
*/
public VirtualSubticks addSubticksToContainer(VirtualSubticks subticks) {
public VirtualCamera addSubticksToContainer(VirtualCamera subticks) {
if (state == TASstate.RECORDING) {
this.subticks = subticks.clone();
} else if (state == TASstate.PLAYBACK) {
Expand Down Expand Up @@ -734,9 +734,9 @@ public static class TickInputContainer implements Serializable {

private VirtualMouse mouse;

private VirtualSubticks subticks;
private VirtualCamera subticks;

public TickInputContainer(int tick, VirtualKeyboard keyboard, VirtualMouse mouse, VirtualSubticks subticks) {
public TickInputContainer(int tick, VirtualKeyboard keyboard, VirtualMouse mouse, VirtualCamera subticks) {
this.tick = tick;
this.keyboard = keyboard;
this.mouse = mouse;
Expand All @@ -747,7 +747,7 @@ public TickInputContainer(int tick) {
this.tick = tick;
this.keyboard = new VirtualKeyboard();
this.mouse = new VirtualMouse();
this.subticks = new VirtualSubticks(0, 0);
this.subticks = new VirtualCamera(0, 0);
}

@Override
Expand All @@ -763,7 +763,7 @@ public VirtualMouse getMouse() {
return mouse;
}

public VirtualSubticks getSubticks() {
public VirtualCamera getSubticks() {
return subticks;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
import com.minecrafttas.tasmod.virtual.VirtualKeyboard;
import com.minecrafttas.tasmod.virtual.VirtualMouse;
import com.minecrafttas.tasmod.virtual.VirtualMouse.PathNode;
import com.minecrafttas.tasmod.virtual.VirtualSubticks;
import com.minecrafttas.tasmod.virtual.VirtualCamera;
import com.mojang.realmsclient.util.Pair;

/**
Expand Down Expand Up @@ -432,7 +432,7 @@ private List<PathNode> readPath(String section, int linenumber, VirtualMouse mou
return path;
}

private VirtualSubticks readSubtick(String section, int linenumber) throws IOException {
private VirtualCamera readSubtick(String section, int linenumber) throws IOException {
section = section.replace("Camera:", "");
String[] split=section.split(";");

Expand All @@ -446,7 +446,7 @@ private VirtualSubticks readSubtick(String section, int linenumber) throws IOExc
throw new IOException(split[0]+" or/and "+split[1]+" are not float numbers in line "+ linenumber);
}

return new VirtualSubticks(x, y);
return new VirtualCamera(x, y);
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@

import com.minecrafttas.tasmod.playback.PlaybackSerialiser;

public class VirtualSubticks implements Serializable{
public class VirtualCamera implements Serializable{
/**
*
*/
private static final long serialVersionUID = -2038332459318568985L;
private float pitch;
private float yaw;

public VirtualSubticks() {
public VirtualCamera() {
pitch = 0;
yaw = 0;
}

public VirtualSubticks(float pitch, float yaw) {
public VirtualCamera(float pitch, float yaw) {
this.pitch = pitch;
this.yaw = yaw;
}
Expand All @@ -31,8 +31,8 @@ public float getYaw() {
}

@Override
public VirtualSubticks clone() {
return new VirtualSubticks(pitch, yaw);
public VirtualCamera clone() {
return new VirtualCamera(pitch, yaw);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ public VirtualEvent(int keycode, boolean keystate) {
this.keystate = keystate;
}

public VirtualEvent(VirtualEvent event){
public VirtualEvent(VirtualEvent event) {
this.keycode = event.keycode;
this.keystate = event.keystate;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -397,10 +397,10 @@ public void unpressNext() {

// ======================================Subticks===========================================

VirtualSubticks currentSubtick = new VirtualSubticks(0, 0);
VirtualCamera currentSubtick = new VirtualCamera(0, 0);

public void updateSubtick(float pitch, float yaw) {
currentSubtick = TASmodClient.controller.addSubticksToContainer(new VirtualSubticks(pitch, yaw));
currentSubtick = TASmodClient.controller.addSubticksToContainer(new VirtualCamera(pitch, yaw));
}

public float getSubtickPitch() {
Expand Down Expand Up @@ -542,9 +542,9 @@ public class InputEvent {
public int tick;
public List<VirtualKeyboardEvent> keyboardevent;
public List<VirtualMouseEvent> mouseEvent;
public VirtualSubticks subticks;
public VirtualCamera subticks;

public InputEvent(int tick, List<VirtualKeyboardEvent> keyboardevent, List<VirtualMouseEvent> mouseEvent, VirtualSubticks subticks) {
public InputEvent(int tick, List<VirtualKeyboardEvent> keyboardevent, List<VirtualMouseEvent> mouseEvent, VirtualCamera subticks) {
this.tick = tick;
this.keyboardevent = keyboardevent;
this.mouseEvent = mouseEvent;
Expand Down
16 changes: 8 additions & 8 deletions src/main/java/com/minecrafttas/tasmod/virtual/VirtualKey2.java
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ private VirtualKey2(int keycode) {
this(keycode, null);
}

private VirtualKey2(int keycode, Character unicode){
private VirtualKey2(int keycode, Character unicode) {
this.keycode = keycode;
this.unicode = unicode;
}
Expand All @@ -161,7 +161,9 @@ public int getKeycode() {
return keycode;
}

public Character getUnicode() { return unicode; }
public Character getUnicode() {
return unicode;
}

public static Integer getKeycode(String keyname) {
VirtualKey2 key = get(keyname);
Expand All @@ -177,22 +179,20 @@ public static String getName(int keycode) {
return Integer.toString(keycode);
}

public static Character getUnicode(int keycode){
public static Character getUnicode(int keycode) {
VirtualKey2 key = get(keycode);
if(key!=null)
if (key != null)
return key.getUnicode();
return null;
}

public static Character getUnicode(String keyname){
public static Character getUnicode(String keyname) {
VirtualKey2 key = get(keyname);
if(key!=null)
if (key != null)
return key.getUnicode();
return null;
}



public static VirtualKey2 get(int keycode) {
for (VirtualKey2 key : values()) {
if (key.getKeycode() == keycode) {
Expand Down
110 changes: 54 additions & 56 deletions src/main/java/com/minecrafttas/tasmod/virtual/VirtualKeyboard2.java
Original file line number Diff line number Diff line change
@@ -1,43 +1,41 @@
package com.minecrafttas.tasmod.virtual;

import org.spongepowered.asm.mixin.Overwrite;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;

public class VirtualKeyboard2 extends VirtualPeripheral implements Serializable{
public class VirtualKeyboard2 extends VirtualPeripheral implements Serializable {

private List<Character> charList;
private List<Character> charList;

@Override
public void setPressed(int keycode, boolean keystate) {
if(keycode >= 0){ // Keyboard keys always have a keycode larger or equal than 0
super.setPressed(keycode, keystate);
}
}
@Override
public void setPressed(int keycode, boolean keystate) {
if (keycode >= 0) { // Keyboard keys always have a keycode larger or equal than 0
super.setPressed(keycode, keystate);
}
}

@Override
protected <T extends VirtualPeripheral> List<? extends VirtualEvent> getDifference(T nextPeripheral) {
List<VirtualKeyboardEvent> eventList = new ArrayList<>();
@Override
protected <T extends VirtualPeripheral> List<? extends VirtualEvent> getDifference(T nextPeripheral) {
List<VirtualKeyboardEvent> eventList = new ArrayList<>();

ConcurrentLinkedQueue<Character> chars = new ConcurrentLinkedQueue<>(charList);

/* Calculate symmetric difference */

/*
* Calculate unpressed keys
* this: W A S
* next: W S D
* -------------
* A <- unpressed
* */
this.pressedKeys.forEach(key -> {
if(!nextPeripheral.pressedKeys.contains(key)){
eventList.add(new VirtualKeyboardEvent(key, false, Character.MIN_VALUE));
}
});
/* Calculate symmetric difference */

/*
* Calculate unpressed keys
* this: W A S
* next: W S D
* -------------
* A <- unpressed
* */
this.pressedKeys.forEach(key -> {
if (!nextPeripheral.pressedKeys.contains(key)) {
eventList.add(new VirtualKeyboardEvent(key, false, Character.MIN_VALUE));
}
});

/*
Calculate pressed keys
Expand All @@ -46,11 +44,11 @@ protected <T extends VirtualPeripheral> List<? extends VirtualEvent> getDifferen
-------------
D <- pressed
*/
nextPeripheral.pressedKeys.forEach(key -> {
if(!this.pressedKeys.contains(key)){
eventList.add(new VirtualKeyboardEvent(key, true, chars.poll()));
}
});
nextPeripheral.pressedKeys.forEach(key -> {
if (!this.pressedKeys.contains(key)) {
eventList.add(new VirtualKeyboardEvent(key, true, chars.poll()));
}
});

/*
Add the rest of the characters as keyboard events.
Expand All @@ -62,28 +60,28 @@ protected <T extends VirtualPeripheral> List<? extends VirtualEvent> getDifferen
This makes it easier to write words when working only with the TASfile,
otherwise you'd either need to add a keycode for each char or write it in new lines
*/
while(!chars.isEmpty()){
eventList.add(new VirtualKeyboardEvent(VirtualKey2.ZERO.getKeycode(), true, chars.poll()));
}

return eventList;
}

public void addChar(char character){
charList.add(character);
}

private void clearCharacters(){
charList.clear();
}

public void clear(){
super.clearPressedKeys();
clearCharacters();
}

@Override
public String toString() {
return super.toString();
}
while (!chars.isEmpty()) {
eventList.add(new VirtualKeyboardEvent(VirtualKey2.ZERO.getKeycode(), true, chars.poll()));
}

return eventList;
}

public void addChar(char character) {
charList.add(character);
}

private void clearCharacters() {
charList.clear();
}

public void clear() {
super.clearPressedKeys();
clearCharacters();
}

@Override
public String toString() {
return super.toString();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ public VirtualKeyboardEvent(int keycode, boolean keystate, Character character)
super(keycode, keystate);
this.character = character;
}
public VirtualKeyboardEvent(VirtualEvent event, char character){

public VirtualKeyboardEvent(VirtualEvent event, char character) {
super(event);
this.character = character;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.minecrafttas.tasmod.virtual;

import java.io.Serializable;
import java.util.List;

public class VirtualMouse2 extends VirtualPeripheral implements Serializable {

Expand All @@ -10,5 +11,10 @@ public class VirtualMouse2 extends VirtualPeripheral implements Serializable {
public VirtualMouse2() {
// TODO Auto-generated constructor stub
}


@Override
protected <T extends VirtualPeripheral> List<? extends VirtualEvent> getDifference(T nextPeripheral) {
return null;
}

}
Loading

0 comments on commit 1b73117

Please sign in to comment.