--- a/net/minecraft/client/MouseHelper.java +++ b/net/minecraft/client/MouseHelper.java @@ -77,11 +77,15 @@ int p_198023_3_f = p_198023_3_; if (flag) { Screen.wrapScreenError(() -> { - aboolean[0] = this.field_198036_a.field_71462_r.mouseClicked(d0, d1, p_198023_3_f); + aboolean[0] = net.minecraftforge.client.ForgeHooksClient.onGuiMouseClickedPre(this.field_198036_a.field_71462_r, d0, d1, p_198023_3_f); + if (!aboolean[0]) aboolean[0] = this.field_198036_a.field_71462_r.mouseClicked(d0, d1, p_198023_3_f); + if (!aboolean[0]) aboolean[0] = net.minecraftforge.client.ForgeHooksClient.onGuiMouseClickedPost(this.field_198036_a.field_71462_r, d0, d1, p_198023_3_f); }, "mouseClicked event handler", this.field_198036_a.field_71462_r.getClass().getCanonicalName()); } else { Screen.wrapScreenError(() -> { - aboolean[0] = this.field_198036_a.field_71462_r.mouseReleased(d0, d1, p_198023_3_f); + aboolean[0] = net.minecraftforge.client.ForgeHooksClient.onGuiMouseReleasedPre(this.field_198036_a.field_71462_r, d0, d1, p_198023_3_f); + if (!aboolean[0]) aboolean[0] = this.field_198036_a.field_71462_r.mouseReleased(d0, d1, p_198023_3_f); + if (!aboolean[0]) aboolean[0] = net.minecraftforge.client.ForgeHooksClient.onGuiMouseReleasedPost(this.field_198036_a.field_71462_r, d0, d1, p_198023_3_f); }, "mouseReleased event handler", this.field_198036_a.field_71462_r.getClass().getCanonicalName()); } } @@ -105,7 +109,7 @@ } } } - + net.minecraftforge.client.ForgeHooksClient.fireMouseInput(p_198023_3_, p_198023_4_, p_198023_5_); } } @@ -116,7 +120,9 @@ if (this.field_198036_a.field_71462_r != null) { double d1 = this.field_198040_e * (double)this.field_198036_a.field_195558_d.func_198107_o() / (double)this.field_198036_a.field_195558_d.func_198105_m(); double d2 = this.field_198041_f * (double)this.field_198036_a.field_195558_d.func_198087_p() / (double)this.field_198036_a.field_195558_d.func_198083_n(); - this.field_198036_a.field_71462_r.mouseScrolled(d1, d2, d0); + if (net.minecraftforge.client.ForgeHooksClient.onGuiMouseScrollPre(this, this.field_198036_a.field_71462_r, d0)) return; + if (this.field_198036_a.field_71462_r.mouseScrolled(d1, d2, d0)) return; + net.minecraftforge.client.ForgeHooksClient.onGuiMouseScrollPost(this, this.field_198036_a.field_71462_r, d0); } else if (this.field_198036_a.field_71439_g != null) { if (this.field_200542_o != 0.0D && Math.signum(d0) != Math.signum(this.field_200542_o)) { this.field_200542_o = 0.0D; @@ -168,7 +174,9 @@ double d2 = (p_198022_3_ - this.field_198040_e) * (double)this.field_198036_a.field_195558_d.func_198107_o() / (double)this.field_198036_a.field_195558_d.func_198105_m(); double d3 = (p_198022_5_ - this.field_198041_f) * (double)this.field_198036_a.field_195558_d.func_198087_p() / (double)this.field_198036_a.field_195558_d.func_198083_n(); Screen.wrapScreenError(() -> { - iguieventlistener.mouseDragged(d0, d1, this.field_198042_g, d2, d3); + if (net.minecraftforge.client.ForgeHooksClient.onGuiMouseDragPre(this.field_198036_a.field_71462_r, d0, d1, this.field_198042_g, d2, d3)) return; + if (iguieventlistener.mouseDragged(d0, d1, this.field_198042_g, d2, d3)) return; + net.minecraftforge.client.ForgeHooksClient.onGuiMouseDragPost(this.field_198036_a.field_71462_r, d0, d1, this.field_198042_g, d2, d3); }, "mouseDragged event handler", iguieventlistener.getClass().getCanonicalName()); } } @@ -233,6 +241,10 @@ return this.field_198039_d; } + public boolean isMiddleDown() { + return this.field_198038_c; + } + public double func_198024_e() { return this.field_198040_e; } @@ -241,6 +253,14 @@ return this.field_198041_f; } + public double getXVelocity() { + return this.field_198048_m; + } + + public double getYVelocity() { + return this.field_198049_n; + } + public void func_198021_g() { this.field_198043_h = true; }