Pac-Man

From Xdw

It's freaking Pac-Man!

I don't know why it's retarded.

[edit] The Kuldeep Way

package kulpac;

import java.awt.*; import javax.swing.*; import java.awt.event.*;

/**

* @author  Kuldeep Gaindawood
* @version 1.0, 2009-06-15
*/

public class Pacman extends JFrame implements ActionListener {

   JPanel mainPanel;
   CustomCanvas drawingArea;
   JButton newGameB, highScoreB;
   public static void main(String args[]) {
       try {
           UIManager.setLookAndFeel(
                   UIManager.getSystemLookAndFeelClassName());
       } catch (Exception ballsAreAnException) {
       }
       Pacman frame = new Pacman();
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
   public Pacman() {
       super("Pacman Game");
       setSize(400, 550);
       //setLocation (0, 50);
       setResizable(false);
       //////// BUTTONS
       // newGameB = new JButton (paintMethod1 ());
       // highScoreB = new JButton (paintMethod2 ());
       //////// TEXTFIELDS
       //////// LABELS
       //////// LISTS
       //////// PANELS
       //////// CANVAS
       drawingArea = new CustomCanvas();
       mainPanel = (JPanel) getContentPane();
       mainPanel.setLayout(new BorderLayout());
       mainPanel.add(drawingArea);
       setVisible(true);
   }
   public void actionPerformed(ActionEvent e) {
   }

}

class CustomCanvas extends Canvas {

   public CustomCanvas() {
       setBackground((Color.black));
   }
   public void paint(Graphics g) {
       Graphics2D g2;
       g2 = (Graphics2D) g;
       Image img = Toolkit.getDefaultToolkit().getImage(getClass().getResource("images/pac.gif"));
       g2.drawImage(img, 0, 0, this);
   }

}

--38.116.200.43 11:22, 3 June 2009 (PDT)

[edit] The Tyler Way

package engine;

import java.awt.Canvas; import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics2D; import java.awt.Image; import java.awt.Toolkit; import java.awt.image.BufferStrategy; import javax.swing.JFrame; import javax.swing.JPanel;

/**

* The main game executable. Creates and handle the game window and its enclosed
* entities.
*
* @author  Hauskaz
* @version 1.0, 2009-05-28
*/

public class Main extends Canvas {

   /**
    * The main method. Creates an intstance of this class to get the ball
    * rolling.
    *
    * @param args  the command line arguments, ignored in this case
    */
   public static void main(String[] args) {
       new Main();
   }
   // the BufferStrategy for accelerated graphics drawing
   private BufferStrategy strategy;
   // the master switch for whether the game is running or not
   private boolean gameRunning = true;
   // the difference between refreshes, used to determine FPS and how far to
   // move entities to compensate
   private long delta;
   // used for finding the delta
   private long lastLoopTime = 0;
   // the graphics context where all the stuff will be drawn on
   Graphics2D g;
   /**
    * The game's main constructor. Sets up and runs the rendering process.
    */
   Main() {
       // main window
       JFrame frame = new JFrame("Test");
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       // creates a Panel and sets the size of it
       JPanel masterPanel = (JPanel) frame.getContentPane();
       masterPanel.setPreferredSize(new Dimension(800, 600));
       masterPanel.setLayout(null);
       // sets the size of the canvas and adds it to the pane
       setBounds(0, 0, 800, 600);
       masterPanel.add(this);
       // turns off Canvas repainting since it will be handled in accelerated
       // mode
       setIgnoreRepaint(true);
       // size and display the window
       frame.pack();
       frame.setResizable(false);
       frame.setVisible(true);
       // initializes the buffer strategy which will allow AWT to manage
       // accelerated graphics
       // double buffering should suffice
       createBufferStrategy(2);
       strategy = getBufferStrategy();
       Image packer = Toolkit.getDefaultToolkit().getImage(getClass().getResource("images/pac.gif"));
       int x = 0;
       int y = 0;
       // game loop
       while (gameRunning) {
           // determine the length of time since the last update, used to
           // determine how far to move entities in this loop
           delta = System.currentTimeMillis() - lastLoopTime;
           lastLoopTime = System.currentTimeMillis();
           // grab a graphics context and blank it
           g = (Graphics2D) strategy.getDrawGraphics();
           g.setColor(Color.black);
           g.fillRect(0, 0, 800, 600);
           // draw stuff
           x += 4;
           g.drawImage(packer, x, y, this);


           // drawing is done, dump the graphics and flip the buffer
           g.dispose();
           strategy.show();
           // pause (delay should equate to 100 FPS)
           try {
               Thread.sleep(10);
           } catch (Exception e) {
               System.out.println("Unknown framerate error.");
           }
       }
   }

}

Personal tools