old-java-games

java games my brother and I developed as kids.
Log | Files | Refs | README

CaveGame.java (2495B)


      1 import java.awt.Color;
      2 import java.awt.event.KeyEvent;
      3 import java.awt.event.KeyListener;
      4 
      5 import javax.swing.JFrame;
      6 
      7 //* Copyright (c) Mary Percival 2003                          */
      8 /* CaveGame game                      Created December 2003   */
      9 
     10 public class CaveGame extends JFrame implements KeyListener, Runnable {
     11     private static final long serialVersionUID = -4869537669824700402L;
     12     private static final int WIDTH = 613;
     13     private static final int HEIGHT = 482;
     14     private static CaveArea area;
     15     CaveInterface currentCavern;
     16     static Thread timer;
     17 
     18     // *************************************************************
     19     public static void main(String[] args) {
     20         CaveGame caveGame = new CaveGame();
     21 
     22         caveGame.setLayout(null);
     23         caveGame.setBackground(Color.white);
     24         caveGame.setSize(WIDTH, HEIGHT);
     25         caveGame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     26         caveGame.setTitle("Cave Game");
     27 
     28         area = new CaveArea(caveGame);
     29         caveGame.add(area);
     30 
     31         caveGame.setVisible(true);
     32         //area.setBounds(0, 0, caveGame.getBounds().width, caveGame.getBounds().height);
     33         area.setBounds(0, 0, WIDTH, HEIGHT);
     34         area.setVisible(true);
     35 
     36         caveGame.addKeyListener(caveGame);
     37         area.addKeyListener(caveGame);
     38         area.requestFocus();
     39         caveGame.currentCavern = new FirstRoom(caveGame, area);
     40         caveGame.currentCavern.display();
     41         timer = new Thread(caveGame);
     42         timer.start();
     43     }
     44 
     45     // this class will use just the key pressed event
     46     @Override
     47     public void keyPressed(KeyEvent e) {
     48         if (e.getKeyCode() == KeyEvent.VK_A) {
     49             currentCavern = currentCavern.processA();
     50             currentCavern.display();
     51             area.repaint();
     52         } else if (e.getKeyCode() == KeyEvent.VK_B) {
     53             currentCavern = currentCavern.processB();
     54             currentCavern.display();
     55             area.repaint();
     56         } else if (e.getKeyCode() == KeyEvent.VK_C) {
     57             currentCavern = currentCavern.processC();
     58             currentCavern.display();
     59             area.repaint();
     60         } else if (e.getKeyCode() == KeyEvent.VK_ENTER) {
     61             currentCavern = new FirstRoom(this, area);
     62             currentCavern.display();
     63             area.repaint();
     64         }
     65     }
     66 
     67     @Override
     68     public void keyReleased(KeyEvent e) {
     69     }
     70 
     71     @Override
     72     public void keyTyped(KeyEvent e) {
     73     }
     74 
     75     @Override
     76     public void run() {
     77     }
     78 }