fixing my dumbass bugs
This commit is contained in:
parent
2926f8b49b
commit
aba735dac0
@ -215,6 +215,7 @@ public class ControlHandler {
|
|||||||
movementTree.start();
|
movementTree.start();
|
||||||
}
|
}
|
||||||
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_FORWARD, true);
|
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_FORWARD, true);
|
||||||
|
//send to server
|
||||||
Vector3f position = EntityUtils.getEntityPosition(Globals.playerCharacter);
|
Vector3f position = EntityUtils.getEntityPosition(Globals.playerCharacter);
|
||||||
EntityMessage outgoingMessage = EntityMessage.constructMoveMessage(
|
EntityMessage outgoingMessage = EntityMessage.constructMoveMessage(
|
||||||
Globals.playerCharacter.getId(),
|
Globals.playerCharacter.getId(),
|
||||||
@ -241,6 +242,16 @@ public class ControlHandler {
|
|||||||
movementTree.start();
|
movementTree.start();
|
||||||
}
|
}
|
||||||
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_BACKWARD, true);
|
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_BACKWARD, true);
|
||||||
|
//send to server
|
||||||
|
Vector3f position = EntityUtils.getEntityPosition(Globals.playerCharacter);
|
||||||
|
EntityMessage outgoingMessage = EntityMessage.constructMoveMessage(
|
||||||
|
Globals.playerCharacter.getId(),
|
||||||
|
System.currentTimeMillis(),
|
||||||
|
position.x,
|
||||||
|
position.y,
|
||||||
|
position.z
|
||||||
|
);
|
||||||
|
Globals.clientConnection.queueOutgoingMessage(outgoingMessage);
|
||||||
} else {
|
} else {
|
||||||
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_BACKWARD) == true){
|
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_BACKWARD) == true){
|
||||||
movementTree.slowdown();
|
movementTree.slowdown();
|
||||||
@ -258,6 +269,16 @@ public class ControlHandler {
|
|||||||
movementTree.start();
|
movementTree.start();
|
||||||
}
|
}
|
||||||
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_LEFT, true);
|
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_LEFT, true);
|
||||||
|
//send to server
|
||||||
|
Vector3f position = EntityUtils.getEntityPosition(Globals.playerCharacter);
|
||||||
|
EntityMessage outgoingMessage = EntityMessage.constructMoveMessage(
|
||||||
|
Globals.playerCharacter.getId(),
|
||||||
|
System.currentTimeMillis(),
|
||||||
|
position.x,
|
||||||
|
position.y,
|
||||||
|
position.z
|
||||||
|
);
|
||||||
|
Globals.clientConnection.queueOutgoingMessage(outgoingMessage);
|
||||||
} else {
|
} else {
|
||||||
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_LEFT) == true){
|
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_LEFT) == true){
|
||||||
movementTree.slowdown();
|
movementTree.slowdown();
|
||||||
@ -275,6 +296,16 @@ public class ControlHandler {
|
|||||||
movementTree.start();
|
movementTree.start();
|
||||||
}
|
}
|
||||||
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_RIGHT, true);
|
controlsState.put(DATA_STRING_INPUT_CODE_MOVEMENT_RIGHT, true);
|
||||||
|
//send to server
|
||||||
|
Vector3f position = EntityUtils.getEntityPosition(Globals.playerCharacter);
|
||||||
|
EntityMessage outgoingMessage = EntityMessage.constructMoveMessage(
|
||||||
|
Globals.playerCharacter.getId(),
|
||||||
|
System.currentTimeMillis(),
|
||||||
|
position.x,
|
||||||
|
position.y,
|
||||||
|
position.z
|
||||||
|
);
|
||||||
|
Globals.clientConnection.queueOutgoingMessage(outgoingMessage);
|
||||||
} else {
|
} else {
|
||||||
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_RIGHT) == true){
|
if(controlsState.get(DATA_STRING_INPUT_CODE_MOVEMENT_RIGHT) == true){
|
||||||
movementTree.slowdown();
|
movementTree.slowdown();
|
||||||
|
|||||||
@ -285,7 +285,7 @@ public class Main {
|
|||||||
|
|
||||||
|
|
||||||
public static void initControlHandler(){
|
public static void initControlHandler(){
|
||||||
ControlHandler.generateExampleControlsMap();
|
// ControlHandler.generateExampleControlsMap();
|
||||||
Globals.controlHandler = Utilities.loadObjectFromBakedJsonFile("/Config/keybinds.json",ControlHandler.class);
|
Globals.controlHandler = Utilities.loadObjectFromBakedJsonFile("/Config/keybinds.json",ControlHandler.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -60,8 +60,11 @@ public class ClientProtocol {
|
|||||||
//literally just adding this to scope so I can use `` Entity target; `` again
|
//literally just adding this to scope so I can use `` Entity target; `` again
|
||||||
if(message.getentityID() != -1){
|
if(message.getentityID() != -1){
|
||||||
Entity target = Globals.entityManager.getEntityFromId(message.getentityID());
|
Entity target = Globals.entityManager.getEntityFromId(message.getentityID());
|
||||||
|
System.out.println("ID: " + message.getentityID());
|
||||||
|
if(target != null){
|
||||||
EntityUtils.getEntityPosition(target).set(message.getpositionX(),message.getpositionY(),message.getpositionZ());
|
EntityUtils.getEntityPosition(target).set(message.getpositionX(),message.getpositionY(),message.getpositionZ());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
// CreatureUtils.attachEntityMessageToMovementTree(Globals.entityManager.getEntityFromId(message.getId()),message);
|
// CreatureUtils.attachEntityMessageToMovementTree(Globals.entityManager.getEntityFromId(message.getId()),message);
|
||||||
break;
|
break;
|
||||||
case SETBEHAVIORTREE:
|
case SETBEHAVIORTREE:
|
||||||
|
|||||||
@ -2,10 +2,12 @@ package electrosphere.net.parser.util;
|
|||||||
|
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.concurrent.Semaphore;
|
||||||
|
|
||||||
public class ByteStreamUtils {
|
public class ByteStreamUtils {
|
||||||
|
|
||||||
static ByteBuffer integerCompactor;
|
static ByteBuffer integerCompactor;
|
||||||
|
static Semaphore bufferLock = new Semaphore(1);
|
||||||
|
|
||||||
static {
|
static {
|
||||||
integerCompactor = ByteBuffer.allocate(8);
|
integerCompactor = ByteBuffer.allocate(8);
|
||||||
@ -13,31 +15,44 @@ public class ByteStreamUtils {
|
|||||||
|
|
||||||
public static int popIntFromByteQueue(List<Byte> queue){
|
public static int popIntFromByteQueue(List<Byte> queue){
|
||||||
int rVal = -1;
|
int rVal = -1;
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
integerCompactor.put(0,queue.remove(0));
|
integerCompactor.put(0,queue.remove(0));
|
||||||
integerCompactor.put(1,queue.remove(0));
|
integerCompactor.put(1,queue.remove(0));
|
||||||
integerCompactor.put(2,queue.remove(0));
|
integerCompactor.put(2,queue.remove(0));
|
||||||
integerCompactor.put(3,queue.remove(0));
|
integerCompactor.put(3,queue.remove(0));
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
rVal = integerCompactor.getInt();
|
rVal = integerCompactor.getInt();
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static float popFloatFromByteQueue(List<Byte> queue){
|
public static float popFloatFromByteQueue(List<Byte> queue){
|
||||||
float rVal = -1;
|
float rVal = -1;
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
integerCompactor.put(0,queue.remove(0));
|
integerCompactor.put(0,queue.remove(0));
|
||||||
integerCompactor.put(1,queue.remove(0));
|
integerCompactor.put(1,queue.remove(0));
|
||||||
integerCompactor.put(2,queue.remove(0));
|
integerCompactor.put(2,queue.remove(0));
|
||||||
integerCompactor.put(3,queue.remove(0));
|
integerCompactor.put(3,queue.remove(0));
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
rVal = integerCompactor.getFloat();
|
rVal = integerCompactor.getFloat();
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static long popLongFromByteQueue(List<Byte> queue){
|
public static long popLongFromByteQueue(List<Byte> queue){
|
||||||
long rVal = -1;
|
long rVal = -1;
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(8);
|
||||||
integerCompactor.put(0,queue.remove(0));
|
integerCompactor.put(0,queue.remove(0));
|
||||||
integerCompactor.put(1,queue.remove(0));
|
integerCompactor.put(1,queue.remove(0));
|
||||||
integerCompactor.put(2,queue.remove(0));
|
integerCompactor.put(2,queue.remove(0));
|
||||||
@ -47,39 +62,55 @@ public class ByteStreamUtils {
|
|||||||
integerCompactor.put(6,queue.remove(0));
|
integerCompactor.put(6,queue.remove(0));
|
||||||
integerCompactor.put(7,queue.remove(0));
|
integerCompactor.put(7,queue.remove(0));
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(8);
|
||||||
rVal = integerCompactor.getLong();
|
rVal = integerCompactor.getLong();
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static byte[] serializeIntToBytes(int i){
|
public static byte[] serializeIntToBytes(int i){
|
||||||
byte[] rVal = new byte[4];
|
byte[] rVal = new byte[4];
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
integerCompactor.putInt(i);
|
integerCompactor.putInt(i);
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
rVal[0] = integerCompactor.get(0);
|
rVal[0] = integerCompactor.get(0);
|
||||||
rVal[1] = integerCompactor.get(1);
|
rVal[1] = integerCompactor.get(1);
|
||||||
rVal[2] = integerCompactor.get(2);
|
rVal[2] = integerCompactor.get(2);
|
||||||
rVal[3] = integerCompactor.get(3);
|
rVal[3] = integerCompactor.get(3);
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static byte[] serializeFloatToBytes(float i){
|
public static byte[] serializeFloatToBytes(float i){
|
||||||
byte[] rVal = new byte[4];
|
byte[] rVal = new byte[4];
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
integerCompactor.putFloat(i);
|
integerCompactor.putFloat(i);
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(4);
|
||||||
rVal[0] = integerCompactor.get(0);
|
rVal[0] = integerCompactor.get(0);
|
||||||
rVal[1] = integerCompactor.get(1);
|
rVal[1] = integerCompactor.get(1);
|
||||||
rVal[2] = integerCompactor.get(2);
|
rVal[2] = integerCompactor.get(2);
|
||||||
rVal[3] = integerCompactor.get(3);
|
rVal[3] = integerCompactor.get(3);
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static byte[] serializeLongToBytes(long i){
|
public static byte[] serializeLongToBytes(long i){
|
||||||
byte[] rVal = new byte[8];
|
byte[] rVal = new byte[8];
|
||||||
|
bufferLock.acquireUninterruptibly();
|
||||||
integerCompactor.clear();
|
integerCompactor.clear();
|
||||||
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(8);
|
||||||
integerCompactor.putLong(i);
|
integerCompactor.putLong(i);
|
||||||
integerCompactor.position(0);
|
integerCompactor.position(0);
|
||||||
|
integerCompactor.limit(8);
|
||||||
rVal[0] = integerCompactor.get(0);
|
rVal[0] = integerCompactor.get(0);
|
||||||
rVal[1] = integerCompactor.get(1);
|
rVal[1] = integerCompactor.get(1);
|
||||||
rVal[2] = integerCompactor.get(2);
|
rVal[2] = integerCompactor.get(2);
|
||||||
@ -88,6 +119,7 @@ public class ByteStreamUtils {
|
|||||||
rVal[5] = integerCompactor.get(5);
|
rVal[5] = integerCompactor.get(5);
|
||||||
rVal[6] = integerCompactor.get(6);
|
rVal[6] = integerCompactor.get(6);
|
||||||
rVal[7] = integerCompactor.get(7);
|
rVal[7] = integerCompactor.get(7);
|
||||||
|
bufferLock.release();
|
||||||
return rVal;
|
return rVal;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user