1. We have moved from vBulletin to XenForo and you are viewing the site in the middle of the move. Though the functional aspect of everything is working fine, we are still working on other changes including the new design on Xenforo.
    Dismiss Notice

help with the codes

Discussion in 'Java' started by makarov, Nov 15, 2009.

  1. makarov

    makarov New Member

    This applet should generate 3 random colours, in the 3 coloured boxes to simulate the rolling of 3 dice. The player choose in the 3 drop down menu below the dice as guesses for what will be thrown.
    When the button is is pressed, the 3 die are "rolled" and their scores are matched with the guesses in the boxes. The player is told if there are 0, 1, 2 or 3 matches.
     

    Attached Files:

  2. shabbir

    shabbir Administrator Staff Member

    Instead of attaching your code try to post the code which you think is problematic
     
  3. makarov

    makarov New Member

    Code:
    import java.applet.Applet;
    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    public class DiceRoller extends Applet implements ActionListener{
    	
    	
    	private Die d1,d2;
    	private Button btnRoll;
    	
    	
    	public void init(){
    		setSize(220,200);
    		setBackground(Color.green);
    		
    		
    		d1 = new Die(20,40);
    		d2 = new Die(120,40);
    		
    		
    		btnRoll = new Button("ROLL DICE");
    		btnRoll.addActionListener(this);
    		add(btnRoll);
    	}
    	
    	/**
    	 * Display the current values of the 2 dice
    	 */
    	public void paint(Graphics g){
    		d1.display(g);
    		d2.display(g);
    	}
    
    	/**
    	 * When the button is clicked roll the dice.
    	 * 
    	 */
    	public void actionPerformed(ActionEvent ae) {
    		d1.roll();
    		d2.roll();
    		repaint();		
    	}
    }
    
    Code:
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    
    /**
     * Simple class to demonstrate a Die
     * 
     * @author Peter lager
     *
     */
    public class Die {
    
    	private int value;
    	private int posX, posY;
    	private Font font;
    	
    	/**
    	 * Create a new die at the given position and 
    	 * set the initial value to 1
    	 * 
    	 * @param posX
    	 * @param posY
    	 */
    	public Die(int posX, int posY) {
    		this.posX = posX;
    		this.posY = posY;
    		value = 1;
    		font = new Font("Courier", Font.BOLD, 60);
    	}
    	
    	/**
    	 * Set the top left position to display the die
    	 * @param posX
    	 * @param posY
    	 */
    	public void setPos(int posX, int posY){
    		this.posX = posX;
    		this.posY = posY;		
    	}
    
    	/**
    	 * @return the value
    	 */
    	public int getValue() {
    		return value;
    	}
    
    	/**
    	 * @param value the value to set
    	 */
    	public void setValue(int value) {
    		this.value = value;
    	}
    
    	/**
    	 * @param font the font to set
    	 */
    	public void setFont(Font font) {
    		this.font = font;
    	}
    	
    	/**
    	 * Roll the dice to get a random value between 1& 6
    	 */
    	public void roll(){
    		value = (int)(Math.random()*6 + 1);
    	}
    	
    	public void display(Graphics g){
    		g.setColor(Color.yellow);
    		g.fillRect(posX, posY, 80, 80);
    		g.setColor(Color.black);
    		g.drawRect(posX, posY, 80, 80);
    		g.setFont(font);
    		g.drawString(""+value, posX + 20, posY+60);	
    	}
    }
    
     

Share This Page