红色骰子 我正在为班级制作一个掷骰子游戏,但我无法完成代码,因为我不知道如何在骰子上绘制实际的点数。我有表格和实际的骰子,只是没有骰子上的点数。我需要帮助来画它们。这些骰子是红色的。这是我现在有的:
// Draws a given number of dots on this die
private void drawDots(Graphics g, int x, int y, int numDots)
{
g.setColor(Color.WHITE);
int dotSize = dieSize / 4;
int step = dieSize / 8;
int x1 = x + step - 1;
int x2 = x + 3*step;
int x3 = x + 5*step + 1;
int y1 = y + step - 1;
int y2 = y + 3*step;
int y3 = y + 5*step + 1;
switch (numDots)
{
case 1:
g.fillOval(x2, y2, dotSize, dotSize);
break;
case 2:
g.fillOval(x3, y1, dotSize, dotSize);
g.fillOval(x1, y3, dotSize, dotSize);
break;
case 3:
g.fillOval(x1, y1, dotSize, dotSize);
g.fillOval(x2, y2, dotSize, dotSize);
g.fillOval(x3, y3, dotSize, dotSize);
break;
case 4:
g.fillOval(x1, y1, dotSize, dotSize);
g.fillOval(x3, y3, dotSize, dotSize);
g.fillOval(x1, y3, dotSize, dotSize);
g.fillOval(x3, y3, dotSize, dotSize);
break;
case 5:
g.fillOval(x1, y1, dotSize, dotSize);
g.fillOval(x2, y2, dotSize, dotSize);
g.fillOval(x3, y1, dotSize, dotSize);
g.fillOval(x1, y3, dotSize, dotSize);
g.fillOval(x3, y3, dotSize, dotSize);
break;
case 6:
g.fillOval(x1, y1, dotSize, dotSize);
g.fillOval(x2, y1, dotSize, dotSize);
g.fillOval(x3, y1, dotSize, dotSize);
g.fillOval(x1, y3, dotSize, dotSize);
g.fillOval(x2, y3, dotSize, dotSize);
g.fillOval(x3, y3, dotSize, dotSize);
break;
}
}
}
我不知道我做错了什么。当我运行它时,骰子会滚动,但上面并没有显示任何点数。
System.out.println("ducks may moo sometimes");
。同时将颜色设置为屏幕上其他地方没有的颜色,如果背景是白色,则将点设置为黑色,以防它们被呈现在骰子之外。 - phflack