Badge images report the certificate status at the moment they are fetched
BackProbeIntegrity Authority
dev/mishka/gamblerplus/client/VerifyPaymentScreen.class 6.8 KB
Class
public final synchronized dev.mishka.gamblerplus.client.VerifyPaymentScreen
Extends
net.minecraft.class_437
Implements
nothing
Compiled for
Java 21

Reconstructed source

// Reconstructed from bytecode by BackProbe (dev/mishka/gamblerplus/client/VerifyPaymentScreen.class, Java 21); this is not the original source.

package dev.mishka.gamblerplus.client;

import java.util.Objects;
import net.minecraft.class_11908;
import net.minecraft.class_11909;
import net.minecraft.class_2561;
import net.minecraft.class_310;
import net.minecraft.class_332;
import net.minecraft.class_437;

public final class VerifyPaymentScreen extends class_437 {

    private static final int PANEL_W;
    private static final int PANEL_H;
    private static final long ANIM_MS;
    private final String recipient;
    private final long amount;
    private final String rawCommand;
    private long openedAtMs;
    private boolean acted;
    private float uiScale;
    private int yesX;
    private int yesY;
    private int yesW;
    private int yesH;
    private int noX;
    private int noY;
    private int noW;
    private int noH;

    public VerifyPaymentScreen(String arg0, long arg1, String arg2) {
        super(class_310.method_1551(), class_310.method_1551().field_1772, class_2561.method_43470("Confirm payment"));
        this.uiScale = 1.0F;
        this.recipient = arg0;
        this.amount = arg1;
        this.rawCommand = arg2;
        return;
    }

    protected void method_25426() {
        this.openedAtMs = System.currentTimeMillis();
        int var1 = 16;
        float var2 = (((float) (this.field_22789 - var1)) / 320.0);
        float var3 = (((float) (this.field_22790 - var1)) / 168.0);
        this.uiScale = Math.min(1.0F, Math.min(var2, var3));
        return;
    }

    public boolean method_25421() {
        return true;
    }

    public boolean method_25422() {
        return false;
    }

    public void method_25394(class_332 arg0, int arg1, int arg2, float arg3) {
        long var5 = (System.currentTimeMillis() - this.openedAtMs);
        float var7 = Math.min(1.0F, (((float) var5) / 220.0));
        float var8 = Theme.easeOutCubic(var7);
        int var9 = ((int) (224.0 * var8));
        arg0.method_25294(0, 0, this.field_22789, this.field_22790, (var9 << 24));
        int var10 = Math.round((((float) arg1) / this.uiScale));
        int var11 = Math.round((((float) arg2) / this.uiScale));
        int var12 = Math.round((((float) this.field_22789) / this.uiScale));
        int var13 = Math.round((((float) this.field_22790) / this.uiScale));
        int var14 = ((var12 - 320) / 2);
        int var15 = ((var13 - 168) / 2);
        var var16 = arg0.method_51448();
        var16.pushMatrix();
        var16.translate(0.0F, ((1.0F - var8) * -18.0));
        var16.scale(this.uiScale, this.uiScale);
        arg0.method_25294(var14, var15, (var14 + 320), (var15 + 168), -15855596);
        this.outline(arg0, var14, var15, (var14 + 320), (var15 + 168), -14276046);
        arg0.method_25294(var14, var15, (var14 + 320), (var15 + 2), -680437);
        var var17 = "confirm large payment";
        int var18 = this.field_22793.method_1727(var17);
        arg0.method_51433(this.field_22793, var17, (var14 + ((320 - var18) / 2)), (var15 + 14), -1644565, false);
        int var19 = (var15 + 40);
        this.labelValue(arg0, (var14 + 24), var19, "to", this.recipient, -1644565);
        this.labelValue(arg0, (var14 + 24), (var19 + 18), "amount", AmountFormat.pretty(this.amount), -1096636);
        var var20 = "this is above your verify threshold.";
        int var21 = this.field_22793.method_1727(var20);
        arg0.method_51433(this.field_22793, var20, (var14 + ((320 - var21) / 2)), ((var15 + 168) - 60), -8748911, false);
        this.yesW = 92;
        this.yesH = 22;
        this.noW = 92;
        this.noH = 22;
        int var22 = 14;
        int var23 = ((this.yesW + var22) + this.noW);
        this.yesX = (var14 + ((320 - var23) / 2));
        this.yesY = ((var15 + 168) - 32);
        this.noX = ((this.yesX + this.yesW) + var22);
        this.noY = this.yesY;
        this.drawButton(arg0, "confirm", this.yesX, this.yesY, this.yesW, this.yesH, var10, var11, -11870592);
        this.drawButton(arg0, "cancel", this.noX, this.noY, this.noW, this.noH, var10, var11, -1096636);
        var16.popMatrix();
        return;
    }

    private void labelValue(class_332 arg0, int arg1, int arg2, String arg3, String arg4, int arg5) {
        arg0.method_51433(this.field_22793, arg3, arg1, arg2, -11709599, false);
        arg0.method_51433(this.field_22793, arg4, (arg1 + 42), arg2, arg5, false);
        return;
    }

    private void drawButton(class_332 arg0, String arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8) {
        if (arg6 < arg2) goto L36;
        if (arg6 >= (arg2 + arg4)) goto L36;
        if (arg7 < arg3) goto L36;
        if (arg7 >= (arg3 + arg5)) goto L36;
        var stack0 = 1;
        goto L37;
    L36:
        stack0 = 0;
    L37:
        int var10 = stack0;
        if (var10 == 0) goto L49;
        stack0 = -15000028;
        goto L51;
    L49:
        stack0 = -15329251;
    L51:
        int var11 = stack0;
        arg0.method_25294(arg2, arg3, (arg2 + arg4), (arg3 + arg5), var11);
        stack0 = this;
        var stack1 = arg0;
        var stack2 = arg2;
        var stack3 = arg3;
        var stack4 = (arg2 + arg4);
        var stack5 = (arg3 + arg5);
        if (var10 == 0) goto L95;
        var stack6 = arg8;
        goto L97;
    L95:
        stack6 = -14276046;
    L97:
        stack0.outline(stack1, stack2, stack3, stack4, stack5, stack6);
        int var12 = this.field_22793.method_1727(arg1);
        Objects.requireNonNull(this.field_22793);
        stack0 = arg0;
        stack1 = this.field_22793;
        stack2 = arg1;
        stack3 = (arg2 + ((arg4 - var12) / 2));
        stack4 = (arg3 + ((arg5 - 9) / 2));
        if (var10 == 0) goto L153;
        stack5 = arg8;
        goto L155;
    L153:
        stack5 = -1644565;
    L155:
        stack0.method_51433(stack1, stack2, stack3, stack4, stack5, false);
        return;
    }

    public boolean method_25402(class_11909 arg0, boolean arg1) {
        int var3 = Math.round((((float) arg0.comp_4798()) / this.uiScale));
        int var4 = Math.round((((float) arg0.comp_4799()) / this.uiScale));
        if (var3 < this.yesX) goto L79;
        if (var3 >= (this.yesX + this.yesW)) goto L79;
        if (var4 < this.yesY) goto L79;
        if (var4 >= (this.yesY + this.yesH)) goto L79;
        this.confirm();
        return true;
    L79:
        if (var3 < this.noX) goto L129;
        if (var3 >= (this.noX + this.noW)) goto L129;
        if (var4 < this.noY) goto L129;
        if (var4 >= (this.noY + this.noH)) goto L129;
        this.cancel();
        return true;
    L129:
        return super.method_25402(arg0, arg1);
    }

    public boolean method_25404(class_11908 arg0) {
        int var2 = arg0.comp_4795();
        if (var2 == 257) goto L25;
        if (var2 == 335) goto L25;
        if (var2 != 89) goto L31;
    L25:
        this.confirm();
        return true;
    L31:
        if (var2 == 256) goto L44;
        if (var2 != 78) goto L50;
    L44:
        this.cancel();
        return true;
    L50:
        return super.method_25404(arg0);
    }

    private void confirm() {
        if (!this.acted) goto L8;
        return;
    L8:
        this.acted = true;
        PaymentIntercept.markConfirmed();
        var var1 = class_310.method_1551();
        if (var1.field_1724 == null) goto L41;
        var1.field_1724.field_3944.method_45730(this.rawCommand);
    L41:
        var1.method_29970(null);
        return;
    }

    private void cancel() {
        if (!this.acted) goto L8;
        return;
    L8:
        this.acted = true;
        class_310.method_1551().method_29970(null);
        return;
    }

    public void method_25419() {
        if (this.acted) goto L11;
        this.cancel();
    L11:
        return;
    }

    private void outline(class_332 arg0, int arg1, int arg2, int arg3, int arg4, int arg5) {
        arg0.method_25294(arg1, arg2, arg3, (arg2 + 1), arg5);
        arg0.method_25294(arg1, (arg4 - 1), arg3, arg4, arg5);
        arg0.method_25294(arg1, arg2, (arg1 + 1), arg4, arg5);
        arg0.method_25294((arg3 - 1), arg2, arg3, arg4, arg5);
        return;
    }
}

Methods declared

public void <init>(java.lang.String, long, java.lang.String)
protected void method_25426()
public boolean method_25421()
public boolean method_25422()
public void method_25394(net.minecraft.class_332, int, int, float)
private void labelValue(net.minecraft.class_332, int, int, java.lang.String, java.lang.String, int)
private void drawButton(net.minecraft.class_332, java.lang.String, int, int, int, int, int, int, int)
public boolean method_25402(net.minecraft.class_11909, boolean)
public boolean method_25404(net.minecraft.class_11908)
private void confirm()
private void cancel()
public void method_25419()
private void outline(net.minecraft.class_332, int, int, int, int, int)

Fields

private static final int PANEL_W
private static final int PANEL_H
private static final long ANIM_MS
private final java.lang.String recipient
private final long amount
private final java.lang.String rawCommand
private long openedAtMs
private boolean acted
private float uiScale
private int yesX
private int yesY
private int yesW
private int yesH
private int noX
private int noY
private int noW
private int noH

Calls out to

dev.mishka.gamblerplus.client.AmountFormat.pretty(long) : java.lang.String
dev.mishka.gamblerplus.client.PaymentIntercept.markConfirmed()
dev.mishka.gamblerplus.client.Theme.easeOutCubic(float) : float
boolean dev.mishka.gamblerplus.client.VerifyPaymentScreen.acted
long dev.mishka.gamblerplus.client.VerifyPaymentScreen.amount
dev.mishka.gamblerplus.client.VerifyPaymentScreen.cancel()
dev.mishka.gamblerplus.client.VerifyPaymentScreen.confirm()
dev.mishka.gamblerplus.client.VerifyPaymentScreen.drawButton(net.minecraft.class_332, java.lang.String, int, int, int, int, int, int, int)
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.field_22789
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.field_22790
net.minecraft.class_327 dev.mishka.gamblerplus.client.VerifyPaymentScreen.field_22793
dev.mishka.gamblerplus.client.VerifyPaymentScreen.labelValue(net.minecraft.class_332, int, int, java.lang.String, java.lang.String, int)
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.noH
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.noW
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.noX
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.noY
long dev.mishka.gamblerplus.client.VerifyPaymentScreen.openedAtMs
dev.mishka.gamblerplus.client.VerifyPaymentScreen.outline(net.minecraft.class_332, int, int, int, int, int)
java.lang.String dev.mishka.gamblerplus.client.VerifyPaymentScreen.rawCommand
java.lang.String dev.mishka.gamblerplus.client.VerifyPaymentScreen.recipient
float dev.mishka.gamblerplus.client.VerifyPaymentScreen.uiScale
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.yesH
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.yesW
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.yesX
int dev.mishka.gamblerplus.client.VerifyPaymentScreen.yesY
java.lang.Math.min(float, float) : float
java.lang.Math.round(float) : int
java.lang.System.currentTimeMillis() : long
java.util.Objects.requireNonNull(java.lang.Object) : java.lang.Object
net.minecraft.class_11908.comp_4795() : int
net.minecraft.class_11909.comp_4798() : double
net.minecraft.class_11909.comp_4799() : double
net.minecraft.class_2561.method_43470(java.lang.String) : net.minecraft.class_5250
net.minecraft.class_746 net.minecraft.class_310.field_1724
net.minecraft.class_327 net.minecraft.class_310.field_1772
net.minecraft.class_310.method_1551() : net.minecraft.class_310
net.minecraft.class_310.method_29970(net.minecraft.class_437)
net.minecraft.class_327.method_1727(java.lang.String) : int
net.minecraft.class_332.method_25294(int, int, int, int, int)
net.minecraft.class_332.method_51433(net.minecraft.class_327, java.lang.String, int, int, int, boolean)
net.minecraft.class_332.method_51448() : org.joml.Matrix3x2fStack
net.minecraft.class_437.<init>(net.minecraft.class_310, net.minecraft.class_327, net.minecraft.class_2561)
net.minecraft.class_437.method_25402(net.minecraft.class_11909, boolean) : boolean
net.minecraft.class_437.method_25404(net.minecraft.class_11908) : boolean
net.minecraft.class_634.method_45730(java.lang.String)
net.minecraft.class_634 net.minecraft.class_746.field_3944
org.joml.Matrix3x2fStack.popMatrix() : org.joml.Matrix3x2fStack
org.joml.Matrix3x2fStack.pushMatrix() : org.joml.Matrix3x2fStack
org.joml.Matrix3x2fStack.scale(float, float) : org.joml.Matrix3x2f
org.joml.Matrix3x2fStack.translate(float, float) : org.joml.Matrix3x2f

Text compiled into the class

Confirm payment
confirm large payment
to
amount
this is above your verify threshold.
confirm
cancel