From b05a04b6593cf440471fe6ecb3b444378a2ea858 Mon Sep 17 00:00:00 2001 From: Gabriel Tofvesson Date: Mon, 15 May 2017 03:23:26 +0200 Subject: [PATCH] Error messages may occur. Text sync almost complete --- .../org/teamavion/pcomp/PComp.class | Bin 2074 -> 5502 bytes .../org/teamavion/pcomp/gui/GUIComputer.class | Bin 11719 -> 14303 bytes .../org/teamavion/pcomp/gui/GUIHandler.class | Bin 1674 -> 3087 bytes .../pcomp/tile/TileEntityComputer.class | Bin 1065 -> 4682 bytes src/main/java/org/teamavion/pcomp/PComp.java | 31 ++++++++++++++ .../org/teamavion/pcomp/gui/GUIComputer.java | 27 ++++++++++++- .../org/teamavion/pcomp/gui/GUIHandler.java | 10 +++++ .../org/teamavion/pcomp/net/DataListener.java | 5 +++ .../pcomp/tile/TileEntityComputer.java | 38 ++++++++++++++++++ src/main/lib/minecrafthelper-1.0-sources.jar | Bin 23259 -> 23301 bytes src/main/lib/minecrafthelper-1.0.jar | Bin 47797 -> 47870 bytes 11 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/teamavion/pcomp/net/DataListener.java diff --git a/classes/production/Programmable_Computers_main/org/teamavion/pcomp/PComp.class b/classes/production/Programmable_Computers_main/org/teamavion/pcomp/PComp.class index 681c53e5c3c9ebf8bd867e34af3961e8c5d22c8f..b8ded63958c58fba99cb59fc2c91737a51783808 100644 GIT binary patch literal 5502 zcmbtYd3+RC9sj}=Qs@^Sx|cm3}7eZTj6`|#P* z_W{@_R23U>M8UIE+>B?-&rt=>iQ=G&N<6n36?k5ZgvaIZ#nm{0mngVJg@z+42QO9d zvM6p<@p7Du;uTT6Qi^+(idW+`3SO&X0bZx#^|(#J8x*`z#SM6qibZ&H6mL=SR=iEl zyj}L*q2hMDQ^C7bER(Wt#~mu(jrYjUd!u+?6z`Ya4@B|7C_WU$ol)Es#obYSSj9cK zSH&n!DHv0+9v@L~TA;FPXM4O|AlA9h7%}v;VW;$7-?i*ii@=;V$M$@~_WO-=&JKKJG-MeEHFFXzPD{>*RI`t9X$dfKC6a5@+6#0Hs_meYuZT+3#{mL+?4K{M#dPi z99z%Ib$viCdU{)dmbz+ta<*?}%zn$W2GZtM+je}zCx<7{G)YFzx6-)ob*z;TD$^2Fq;+G5$3f3?7@hQ@xn(B>p*_uNkE?apNeOt;Tq%;YXQ2_xNa z&{K{JlM#Q&qNx!nLg1Q)^O$Uon6|HP>*|b?o)NPS2SM(T(=AeaWk4aY<^K_+;9~+> zAasXeC)1`Yu=YFxWiZ1W49uLgkr_xDb<(%GwF>SNP_J{`bTXh*a6iorx&kMsblf%5 zM$S$QnXcYzCC!!#-0P(qE5(SUCN#t4nA-#{?j-X50IlaD-816E%0m_**6+EEe<4kU} zx7W$J33D6iIS3ANvrKOS%S)w~JFk>onQ@XZ*JJQ_{?;|G)zAedklJ#2 zEzqUl6B<5=2Q_>O4+=Dv5>9i{rR0Y+JQbY+HLZ^0d%kOAyG(z`NqTdu@aY3PDn;D4)hsIZNNZJ6JrcKl;@Q>keLSk*2O55e9|B(;FlVHg zX!sp|FR-X+W8v1BI3F7RfIlkulZHRzQ4N2=U+HYUJ0MS^xLL#B@OL?p&QBa+YOdd( zb9}kFOfDF_GuW?J@DC0D#J`A24Ugg90!vDLDxBbu;{Qlg)f7$JIk3-6_zM0ju&RW& z9BL&fqygbSmeC{DxpLO^4ZS8LB5V+zz34RJ0bS*aS+V-3^ z;nKo#XrCSrOF2?D&(N&Vo;fb$fNJ=(E50Va_3PbrP z1*u3shxFm-GXUr1nk=|%s-x_4a@{V&=R<{+h9WQBpnz#A6YxSbLrJp0NSO-lZ8v;Y zJM&8Rys%d!pog-+6xa|J&F6;OYwpjPcEV&eJ4F_j3iAAnAUExLrrMP2$W%LD?m%(h zC-jBxwEP_RAZ^+ye@LL(%MEzJdsARRL%h5I#Wk~OLq64*Xo?C-44!JftVN4UH&EWi z*LsfK=dh+0xJYiek=o`u89B?6H>|bb*5n;7TanLpO(QAg1aenQ22L3snFi-(`Tq8U z`nJyv+%Bz|&Pj}X7%8Gc6SG8>hU>AHue@o_b$7|@vaT?kd|xap#@Vt*oMBV%44zu7 zMvXxu;X5+%&dwA^iimPwI~`|OV&Rc+$O;1Tg={{zdUbiqme9TxA{&}1VeC7U<=gBW zv+`1>UCgVTo;Qq>g4#ACo$j@KvqcfrOqEk;F7=0X-t=@>%0G)X^1q@g)Z%h%;zfQ1 zM-{>N%Fy^Ku5U)m#QGLgPtrCyrqWC!REl%Qi=9BcoV)8)l!uG8(@8 z{@O@%6m@$xSJp&pD@U;+k{m^SY-Oxr6pgV}G4eIW*2J1*(;U;;jA8BOs;1hiQLMWI zYF^+5aVHI2$><&DUvIO5c(-yBfhH_LGgsC!0PE=9dc+Bj0Ybwf7_tP%0S4nR=ZQM$Lfh4~tI5IKFRR#tr46&6x3;Sr* z5_lL!nt@))aRxT+bGW_$k+X;^$ST;czsm*;UErqv^37u z_0+l@XRxEb8rQLXI@=p)#f=2@O>CbLsmABnK2lXJB0>?BoPR#~B<@~7{m1Y^yy$V@ C^MwQe delta 586 zcmYk3%T5$g6h+sqqN}>93v5eivDJq1(by%3B0hKtD!%dADz=L914fdHGZQ|+m^4 z_M7MSRd2;)0o7ry2%=eMl5R;kGG0kE@qXni?CItQ z2y{~w->3Sr;(m1<$fz-xF{Et5!R@T4SXY(F$L*+V3sUj5W1?d^7{x-`#(e7JM}&D- zt~@G?whA~d&0J@U6LQO&U(=%#jK`k;@2&I?k0X^=)VQaFTINkZ+w&cv{irjL_k1_btweO=e6n WoiQUl^pcJgZ*#aFa7uBa9{d9zfJFQN diff --git a/classes/production/Programmable_Computers_main/org/teamavion/pcomp/gui/GUIComputer.class b/classes/production/Programmable_Computers_main/org/teamavion/pcomp/gui/GUIComputer.class index ce89434a43cd798d8093a0df430a0ff50d23adf3..e5543c2eb5f014a1d0f8cd2aa58a373e3926f270 100644 GIT binary patch literal 14303 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 delta 6088 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 S`qxDcJ=VRZzOyzl_x}N6({D)t diff --git a/classes/production/Programmable_Computers_main/org/teamavion/pcomp/gui/GUIHandler.class b/classes/production/Programmable_Computers_main/org/teamavion/pcomp/gui/GUIHandler.class index fe584fbd281fc297eecab49a91bfc40e19a1db68..2b9d4532ab4fe6c553b3cbd6dda84dc4b4bfd16f 100644 GIT binary patch literal 3087 zcma)8>r)d~6#rdbo2;?g2xRITJxHG^6$a*2v?HxxLB%bY3Kmry#F7F_MVA~i3Ty?AK+9>< zHoda~jnV!Yfu><6WeDsTH*I4gpP4hc36;FR>cSJC19mwCnO2OC%Eg>*-;la`JXc8ZHWSjuWPqcAT_jXz3hr zU*w}4w;?e?y960701+6d@w^32fo30@Ku67_O33tom;V+1?+I+5^7Q1=Wj*UBM?qE~ zay3u(GRBOVGnut>w(WSj#}qMX9X?riHNC9VCi0dgvs=v7uw`H8Hv(GqvI<)_ z>DZpm{pf1LC8BZ3IGnU4zWw_7y zRnny;Ses=x-BoimStUjIPilpUi^@L1Mi;3zr@vAs;Z9)^ew4z7|(>J2?Lz`Ao$w(l?iW*@f zwsUO0{#na|VW>9yb;>HS)gdFfYsndQYT8lo9h*uo)Kc%MAY>|Y*ns5j`ye|p#^8VDwkw*xh{e06n3XaVKYiRhDLIVc)Z1I(? zI6^s8Fu+k9o#T){>Hvtbie&G}NiGQ(^KaRVOt)p?at*NcKtz`{Ot7sln zBFdj=`2o%1;X0JrH3S9&5hW5>MezDMR4TR&1|z|6NUFAnp9$|+#m?}v;jkQbg<>dB5vJ2Tr0BgV={l*v~Wb0Dj~>?`PieBnR`v*~e4j1g#WWW$_%IC;Cgc$qVTV zzNZI8hR6qA#7jPF5AZTxAzM;6h!`VF=`_DK`O+Cm&AxP&QVU+C971F3zvxsD{|9$* zjvASbA&vsWCGPPzwE^nlMefhY?@!5nSBa1ANSTwW*{#=|pWa8DmBh6V0G;jA$RgmEgj&xDdC3xTt-=8zi_0xDeN# zMcgYQzG@-}9zY7}z544PzW*+JlNi2yJw5>#;7DQJK^!fGwgZU`2b<_9bQO9I6#5EV z4q`^P6$T1BlTlLWcX2It^`&(yJtVa&>z;=_h5a}Va468$_qMO!q8UB12N4fLfvO2T zyxKJ(d(G3?fBqb0xEwE#AdaN6AMX@jU8XT>qHVYf3x8O!iwxj7Kb`Wlx*KAaU` z83oQTu@w~A)wosu+Mz4anF&FMo8<{x;Uf;|f1;pJ{h+TgVwR{=1=fBc$9|BVzsN-b Tmxxy;a)rpX|3hvN+(Ppk;DkBY diff --git a/classes/production/Programmable_Computers_main/org/teamavion/pcomp/tile/TileEntityComputer.class b/classes/production/Programmable_Computers_main/org/teamavion/pcomp/tile/TileEntityComputer.class index daef8b534b90b7ff9b6f48e33fbe9a3a71d98ea5..ac6e499e8b3c57aeced107a96d6671f7a05e7c8d 100644 GIT binary patch literal 4682 zcmbtX`FmVt6@I^&$=u20(j}cFjY&#M(`J&84k}h?+O$nWWhAtbgl>v>Gr65iGnq*z zH)-PrCMkwFBvxk=$=&5^{Dgeb!ilesxzgl|eNl z!(6UQSqW=)H_e~67%PQUiK&~XL`>i8VA7a1GZYaX5Z5NCHkL7tSP|1^icH$?5l4hW z+|zMb!S6gMbS|Hd2^q4C*f_K7+8@Z6#;CZ;+=QbY}X+LK97*j8^`j@5*cqP|TPkx>d_Lc+_; z%W9lZs4s@v>|_pZBg>NZmP$e)lriH{vYEm%Q|JgUOL>m~AdqxxUcp=*+gq|(RMt68E<{s9eLPL2uZWfU0*o8iY)n(mK$5t>qYnC4JeM?6#cIbE#b2^^FH#I!1 z;~6}w;afVsjWar)ljSVVX!wqf@8WqK=aAKL9v3vs>v#bRI=+YRvmKPyi2`)Ih#%;9 z2|pwPb^HiF*6|bkG-qQW%5}Ufntp~ebg)!Z-*h55Dh{COUuih4 z>D|1#w>gIdFc^*Yo*t6271o9 zt8h&P@^b3J8R%-HNt}5udg_au%%Ms=9W$o(nkT4;9}*0$FJ&J>IeNQd3nZqj{Sq3+ zFKMRY))+U&ir)gIWy~>HdgWF&RTt6c!t{UW16JCZ$87dR=H;h!^^|GlNZKn{ zQzqPQ`$2NKd6j&Z6Gf#{`x&Sk%-NFcx~e5|Rk5ULuuy}{a$Z~!6mrDGb8|7QoR_80 zR8vOIks`e0M3fuJRFX-CUx|si$kGR|G0HsoGv-8k#>9I5yKpVP!957cxPZbo`?Q^B z&WQYZCj#7a(s12PiW}kO4ruB;57oH<&!O}1o`a9uDsKJfpq;e^^>bZ8VxR^-T!xiA zUB{E|uwxJ2!;`}Gh`OThLN(0+`a7RTpfii=EP|a+VoR5^uemz}J?89J6zo^p`z%(4 zu=?Rgq50S%{*At!`~;$pd%23YV`LDM z+G&z6i#1Ib5SmAw2PYAdD>-LT{}LMJP*uD3Ig%D?4Hal@&ueYRJ`65tZQG^ceLUWT zAy?}Fg-GC5xO=ST&C(MaS05u32%6w`}z{`mYmEX8YXY>&xb9dEDjdy)@UZLR}(R z)JQlFZDqJGKZ%yE1+)@Z>uaybVuQT4WwEi5kDKNe7rJWOTe1ju)pj)Vr?cxkI+s$g z&i1sC;AVM6mD4iP9H%S`^ee2J`Iftl2i>?IaXSZNq?AVEa3;tpSy_uf1Kvb~QYy6L z4OIOH0S5aGW?11U#u;*{`NRB`nwJ9Cy0X}Epeyf)cu`p3-30|6%3BsflGZAAk6gQx tn*?v19y`HZDz8t_Bl?1_zIWS|UZ`brftFxiOR!9f+!Sj`Q?3V-{{sRtx={cC delta 376 zcmYk1OD+Ua7=^!j-m2=Wy-I6uP197P&@@ImVr0-UvH=6D5F@dGniv=piHVSs7+65B z!a7LsSCxo6IQN`C=l)-AuYT_x^}b%;fGzd{%1rt6F&&7^1k6$km}B1Ef0u@wEY&kv z2w0@yc8-g=Vo9-_RL$??!)e6*3}_;nniWGYq8E%uF(yNzZa#Dw7O#r}AtRCuDvXL|k1z414~Nk+ zW|U&3*wHQRX5pQy5cf3mXDQxaNbz%@5`>hlZ&3Cfw)G&3tbcGXhgS-~FI-Sm858`t Rv=!zj2c7H#6B11(e*lQQDu)07 diff --git a/src/main/java/org/teamavion/pcomp/PComp.java b/src/main/java/org/teamavion/pcomp/PComp.java index daf4d13..9eeb53f 100644 --- a/src/main/java/org/teamavion/pcomp/PComp.java +++ b/src/main/java/org/teamavion/pcomp/PComp.java @@ -1,5 +1,12 @@ package org.teamavion.pcomp; +import net.minecraft.nbt.JsonToNBT; +import net.minecraft.nbt.NBTException; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; +import net.minecraft.world.WorldProvider; +import net.minecraftforge.common.DimensionManager; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.event.FMLInitializationEvent; @@ -11,6 +18,10 @@ import org.teamavion.pcomp.tile.TileEntityComputer; import org.teamavion.util.automation.BlockRegister; import org.teamavion.util.automation.SetupHelper; import org.teamavion.util.support.NetworkChannel; +import org.teamavion.util.support.Reflection; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; @Mod(modid = PComp.MODID, version = PComp.VERSION) public class PComp @@ -30,6 +41,26 @@ public class PComp SetupHelper.setup(PComp.class); SetupHelper.registerRenders(PComp.class); channel = new NetworkChannel(MODID); + channel.registerWorldHandler((side, worldEvent) -> { + World w = (World) Reflection.getValue("world", DimensionManager.getProvider((Integer) Reflection.getValue("id", worldEvent, worldEvent.getClass())), WorldProvider.class); // Get World + TileEntity t = w.getTileEntity(worldEvent.getPos()); + try { + if (t != null) { + Matcher m = Pattern.compile("(\\d+):(\\d+):(\\d+);(\\d+);(.+)").matcher(worldEvent.getData()); + if(!m.matches()) throw new RuntimeException(); + String s1; + NBTTagCompound n = JsonToNBT.getTagFromJson((s1=m.group(5)).substring(8, s1.length()-1) + .replace("&rbr;", "}") + .replace("&lbr;", "{") + .replace(""", "\"") + .replace("&", "&")); + t.readFromNBT(n); + } + } catch (NBTException e) { + e.printStackTrace(); + } + return null; + }); NetworkRegistry.INSTANCE.registerGuiHandler(this, new GUIHandler()); GameRegistry.registerTileEntity(TileEntityComputer.class, "computer"); } diff --git a/src/main/java/org/teamavion/pcomp/gui/GUIComputer.java b/src/main/java/org/teamavion/pcomp/gui/GUIComputer.java index 79ebf7e..179df3e 100644 --- a/src/main/java/org/teamavion/pcomp/gui/GUIComputer.java +++ b/src/main/java/org/teamavion/pcomp/gui/GUIComputer.java @@ -1,11 +1,16 @@ package org.teamavion.pcomp.gui; +import com.google.gson.JsonObject; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiTextField; +import net.minecraft.nbt.NBTTagCompound; import org.lwjgl.input.Keyboard; +import org.teamavion.pcomp.PComp; +import org.teamavion.pcomp.net.DataListener; import org.teamavion.pcomp.tile.TileEntityComputer; +import org.teamavion.util.support.NetworkChannel; import org.teamavion.util.support.Reflection; import org.teamavion.util.support.Result; @@ -17,9 +22,10 @@ import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.util.ArrayList; import java.util.Arrays; +import java.util.HashMap; @SuppressWarnings({"unchecked", "WeakerAccess"}) -public class GUIComputer extends GuiScreen{ +public class GUIComputer extends GuiScreen implements DataListener>{ protected final int viewportMin = -90, viewportMax = 45, maxInputLines = 128, textFieldLen = 240, textColor = 0xFFFFFF; protected final long keyPressTimeout = 0; // timeout period between keypresses to minimize spam @@ -49,6 +55,7 @@ public class GUIComputer extends GuiScreen{ button = new GuiButton(-1, this.width / 2 - textFieldLen / 2, this.height / 2 + viewportMax + 30, "Execute"); button.width = textFieldLen; inputLines[selected].setFocused(true); + computer.registerDataListener(this); } @Override @@ -235,9 +242,27 @@ public class GUIComputer extends GuiScreen{ } } + @Override + public void onGuiClosed() { + computer.unregisterDataListener(this); + for(int i = 0; i data) { + for(int i = 0; i { + void getData(T data); +} diff --git a/src/main/java/org/teamavion/pcomp/tile/TileEntityComputer.java b/src/main/java/org/teamavion/pcomp/tile/TileEntityComputer.java index c7d2051..526b225 100644 --- a/src/main/java/org/teamavion/pcomp/tile/TileEntityComputer.java +++ b/src/main/java/org/teamavion/pcomp/tile/TileEntityComputer.java @@ -1,10 +1,48 @@ package org.teamavion.pcomp.tile; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; +import org.teamavion.pcomp.net.DataListener; + +import java.util.ArrayList; +import java.util.HashMap; public class TileEntityComputer extends TileEntity{ + + protected final HashMap lines = new HashMap<>(); + protected final ArrayList>> dataListeners = new ArrayList<>(); + public boolean isUsableByPlayer(EntityPlayer player) { return world.getTileEntity(getPos()) == this && player.getDistanceSq(getPos().getX() + 0.5, getPos().getY() + 0.5,getPos().getZ() + 0.5) < 64; } + + public String readLine(int line){ return lines.keySet().contains(line)?lines.get(line):""; } + public void writeLine(int line, String data){ lines.put(line, data); } + + @Override + public NBTTagCompound writeToNBT(NBTTagCompound compound) { + int j = 0, k = 0; + String s; + for(Integer i : lines.keySet()) if(i>j) j = i; + for(Integer i : lines.keySet()) if(i> d : dataListeners) d.getData(lines); + } + + public void registerDataListener(DataListener> listener){ dataListeners.add(listener); listener.getData(lines); } + public void unregisterDataListener(DataListener> listener){ dataListeners.remove(listener); } + } diff --git a/src/main/lib/minecrafthelper-1.0-sources.jar b/src/main/lib/minecrafthelper-1.0-sources.jar index e545ec2a948dfadbb1340618fdef6383a996238f..eddc14c606fee4d2f98fd4ee30a710947bb0f5ce 100644 GIT binary patch delta 3376 zcmZWr2{=@38=lSB8O$(Dw(PsIlr2k98OtDJ57{Dwkfn?@LNtzj%Vhp2Ldo*kvLq>d zN_|;FmMkF(E$AOdzwht+&UKyhoa=t>`+1)Ceb3BwkJLcpYN4zIJRHFUfiN&Y$jp^w z)=P}3%$0`f+hKFu zJDH#FdI89Tib~K1HH6SE*zSXNA!zr-01pK? z@X_5^&4)liK|qd<1Ok2&RIbU z%tAXp+&XU=C9*?edW_0+P2sp@{H$M1F1v{R{o=fR*{!D}y}JDLnE`YETykzF-fto( z*ZRVi?(+2w?h@wjk=h)>Q3jg|*HP&sPGtxV&nB_wIMYITMi=D{k4==x_lRnFsTTD= zwigq|B3izGg|01(skB~F+?1P?bxV@YmYkW=$TezjewcE2g3E(?@1`lI&j!jKd9Ltq z8bvs~c)-zwBro50tWWu<0>V|sm<8F&=OJ<}rAxQZ0Li-OK5%*apNIR^wnHLyzn z&$ettu@1VjF5!9n5JX0)Dd1Dv;BrLQoWKal+(50nR!Ly0yW1<@CDl#eCcq-!)uw1p z*sB;mqQx6hp#`7sfzl}(9A~;R@g{^SLrU#Hee;BC_RZ$5g-7xOBi`DkfrO1%9u<5! z+n5mPu`q$T(~aC7tmZ0r+{yZ`T$46c%?*<-{laeT)T^znaGds&lC*bkEPIo=^ zgElbb^I{d;l5dkNrrDh(x!HvuE}5O3*HrAc&T#f)AH3Q5C|jhA@B1vy^bek{^1g?t zu&7eC&$WJS73cF|4-AwinBWeu_lV4M37WMgb?H34(!;2_U^SvWDYH(bvEjxfHnl6N zki_JF`dj{!z$eB>7>pSFZF8{xEZ-Jp@G?7i>LHY~4j0mnchdl+(p_}qrJdBfJS&b^ zBk4@V62hZXQPPG9LJUZoqsC5I(~W67OxVFyo84sT|6|Mp7hJ2~HcMSxXg)R*8Tg#GN>iWpvRm9i1RR zu~0NZR3EJ8XlH+*XHl7{UmzAxlGbkEM-5bK@**9fjITE2=cF^Qk0=yus&(DXs#QUEDkuorDwCAx)gIz&_#gWs2~Spc_wGBJ6&C=6j7`D372ous-ZZ zW<0Pi9i=A5c>VA_-Z+xR)>v2L*$y?4x5`tu?dcb?)X(c%e32XVHyF~B)!0gwlI}2l zjC`q>zIv6e#FrP($th`dG%juZQ>ehlKQ}s1ur;fk>=Np2hovH0dJ{>C$RbJWis?h! zd)#5zwdk$1{6pK-;x-rtS@v6y!5aTdcS8<8OdJwAh1h6Xyr>oYxj`(*yP+OG@&X!~ zgAHDq!hM*ia=95xOfM0||6Cke$l*9@FNoB~y}!e9Zc3h^yj|N=r@Nbc`0<19ZLX?n z45H0Q*8nP~+LN0E@nafKgd?p;ni%o0VrOF?jHiqxSHW>}_DC6*K%?Py3*raWQPo%B z7F4eqN97UdjF|exL=p118Aozx-esHT%gQ+?-%zv6Ths5hDrTsNdpkaxH9DsyK4){H zkAp)r&h*4o_Og%qX2?$;zU$hKJ`E3EZr~pG6KlM)8-9E#JD2oYFN|PvfwYhr-ZfEb zg|D03lN(Pk@4!E5}%%; z8b6AqsRByx>tV*M#h$6>2mT<{y!N}rYI4!bm@!wp`cB;3%7bleVC>CljaG*_qDj!P z%6x+g>b%)yWk_=7jW*AcUZ0xFCH-&18;W&j=$$_`xvyq*2u6IJZxnp2SbBR7vLv|F zF*d%ngXc(IYThwlXwDghCkY5icKThM)fs5&C(v8hr>g^M*sN>85S z1#b4Xcu#LHYoaDT_@&#oMwO)hOo-+ws+!PuK*q1V=$u<#yx&M-@2DCdvqYu5-*REl z|FnL`n9};xbZ{2fp|?eOMa$K!ytXQ_9zHnt6VKLrI#+kPoBkTr?Y(U)?=rFhyIxk& z^wCb6&gg0YQ|@JJPYIZl*lcTgGS6sW9tBfdEc<0{BPmYHQgeBm{WmL9-6%8+`i<&r z(KH0;E99hjVW9IkEu#wh3&!V4D$z85aX@0%U!<8KtIK653?P@F?8^hbwBfOIplFov z4vfua!G9Y*K+{|SM19S1JddDzriy@v!qD)2hX@pz8`*4T}vUL@|U)Srj>((&<_g?sBLpUNA0As z4QTTy?rR|sY7`3sBofXDfTQ@I!NCOSK&avjH>jPbBswN#|MGP|3)qabS$;N9+8$fm?ayy++8~GSP|B-ot9^&5q2orHI4bJ@HZabNvl-VF15hiV<3h9lf7AiAL`h``6Cm z_B-$H>?sT=*tMB{R(qXERybJ9-*7YSf9@Zr`+p|&pPLYa-LKb-AhC63woQ?~l5BkcLvfh)jT;6eEDM*(<%f+3qs5 z6pr>|`28dFx52?~?WPogmS5~%8swwA%Lc-f+5fdL?YT=WuW6kZP!NdJZ{6SFL6M#9 a0dVp#TO8~g0fdldTtKHS3OQ)DEBG%J0DTPr delta 3345 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 GTkwC2uA|5R diff --git a/src/main/lib/minecrafthelper-1.0.jar b/src/main/lib/minecrafthelper-1.0.jar index 0359e53b5becf2b815890b5953dbe98c995a187a..ebbfef80dc69d51cac865861eb6bb31e6c7ca066 100644 GIT binary patch delta 1977 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