aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTec <daniel112092@gmail.com>2019-07-18 21:42:55 +0200
committerTec <daniel112092@gmail.com>2019-07-18 21:42:55 +0200
commit30d55de44f476aa929182f11cf408f0002350139 (patch)
tree74e44b083372f290b90e88ecddf9482a87e17491
parentc1fe52f59807f920dbaf292c2c92e1b44e4c7106 (diff)
downloadGT5-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.java51
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);
}