Делаю лаунчер майнкрафт по гайду и не пойму в чём проблема

Рейтинг: 1Ответов: 0Опубликовано: 19.02.2023
  1. Я только учу джаву так что многие базовые вещи могу не знать, но всё же решил написать простенький лаунчер на майнкрафт
  2. в main после нажатия на кнопку войти вместо данных пишет следующее (если надо остальное скажите):

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1 at com.vanhester.demo2/com.vanhester.demo2.Main.lambda$new$0(Main.java:58) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6626) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389) at java.desktop/java.awt.Component.processEvent(Component.java:6391) at java.desktop/java.awt.Container.processEvent(Container.java:2266) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:746) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:744) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:743) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

  1. А вот и сам main:

import com.vanhester.demo2.settings.GuardUtil;
import com.vanhester.demo2.settings.Util;

import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.*;

public class Main extends JFrame {

    public static String[] AuthData = null;
    public static boolean Version = false;

    public static JPanel MainPane;
    public static Box MBox;
    public static JLabel LgLabel = new JLabel("Логин");
    public JTextField LgFid = new JTextField(20);
    public static JLabel PassLabel = new JLabel("Пароль");
    public JPasswordField PassFid = new JPasswordField(20);
    public JButton lgbut = new JButton("Войти");

    public Main() {
        setTitle("RdcLauncher_alpha");
        setBackground(Color.RED);
        this.setSize(new Dimension(800, 600));
        this.setResizable(false);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        MainPane = new JPanel();
        MainPane.setBackground(Color.RED);

        Box loginb = Box.createHorizontalBox();
        loginb.add(LgLabel);
        loginb.add(Box.createHorizontalStrut(8));
        loginb.add(LgFid);
        Box passb = Box.createHorizontalBox();
        passb.add(PassLabel);
        passb.add(Box.createHorizontalStrut(8));
        passb.add(PassFid);
        Box butb = Box.createHorizontalBox();
        butb.add(lgbut);
        LgLabel.setPreferredSize(PassLabel.getPreferredSize());
        MBox = Box.createVerticalBox();
        MBox.setBorder(new EmptyBorder(10, 10, 10, 10));
        MBox.add(loginb);
        MBox.add(Box.createVerticalStrut(15));
        MBox.add(passb);
        MBox.add(Box.createVerticalStrut(15));
        MBox.add(lgbut);
        MainPane.add(MBox);

        this.getContentPane().add(MainPane);

        lgbut.addActionListener(ev -> {
            if ((!LgFid.getText().equals("")) && (!new String(PassFid.getPassword()).equals(""))) {
                if (Authorize(LgFid.getText(), new String(PassFid.getPassword()))) {
                    JOptionPane.showMessageDialog(null, "Вы вашли!\n\nЛогин: " + AuthData[1]
                            + "\nПароль: " + AuthData[0]
                            + "\nСессия: " + AuthData[2], 
                            "Лох!",                                       
                            JOptionPane.INFORMATION_MESSAGE);
                } else if (Version) {
                    JOptionPane.showMessageDialog(null,
                            "У ВАС УСТАРЕЛ ЛАУНЧЕР",
                            "хз",
                            JOptionPane.WARNING_MESSAGE);
                } else {
                    JOptionPane.showMessageDialog(null,
                            "Вы ввели неверный логин или parol",
                            "хз",
                            JOptionPane.WARNING_MESSAGE);
                }
            } else {
                JOptionPane.showMessageDialog(null,
                        "Проверьте данные",
                        "Ашибка",
                        JOptionPane.WARNING_MESSAGE);
            }
        });
    }

    public static boolean Authorize(final String user, final String pass) {
        String AuthResult = Util.Connect("http://ivanmaz0.beget.tech/auth.php", "a=auth" + "&user" + user + "&password" + GuardUtil.ShaHash(pass));

        if (AuthResult == null) {
            return false;
        }

        switch (AuthResult) {
            case "Bad Login":
                return false;
            case "WV":
                Version = true;
                return false;
            default:
                try {
                    AuthData = AuthResult.split("<>");
                    return true;
                } catch (Exception ex) {
                    return false;
                }
        }
    }

    public static void main(String[] args) {
        try {
            for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    UIManager.setLookAndFeel(info.getClassName());
                }
            }
        } catch (Exception ex) {
            throw new RuntimeException(ex);
        }

        Main frame = new Main();
        frame.show();
    }
}
`



Ответы

Ответов пока нет.