From a4356f557aa070ee270f771a13a0a5e62d206c97 Mon Sep 17 00:00:00 2001 From: josh Date: Thu, 3 Apr 2008 05:39:31 +0000 Subject: [PATCH] initial import of BlobWars code git-svn-id: svn://anubis/gvsu@96 45c1a28c-8058-47b2-ae61-ca45b979098e --- cs654/final-proj/BlobWars.java | 29 +++++++++++++++++ cs654/final-proj/BlobWarsPanel.java | 22 +++++++++++++ cs654/final-proj/BlobWarsServer.java | 48 ++++++++++++++++++++++++++++ cs654/final-proj/Makefile | 20 ++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 cs654/final-proj/BlobWars.java create mode 100644 cs654/final-proj/BlobWarsPanel.java create mode 100644 cs654/final-proj/BlobWarsServer.java create mode 100644 cs654/final-proj/Makefile diff --git a/cs654/final-proj/BlobWars.java b/cs654/final-proj/BlobWars.java new file mode 100644 index 0000000..ac22133 --- /dev/null +++ b/cs654/final-proj/BlobWars.java @@ -0,0 +1,29 @@ + +import java.awt.*; +import javax.swing.*; +import javax.swing.border.*; + +public class BlobWars extends JFrame +{ + public static void main(String[] args) + { + BlobWars jt = new BlobWars(); + } + + public BlobWars() + { + super("Josh's Blob Wars Game for CS654"); + setSize(400, 500); + setDefaultCloseOperation(EXIT_ON_CLOSE); +// setResizable(false); + getContentPane().add(new JPanel() {{ + setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); + add(new JPanel() {{ + setLayout(new BoxLayout(this, BoxLayout.X_AXIS)); + add(new JLabel("hi!")); + }}); + add(new BlobWarsPanel()); + }}); + setVisible(true); + } +} diff --git a/cs654/final-proj/BlobWarsPanel.java b/cs654/final-proj/BlobWarsPanel.java new file mode 100644 index 0000000..6d81f5d --- /dev/null +++ b/cs654/final-proj/BlobWarsPanel.java @@ -0,0 +1,22 @@ + +import java.awt.*; +import javax.swing.*; +import javax.swing.border.*; + +public class BlobWarsPanel extends JPanel +{ + public BlobWarsPanel() + { + Dimension sz = new Dimension(400, 400); + setMinimumSize(sz); + setPreferredSize(sz); + setMaximumSize(sz); + } + + public void paint(Graphics g) + { +// System.out.println("Width: " + getWidth() + " Height: " + getHeight()); + g.setColor(Color.RED); + g.fillRect(0, 0, 40, 20); + } +} diff --git a/cs654/final-proj/BlobWarsServer.java b/cs654/final-proj/BlobWarsServer.java new file mode 100644 index 0000000..ed5623c --- /dev/null +++ b/cs654/final-proj/BlobWarsServer.java @@ -0,0 +1,48 @@ + +import java.net.*; + +public class BlobWarsServer extends Thread +{ + public static final int PORT = 38491; + + private ServerSocket m_socket; + + public void run() + { + try { + m_socket = new ServerSocket(PORT); + } catch (Exception e) { + return; + } + + for (;;) + { + Socket client; + try { + client = m_socket.accept(); + } catch (Exception e) { + System.out.println("Socket error!"); + break; + } + + /* handle the client in a separate thread */ + Thread t = new Thread(new ClientHandler(client)); + t.start(); + } + } + + private class ClientHandler implements Runnable + { + private Socket m_socket; + + public ClientHandler(Socket socket) + { + m_socket = socket; + System.out.println("Incoming connection from " + m_socket.getInetAddress().getAddress()); + } + + public void run() + { + } + } +} diff --git a/cs654/final-proj/Makefile b/cs654/final-proj/Makefile new file mode 100644 index 0000000..925f973 --- /dev/null +++ b/cs654/final-proj/Makefile @@ -0,0 +1,20 @@ + +MAINCLASS := BlobWars + +all: $(patsubst %.java,%.class,$(wildcard *.java)) + +%.class: %.java + javac $^ + +.PHONY: run +run: + java $(MAINCLASS) + +.PHONY: javadoc +javadoc: + -mkdir doc + javadoc -d doc *.java + +clean: + -rm -f *.class + -rm -rf doc