import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class InputScreen extends JFrame { private JTextField colsField, rowsField, trapChanceField, powerUpChanceField; private JButton playButton; public InputScreen() { setTitle("Maze settings"); setSize(300, 250); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setLayout(new GridLayout(5, 2, 5, 5)); add(new JLabel("Col number:")); colsField = new JTextField("10"); add(colsField); add(new JLabel("Row number:")); rowsField = new JTextField("10"); add(rowsField); add(new JLabel("Trap Probality (%):")); trapChanceField = new JTextField("5"); add(trapChanceField); add(new JLabel("PowerUp Probality (%):")); powerUpChanceField = new JTextField("3"); add(powerUpChanceField); playButton = new JButton("Play"); add(new JLabel()); // boşluk için add(playButton); playButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { startGame(); } }); setVisible(true); } private void startGame() { try { int cols = Integer.parseInt(colsField.getText()); int rows = Integer.parseInt(rowsField.getText()); int trapChance = Integer.parseInt(trapChanceField.getText()); int powerUpChance = Integer.parseInt(powerUpChanceField.getText()); JFrame frame = new JFrame("Maze Game"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(new MazeManager(cols, rows, trapChance, powerUpChance)); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); this.dispose(); // input ekranını kapat } catch (NumberFormatException ex) { JOptionPane.showMessageDialog(this, "enter valid number.", "error", JOptionPane.ERROR_MESSAGE); } } public static void main(String[] args) { new InputScreen(); } }