diff options
author | Tec <daniel112092@gmail.com> | 2019-07-18 21:42:55 +0200 |
---|---|---|
committer | Tec <daniel112092@gmail.com> | 2019-07-18 21:42:55 +0200 |
commit | 30d55de44f476aa929182f11cf408f0002350139 (patch) | |
tree | 74e44b083372f290b90e88ecddf9482a87e17491 | |
parent | c1fe52f59807f920dbaf292c2c92e1b44e4c7106 (diff) | |
download | GT5-Unofficial-30d55de44f476aa929182f11cf408f0002350139.tar.gz GT5-Unofficial-30d55de44f476aa929182f11cf408f0002350139.tar.bz2 GT5-Unofficial-30d55de44f476aa929182f11cf408f0002350139.zip |
Add some utility
-rw-r--r-- | src/main/java/com/github/technus/tectech/Util.java | 51 |
1 files changed, 51 insertions, 0 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); } |