001
002 public class ig extends hg {
003
004 public ig(int paramInt) {
005 super(paramInt);
006 bb = 1;
007 }
008
009 public jl a(jl paramjl, fv paramfv, hl paramhl) {
010 float f1 = 1.0F;
011
012 float f2 = paramhl.y + (paramhl.w - paramhl.y) * f1;
013 float f3 = paramhl.x + (paramhl.v - paramhl.x) * f1;
014
015 double d1 = paramhl.m + (paramhl.p - paramhl.m) * f1;
016 double d2 = paramhl.n + (paramhl.q - paramhl.n) * f1 + 1.62D - paramhl.H;
017 double d3 = paramhl.o + (paramhl.r - paramhl.o) * f1;
018
019 bu localbu1 = bu.b(d1, d2, d3);
020
021 float f4 = iz.b(-f3 * 0.01745329F - 3.141593F);
022 float f5 = iz.a(-f3 * 0.01745329F - 3.141593F);
023 float f6 = -iz.b(-f2 * 0.01745329F);
024 float f7 = iz.a(-f2 * 0.01745329F);
025
026 float f8 = f5 * f6;
027 float f9 = f7;
028 float f10 = f4 * f6;
029
030 double d4 = 5.0D;
031 bu localbu2 = localbu1.c(f8 * d4, f9 * d4, f10 * d4);
032 ih localih = paramfv.a(localbu1, localbu2, true);
033 if (localih == null) {
034 return paramjl;
035 }
036
037 if (localih.a == jr.a) {
038 int i = localih.b;
039 int j = localih.c;
040 int k = localih.d;
041
042 if (!paramfv.z) {
043 // hMod: placing of a boat
044 Block blockClicked = new Block(paramfv.a(i, j, k), i, j, k);
045 blockClicked.setFaceClicked(Block.Face.fromId(localih.e));
046 Block blockPlaced = new Block(0, i, j, k);
047 // hMod: Call hook
048 if (paramhl instanceof fy && (Boolean) etc.getLoader().callHook(PluginLoader.Hook.ITEM_USE, ((fy) paramhl).getPlayer(), blockPlaced, blockClicked, new Item(paramjl))) {
049 return paramjl;
050 }
051 paramfv.a(new gu(paramfv, i + 0.5F, j + 1.5F, k + 0.5F));
052 }
053 paramjl.a -= 1;
054 }
055
056 return paramjl;
057 }
058 }