Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package myPackage;
- import java.awt.Color;
- import java.awt.Graphics;
- import javax.swing.JPanel;
- public class Dice extends JPanel {
- private static final long serialVersionUID = 1L;
- boolean topLeft;
- boolean topMid;
- boolean topRight;
- boolean midLeft;
- boolean midMid;
- boolean midRight;
- boolean bottomLeft;
- boolean bottomMid;
- boolean bottomRight;
- public Dice(int value) {
- Dice toRoll;
- switch (value) {
- case 1:
- toRoll = new Dice(false, false, false, false, true, false, false, false, false);
- break;
- case 2:
- System.out.println("Throwing 2");
- toRoll = new Dice(true, false, false, false, false, false, false, false, true);
- break;
- default:
- System.out.println("Default.");
- break;
- }
- }
- public Dice(boolean _topLeft, boolean _topMid, boolean _topRight, boolean _midLeft, boolean _midMid, boolean _midRight, boolean _bottomLeft, boolean _bottomMid, boolean _bottomRight) {
- System.out.println("Creating dice");
- topLeft = _topLeft;
- topMid = _topMid;
- topRight = _topRight;
- midLeft = _midLeft;
- midMid = _midMid;
- midRight = _midRight;
- bottomLeft = _bottomLeft;
- bottomMid = _bottomMid;
- bottomRight = _bottomRight;
- System.out.println("In Dice constructor, top left is " + topLeft);
- repaint();
- }
- public void paintComponent(Graphics g) {
- super.paintComponent(g);
- System.out.println("In paintComponent, top left is " + topLeft);
- setLayout(null);
- int cubePosX = 200; //Top left of object on x axis
- int cubePosY = 100; //Top left of object on y axis
- int cubeSizeX = 250; //Size of the object on x axis
- int cubeSizeY = 250; //Size of the object on y axis
- g.setColor(Color.black);
- g.drawRoundRect(cubePosX, cubePosY, cubeSizeX, cubeSizeY, 15, 15);
- int step = 75; //Units between dots
- int dotSizeX = 25;
- int dotSizeY = 25;
- int dotPosX = 0;
- int dotPosY = 0;
- int xMiddle = (int)cubePosX + cubeSizeX / 2;
- int yMiddle = (int)cubePosY + cubeSizeY / 2;
- int offsetX = (int)dotSizeX / -2;
- int offsetY = (int)dotSizeY / -2;
- System.out.print("Drawing ");
- if(topLeft) {
- System.out.print("tl ");
- dotPosX = xMiddle - step + offsetX;
- dotPosY = yMiddle - step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(topMid) {
- System.out.print("tm ");
- dotPosX = xMiddle + offsetX;
- dotPosY = yMiddle - step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(topRight) {
- System.out.print("tr ");
- dotPosX = xMiddle + step + offsetX;
- dotPosY = yMiddle - step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(midLeft) {
- System.out.print("ml ");
- dotPosX = xMiddle - step + offsetX;
- dotPosY = yMiddle + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(midMid) {
- System.out.print("mm ");
- dotPosX = xMiddle + offsetX;
- dotPosY = yMiddle + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(midRight) {
- System.out.print("mr ");
- dotPosX = xMiddle + step + offsetX;
- dotPosY = yMiddle + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(bottomLeft) {
- System.out.print("bl ");
- dotPosX = xMiddle - step + offsetX;
- dotPosY = yMiddle + step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(bottomMid) {
- System.out.print("bm ");
- dotPosX = xMiddle + offsetX;
- dotPosY = yMiddle + step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- if(bottomRight) {
- System.out.print("br ");
- dotPosX = xMiddle + step + offsetX;
- dotPosY = yMiddle + step + offsetY;
- g.fillOval(dotPosX, dotPosY, dotSizeX, dotSizeY);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement