aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/github/technus/tectech/Util.java51
-rw-r--r--src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataMessage.java7
-rw-r--r--src/main/java/com/github/technus/tectech/mechanics/data/PlayerDataMessage.java7
3 files changed, 53 insertions, 12 deletions
diff --git a/src/main/java/com/github/technus/tectech/Util.java b/src/main/java/com/github/technus/tectech/Util.java
index c98fefcd86..3b1fdf0961 100644
--- a/src/main/java/com/github/technus/tectech/Util.java
+++ b/src/main/java/com/github/technus/tectech/Util.java
@@ -65,6 +65,39 @@ public final class Util {
return sortedEntries;
}
+ public static int bitStringToInt(String bits){
+ if(bits==null){
+ return 0;
+ }
+ bits=bits.replaceAll("[^-01]","");
+ if(bits.length() > 32){
+ return 0;
+ }
+ return Integer.parseInt(bits,2);
+ }
+
+ public static int hexStringToInt(String hex){
+ if(hex==null){
+ return 0;
+ }
+ hex=hex.toLowerCase().replaceAll("[^-0-9a-f]","");
+ if(hex.length()>8){
+ return 0;
+ }
+ return Integer.parseInt(hex,16);
+ }
+
+ public static double stringToDouble(String str){
+ if(str==null){
+ return 0;
+ }
+ str=str.toLowerCase().replaceAll("[^-0-9.,e]","");
+ if(str.length()>8){
+ return 0;
+ }
+ return Integer.parseInt(str,16);
+ }
+
public static String intBitsToString(int number) {
StringBuilder result = new StringBuilder(16);
@@ -1392,6 +1425,17 @@ public final class Util {
}
}
+ public static StringBuilder receiveString(StringBuilder previousValue, int startIndex, int index, int value){
+ int sizeReq=index-startIndex;
+ if(value==0){
+ previousValue.setLength(Math.min(previousValue.length(),sizeReq));
+ }else {
+ previousValue.setLength(Math.max(previousValue.length(),sizeReq));
+ previousValue.setCharAt(sizeReq,(char)value);
+ }
+ return previousValue;
+ }
+
public static double receiveDouble(double previousValue, int startIndex, int index, int value){
return Double.longBitsToDouble(receiveLong(Double.doubleToLongBits(previousValue),startIndex,index,value));
}
@@ -1419,6 +1463,13 @@ public final class Util {
return previousValue;
}
+ public static void sendString(StringBuilder string,Container container, ICrafting crafter,int startIndex){
+ for (int i = 0; i < string.length(); i++) {
+ crafter.sendProgressBarUpdate(container,startIndex++,string.charAt(i));
+ }
+ crafter.sendProgressBarUpdate(container,startIndex,0);
+ }
+
public static void sendDouble(double value,Container container, ICrafting crafter,int startIndex){
sendLong(Double.doubleToLongBits(value),container,crafter,startIndex);
}
diff --git a/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataMessage.java b/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataMessage.java
index a8ed9de2c8..0a086384bc 100644
--- a/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataMessage.java
+++ b/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataMessage.java
@@ -2,7 +2,6 @@ package com.github.technus.tectech.mechanics.data;
import com.github.technus.tectech.TecTech;
import com.github.technus.tectech.Util;
-import com.github.technus.tectech.loader.NetworkDispatcher;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
@@ -10,7 +9,6 @@ import eu.usrv.yamcore.network.client.AbstractClientMessageHandler;
import eu.usrv.yamcore.network.server.AbstractServerMessageHandler;
import io.netty.buffer.ByteBuf;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.ChunkCoordIntPair;
import net.minecraftforge.event.world.ChunkEvent;
@@ -92,10 +90,7 @@ public class ChunkDataMessage implements IMessage {
public static class ServerHandler extends AbstractServerMessageHandler<ChunkDataQuery> {
@Override
public IMessage handleServerMessage(EntityPlayer pPlayer, ChunkDataQuery pMessage, MessageContext pCtx) {
- if(pPlayer instanceof EntityPlayerMP){
- NetworkDispatcher.INSTANCE.sendTo(new ChunkDataData(pMessage),(EntityPlayerMP) pPlayer);
- }
- return null;
+ return new ChunkDataData(pMessage);
}
}
}
diff --git a/src/main/java/com/github/technus/tectech/mechanics/data/PlayerDataMessage.java b/src/main/java/com/github/technus/tectech/mechanics/data/PlayerDataMessage.java
index ca62fb0876..58abc2fa20 100644
--- a/src/main/java/com/github/technus/tectech/mechanics/data/PlayerDataMessage.java
+++ b/src/main/java/com/github/technus/tectech/mechanics/data/PlayerDataMessage.java
@@ -1,7 +1,6 @@
package com.github.technus.tectech.mechanics.data;
import com.github.technus.tectech.TecTech;
-import com.github.technus.tectech.loader.NetworkDispatcher;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
@@ -9,7 +8,6 @@ import eu.usrv.yamcore.network.client.AbstractClientMessageHandler;
import eu.usrv.yamcore.network.server.AbstractServerMessageHandler;
import io.netty.buffer.ByteBuf;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import java.util.UUID;
@@ -81,10 +79,7 @@ public class PlayerDataMessage implements IMessage {
public static class ServerHandler extends AbstractServerMessageHandler<PlayerDataQuery> {
@Override
public IMessage handleServerMessage(EntityPlayer pPlayer, PlayerDataQuery pMessage, MessageContext pCtx) {
- if(pPlayer instanceof EntityPlayerMP){
- NetworkDispatcher.INSTANCE.sendTo(new PlayerDataData(pMessage),(EntityPlayerMP) pPlayer);
- }
- return null;
+ return new PlayerDataData(pMessage);
}
}
}