私は1つのボタンがあります:Gooi 私はお互いの後にサイコロを投げることができる2人の選手がいます。そこで、プレーヤー1がスローされ、プレーヤー1がスローされ、プレーヤー2がスローされます。私はそれをどうやって行うのか分かりません。私はwhileまたはforループを使用して、プレーヤーの順番を確認する必要があるかどうかわかりません。ボタンクリックでプレーヤーを切り替えるにはどうすればよいですか?
マイコード:
package Opdrachten;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.*;
public class spel extends JPanel {
private JButton knop;
private boolean geklikt, player1, player2;
private JLabel speler1, speler2, plekOpBord, gegooid, bijzonderheid;
Random rand = new Random();
int waardeP1 = rand.nextInt(6) + 1;
int waardeP2 = rand.nextInt(6) + 1;
int optelP1 = 0;
int optelP2 = 0;
public spel() {
setBackground(Color.WHITE);
knop = new JButton("Gooi");
knop.addActionListener(new KnopHandler());
knop.setBounds(20,20, 100,20);
speler1 = new JLabel("Speler 1");
speler2 = new JLabel("Speler 2");
speler1.setBounds(20, 50, 50, 50);
speler2.setBounds(20, 80, 50, 50);
gegooid = new JLabel("");
gegooid.setBounds(140, 5, 150, 50);
plekOpBord = new JLabel("Plek op het bord");
plekOpBord.setBounds(140, 35, 100,50);
bijzonderheid = new JLabel("Bijzonderheid");
bijzonderheid.setBounds(260, 35, 100,50);
add(knop);
add(gegooid);
add(speler1);
add(speler2);
add(plekOpBord);
add(bijzonderheid);
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
if(geklikt) {
optelP1 += waardeP1;
g.drawString("Speler 1 " + " heeft " + waardeP1 + " gegooid", 150,40);
g.drawString(""+optelP1, 175, 85);
}
if (optelP1 == 3) {
g.drawString("Bokkesprong", 260, 85);
}
if (optelP1 == 6) {
g.drawString("Brug", 260, 85);
}
if (optelP1 == 15) {
g.drawString("Vogelkooi", 260, 85);
}
if(optelP1 == 19){
g.drawString("Hotel", 260, 85);
}
if(optelP1 == 26){
g.drawString("Dobbelsteenvakje", 260, 85);
}
if(optelP1 == 31){
g.drawString("Put", 260, 85);
}
if(optelP1 == 39){
g.drawString("Trap", 260, 85);
}
if(optelP1 == 42){
g.drawString("Labyrint", 260, 85);
}
if(optelP1 == 52){
g.drawString("Gevangenis", 260, 85);
}
if(optelP1 == 58){
g.drawString("Graf", 260, 85);
}
if(optelP1 == 63){
g.drawString("Zonsondergang", 260, 85);
}
if(geklikt) {
optelP2 += waardeP2;
//g.drawString("Speler 1 " + " heeft " + waardeP2 + " gegooid", 150,40);
g.drawString(""+optelP2, 175, 110);
}
if (optelP2 == 3) {
g.drawString("Bokkesprong", 260, 110);
}
if (optelP2 == 6) {
g.drawString("Brug", 260, 110);
}
if (optelP2 == 15) {
g.drawString("Vogelkooi", 260, 110);
}
if(optelP2 == 19){
g.drawString("Hotel", 260, 110);
}
if(optelP2 == 26){
g.drawString("Dobbelsteenvakje", 260, 110);
}
if(optelP2 == 31){
g.drawString("Put", 260, 110);
}
if(optelP2 == 39){
g.drawString("Trap", 260, 110);
}
if(optelP2 == 42){
g.drawString("Labyrint", 260, 110);
}
if(optelP2 == 52){
g.drawString("Gevangenis", 260, 110);
}
if(optelP2 == 58){
g.drawString("Graf", 260, 110);
}
if(optelP2 == 63){
g.drawString("Zonsondergang", 260, 110);
}
}
class KnopHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
geklikt = true;
waardeP1 = rand.nextInt(6) + 1; // get another random number
waardeP2 = rand.nextInt(6) + 1; // get another random number
repaint();
}
}
}