Ola estou fazendo um jogo de Purrinha(Porrinha ou jogo dos Palitinhos). O erro e o Seguinte quando o jogador vai escolher quantos palitos ele vai jogar se ele escolher 3 que e o JButton que esta mais a direita do monitor e depois quando ele vai tentar chutar o numero final dos palitinhos da erro fala que no JEditorPanel esta sem nada escrito eu ja fiz alguns testes e descobri que esse problema sempre acontece com o JButton que esta mais a direita do Monitor.
Aqui esta o Codigo da Classe:
@Override
public void paintComponent(Graphics g) {
setLayout(null);
jt = new JEditorPane();
jt.setEditable(true);
jt.setBackground(new Color(0,38,123));
jt.setBorder(BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0),3));
jt.setDisabledTextColor(new Color(0,0,0,0));
jt.setSelectionColor(new Color(0,0,0,0));
jt.setSelectedTextColor(Color.WHITE);
jt.setForeground(Color.WHITE);
jt.setFont(new Font("Tw Can MT Condensed Extra Bold", Font.PLAIN, 85)); // NOI18N
jt.setCursor(new java.awt.Cursor(java.awt.Cursor.TEXT_CURSOR));
jt.setSize(115, 115);
jt.setLocation(744, 716);
jt.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if ((int)e.getKeyChar() == 8)return;
if ((e.getKeyChar()+"").equals("\n")) {
Stats.Chute.put("Player", Integer.parseInt(jt.getText().replace("\n", "")));
Stats.PartidaModelo=3;
remove(jt);
repaint();
revalidate();
}
}
@Override
public void keyTyped(KeyEvent e) {
if ((e.getKeyChar()+"").equals("\n"))return;
if ((int)e.getKeyChar() == 8)return;
if (jt.getText().length() >= 2) {
Toolkit.getDefaultToolkit().beep();
e.consume();
}
switch((e.getKeyChar()+"")) {
case "0":
case "\n":
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":break;
default:
e.consume();
Toolkit.getDefaultToolkit().beep();
break;
}
}
});
j0 = new JButton(new ImageIcon(getClass().getResource("Images/0.png")));
j0.setRolloverIcon(new ImageIcon(getClass().getResource("Images/0(1).png")));
j0.setBounds(710, 730, 82, 100);
j0.setBorder(null);
j0.addActionListener((ActionEvent e) -> {
remove(j0);
remove(j1);
remove(j2);
remove(j3);
Stats.PartidaModelo=2;
Stats.PalitosColocados.put("Player", 0);
InteligenciaArtificial.RandomNumeroPalitos("Zabot");
repaint();
revalidate();
});
j1 = new JButton(new ImageIcon(getClass().getResource("Images/1.png")));
j1.setRolloverIcon(new ImageIcon(getClass().getResource("Images/1(1).png")));
j1.setBounds(800, 730, 82, 100);
j1.setBorder(null);
j1.addActionListener((ActionEvent e) -> {
remove(j0);
remove(j1);
remove(j2);
remove(j3);
Stats.PartidaModelo=2;
Stats.PalitosColocados.put("Player", 1);
InteligenciaArtificial.RandomNumeroPalitos("Zabot");
repaint();
revalidate();
});
j2 = new JButton(new ImageIcon(getClass().getResource("Images/2.png")));
j2.setRolloverIcon(new ImageIcon(getClass().getResource("Images/2(1).png")));
j2.setBounds(890, 730, 82, 100);
j2.setBorder(null);
j2.addActionListener((ActionEvent e) -> {
remove(j0);
remove(j1);
remove(j2);
remove(j3);
Stats.PartidaModelo=2;
Stats.PalitosColocados.put("Player", 2);
InteligenciaArtificial.RandomNumeroPalitos("Zabot");
repaint();
revalidate();
});
j3 = new JButton(new ImageIcon(getClass().getResource("Images/3.png")));
j3.setRolloverIcon(new ImageIcon(getClass().getResource("Images/3(1).png")));
j3.setBounds(973, 730, 82, 100);
j3.setBorder(null);
j3.addActionListener((ActionEvent e) -> {
remove(j0);
remove(j1);
remove(j2);
remove(j3);
Stats.PartidaModelo=2;
Stats.PalitosColocados.put("Player", 3);
InteligenciaArtificial.RandomNumeroPalitos("Zabot");
repaint();
revalidate();
});
((Graphics2D) g).setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
final Image backgroundImage = imagem.getImage();
double scaleX = getWidth() / (double) backgroundImage.getWidth(null);
double scaleY = getHeight() / (double) backgroundImage.getHeight(null);
AffineTransform xform = AffineTransform.getScaleInstance(scaleX, scaleY);
((Graphics2D) g).drawImage(backgroundImage, xform, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/LocalPalitosVoce.png")).getImage(), 530, 650, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/LocalPalitosZabot.png")).getImage(), 530, -10, this);
switch (Stats.JogadorPalitos.get("Player")) {
case 0:
case 1:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 640, 660, this);break;
case 2:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 640, 660, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 660, 660, this);break;
case 3:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 640, 660, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 660, 660, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 680, 660, this);break;
}
switch (Stats.JogadorPalitos.get("Zabot")) {
case 0:
case 1:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 660, -10, this);break;
case 2:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 660, -10, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 680, 10, this);break;
case 3:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 660, -10, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 680, -10, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/Palito.png")).getImage(), 700, -10, this);break;
}
Sair = new JButton(new ImageIcon(getClass().getResource("Images/BotaoSair.png")));
Sair.setBackground(new Color(0,0,0,0));
Sair.setContentAreaFilled(false);
Sair.setRolloverIcon(new ImageIcon(getClass().getResource("Images/BotaoSair1.png")));
Sair.setBorder(null);
Sair.setVisible(true);
Sair.setBounds(00, 730, 100, 100);
add(Sair);
if (Stats.PartidaModelo == 1) {
Stats.PalitosColocados.clear();
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Tw Can MT Condensed Extra Bold", Font.CENTER_BASELINE, 23));
g2.setColor(Color.WHITE);
g2.drawString("Escolha o Numero de Palitos", 720, 700);
g2.drawString("que voce vai Colocar!", 720, 720);
if (Stats.Rodada > 1) {
add(j0);
if (Stats.JogadorPalitos.get("Player") == 3) {
add(j1);
add(j2);
add(j3);
} else if (Stats.JogadorPalitos.get("Player") == 3) {
add(j1);
add(j2);
add(j3);
} else if (Stats.JogadorPalitos.get("Player") == 2) {
add(j1);
add(j2);
} else if (Stats.JogadorPalitos.get("Player") == 1) {
add(j1);
}
} else {
add(j1);
add(j2);
add(j3);
}
} else if (Stats.PartidaModelo == 2) {
if (Stats.ChuteVez.equals("Zabot")) {
InteligenciaArtificial.Chute("Zabot");
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Tw Can MT Condensed Extra Bold", Font.CENTER_BASELINE, 23));
g2.setColor(Color.WHITE);
g2.drawString("Chutou em: " + Stats.Chute.get("Zabot"), 728, 165);
Stats.ChuteVez = "Player";
} else {
Stats.ChuteVez = "Zabot";
}
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Tw Can MT Condensed Extra Bold", Font.CENTER_BASELINE, 23));
g2.setColor(Color.WHITE);
g2.drawString("Tente acerta o Total de Palitos", 715, 700);
add(jt);
} else if (Stats.PartidaModelo == 3) {
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Tw Can MT Condensed Extra Bold", Font.CENTER_BASELINE, 23));
g2.setColor(Color.WHITE);
g2.drawString("Colocou: ", 715, 700);
g2.drawString("Colocou: ", 728, 165);
g2.drawString("Chutou em: " + Stats.Chute.get("Zabot"), 850, 165);
g2.drawString("Chutou em: " + Stats.Chute.get("Player"), 850, 700);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/+.png")).getImage(), 705, 350, this);
switch(Stats.PalitosColocados.get("Player")) {
case 0:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/0.png")).getImage(), 600, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/0.png")).getImage(), 800, 730, this);
break;
case 1:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/1.png")).getImage(), 600, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/1.png")).getImage(), 800, 730, this);
break;
case 2:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/2.png")).getImage(), 600, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/2.png")).getImage(), 800, 730, this);
break;
case 3:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/3.png")).getImage(), 600, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/3.png")).getImage(), 800, 730, this);
break;
}
switch(Stats.PalitosColocados.get("Zabot")) {
case 0:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/0.png")).getImage(), 810, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/0.png")).getImage(), 820, 25, this);
break;
case 1:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/1.png")).getImage(), 810, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/1.png")).getImage(), 820, 25, this);
break;
case 2:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/2.png")).getImage(), 810, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/2.png")).getImage(), 820, 25, this);
break;
case 3:
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/3.png")).getImage(), 810, 350, this);
((Graphics2D) g).drawImage(new ImageIcon(getClass().getResource("Images/3.png")).getImage(), 820, 25, this);
break;
}
}
}
Por favor me ajude ja quebrei a cabeça por 3 dias seguidos e não comsigo sair do lugar.