import java.awt.*; import java.awt.event.*; public class Gallows extends Frame implements MouseListener { int wrongGuesses; // number of wrong guesses String lettersUsed, // letters used by the player so far partialWord; // partially-guessed phrase, filled // with '-' characters where letters are // still missing and ' ' characters to int size; // show breaks between words Point cursor; // Open a graphics window and initialize the game's variables public Gallows (int s, int l) { setTitle("The Gallows"); setSize(s, s); setLocation(l,10); setVisible(true); size = s; } public void paint(Graphics g) { int[] p = {0, size/10, 2*size/10, 3*size/10, 4*size/10, 5*size/10, 6*size/10, 7*size/10, 8*size/10, 9*size/10, 95*size/100}; // draw the gallows g.drawLine(p[1], p[8], p[4], p[8]); // bottom of gallows g.drawLine(p[2], p[1], p[2], p[8]); // vertical post g.drawLine(p[2], p[1], p[6], p[1]); // top bar g.drawLine(p[6], p[1], p[6], p[2]); // rope if (wrongGuesses > 0) // head g.drawOval(p[5], p[2], p[2], p[2]); if (wrongGuesses > 1) // torso g.drawLine(p[6], p[4], p[6], p[7]); if (wrongGuesses > 2) // arm g.drawLine(p[5], p[5], p[6], p[6]); if (wrongGuesses > 3) // arm g.drawLine(p[7], p[5], p[6], p[6]); if (wrongGuesses > 4) // leg g.drawLine(p[5], p[8], p[6], p[7]); if (wrongGuesses > 5) // leg g.drawLine(p[7], p[8], p[6], p[7]); // display the partially-guessed secret word g.drawString("Secret phrase: " + partialWord, p[1], p[9]); // display all the letters used so far g.drawString("Letters guessed so far: " + lettersUsed, p[1], p[10]); } public void showGallows (String pw, int wg, String lu) { partialWord = pw; wrongGuesses = wg; lettersUsed = lu; repaint(); } public void mouseClicked(MouseEvent e) { cursor = e.getPoint(); repaint(); } public void mouseReleased(MouseEvent e) { } public void mousePressed(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } }