2 Replies - 1337 Views - Last Post: 16 April 2009 - 07:16 PM Rate Topic: -----

#1 theamir12   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 1
  • Joined: 16-April 09

java help needed for assigment

Posted 16 April 2009 - 05:29 PM

i have been developing this game however when it comes to making a j panel for it and letting it save its not working and i am getting alot of erorr i need this game to have a panel where a game can be saved and loaded up thanks for your help

import city.soi.platform.*;

import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;

import java.awt.Graphics2D;
import java.awt.Image;
import javax.swing.ImageIcon;
import java.awt.geom.AffineTransform;

import java.awt.*;

/**
 * A very basic platform game.
 */


public class Game extends JPanel implements ActionListener 
{
	/** The player. */
	private Player player;
	
	/** The Enaime. */
	private Killer killer;
	
	/** The width of the world grid. */
	private int width;
	
	/** The height of the world grid. */
	private int height;

	private world currentMap;
	
	/** The ArrayList for maze */
	private ArrayList<Maze>maps;

	
	private int CurrentMap;
	/** A panel in which the game state is displayed. */
	private GameWindow view;

	private int Map;
	  
	private Timer t;
}
	
	
	
	
   public void saveGame()
	{
//	 player.getX() == enemy.getX()
		try {
		BufferedWriter out = new BufferedWriter(new FileWriter("Save.dat"));
		out.write(""+player.getX()+"\n"+player.getY()+"\n");
		out.write(""+enemy.getX()+"\n"+enemy.getY()+"\n");
		out.write(""+player.getLife()+"\n"+player.getScore()+"\n");

		out.close();
	} catch (IOException e) {
	}

	
	
		
		
	}
	
	
	public void loadGame()
	{
	 
		try {
		BufferedReader in = new BufferedReader(new FileReader("Save.dat"));
		String str1,str2;
		str1 = in.readLine();
		str2 = in.readLine();
		player.setPosition(Integer.parseInt(""+str1),Integer.parseInt(""+str2));
		str1 = in.readLine();
		str2 = in.readLine();
		enemy.setPosition(Integer.parseInt(""+str1),Integer.parseInt(""+str2));
		str1 = in.readLine();
		str2 = in.readLine();
		player.setLife(Integer.parseInt(""+str1));
		player.setScore(Integer.parseInt(""+str2));

		
		view.repaint();
		
		in.close();
	} catch (IOException e) {
	}

	}
	
	
	
	
	
	
	
	
	/**
	 * Initialise a new Game.
	 */
	public Game()
	{

			 t = new Timer(500,this);
			 t.start();


		Map=0;
	  
		maps = new ArrayList<World>();				  
		
		try{
		maps.add(new World("MA1.txt"));
		} catch (IOException e) {
		  System.out.println("" +e.getMessage());
		  }
  
		  
		try{
		maps.add(new World("MA2.txt"));
		}catch (IOException e) {
		System.out.println(""+e.getMessage());
		}
		
		try{
		maps.add(new World("MA3.txt"));
		}catch (IOException e) {
		System.out.println(""+e.getMessage());
		}
		
	
		currentMap = maps.get(Map);
		height = currentMap.getHight();
		width  = currentMap.getWidth();
 
		currentMap.bulidMap(Map);
		
		player = new Player(currentMap.getStartX() , currentMap.getStartY() );
		enemy  = new Enemy(10 , 10 );
		
		if (!currentMap.isValidPosition(enemy.getX(), enemy.getY())) {
			throw new Error("enemy has started in an invalid position: (" + enemy.getX() + "," + enemy.getY() + ")");
		}
		
		if (!currentMap.isValidPosition(player.getX(), player.getY())) {
			throw new Error("Player has started in an invalid position: (" + player.getX() + "," + player.getY() + ")");
		}

		view = new GameWindow(this);
		view.addKeyListener(new KeyControl());

	   String s;
	   s = "Lives:" + player.getLife() + " Score:" + player.getScore();
	   view.textout(s);

	   currentMap.AddKeyItem();
	}

	
	
	
	/**
	 * This Starts a new Game called from the Menu
	 */
		
	public void newGame()
		 {
		
		Map=0;
	  
		maps = new ArrayList<World>();				  

		try{
		maps.add(new World("MA1.txt"));
		} catch (IOException e) {
		  System.out.println("" +e.getMessage());
		  }
  
		  
		try{
		maps.add(new World("MA2.txt"));
		}catch (IOException e) {
		System.out.println(""+e.getMessage());
		}
		
		try{
		maps.add(new World("MA3.txt"));
		}catch (IOException e) {
		System.out.println(""+e.getMessage());
		}
		
	
		currentMap = maps.get(Map);
		height = currentMap.getHight();
		width  = currentMap.getWidth();
 
		currentMap.bulidMap(Map);
		
		player = new Player(currentMap.getStartX() , currentMap.getStartY() );
		 
		enemy = new Enemy(10 , 10 );
		 
		if (!currentMap.isValidPosition(player.getX(), player.getY())) {
			throw new Error("Player has started in an invalid position: (" + player.getX() + "," + player.getY() + ")");
		}


	   String s;
	   s = "Lives:" + player.getLife() + " Score:" + player.getScore();
	   view.textout(s);
	   currentMap.AddKeyItem();
	 
	   
		view.repaint();

		t.stop();
		t = new Timer(500,this);
		t.start();
public class Game
{
	/** The player (a specialised Body). */
	private Player player;
	
	/** Game over flag. */
	private boolean isOver;
	
	private World world;
	
	/** A graphical display of the world (a specialised JPanel). */
	private WorldView view;
   
	
	/** The width and height of the game display. */
	private int width, height;

	/** The number of the current level. */
	private int level;

	/** The current level. */
	private GameLevel currentLevel;

	
	/** Initialise a new Game. */
	public Game() {
		this.width = 500;
		this.height = 500;
		isOver = false;
		level = 1;
		player = new Player(this);

		currentLevel = new Level1(this);
		
		// make a view
		view = new WorldView(currentLevel.getWorld(), width, height);
		
		view.setBackground(java.awt.Color.PINK);
		
		// display the view in a frame
		final JFrame frame = new JFrame("Game");
		
		// add some keyboard handling
		frame.addKeyListener(new java.awt.event.KeyAdapter() {
			
			/** Handle key press events for walking and jumping. */
			public void keyPressed(java.awt.event.KeyEvent e)
			{
				if (isOver) return;
				int code = e.getKeyCode();
				// SPACE = jump
				if (code == java.awt.event.KeyEvent.VK_SPACE) {
					// only jump if player is not already jumping
					if (!player.isJumping()) {
						player.jump(150);
					}
				// LEFT ARROW = walk left
				} else if (code == java.awt.event.KeyEvent.VK_LEFT) {
					player.walk(-90);
					player.image = (new ImageIcon("ghost_bossleft.gif")).getImage();
				// RIGHT ARROW = walk right
				} else if (code == java.awt.event.KeyEvent.VK_RIGHT) {
					player.walk(90);
					player.image = (new ImageIcon("ghost_bossright.gif")).getImage();
				}
			}
			
			/** Handle key release events (stop walking). */
			public void keyReleased(java.awt.event.KeyEvent e)
			{
				if (isOver) return;
				int code = e.getKeyCode();
				if (code == java.awt.event.KeyEvent.VK_LEFT) {
					player.stopWalkingLeft();
					player.image = (new ImageIcon("ghost_bossleftstill.gif")).getImage();
				} else if (code == java.awt.event.KeyEvent.VK_RIGHT) {
					player.stopWalkingRight();
					player.image = (new ImageIcon("ghost_bossrightstill.gif")).getImage();
				}
			}
		});
		// quit the application when the game window is closed
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// display the world in the window
		frame.add(view);
		// don't let the game window be resized
		frame.setResizable(false);
		// size the game window to fit the world view
		frame.pack();
		// make the window visible
		frame.setVisible(true);
		
		// set debug level for the world view
		// higher numbers display more internal detail,
		// 0 displays none
		view.debug.setLevel(0);
		
		// start!
		currentLevel.start();
	}

	/** Advance to the next level, or end the game if there is no next level. */
	public void goNextLevel()
	{
		if (level == 3) {
			gameOver();
		} else {
			currentLevel.getWorld().terminate();
			level++;
			if (level == 2) {
				currentLevel = new Level2(this);
			} else if (level == 3) {
				currentLevel = new Level3(this);
			}
			view.setWorld(currentLevel.getWorld());
			currentLevel.start();
		}
	}
	
	/** Is the game over? */
	public boolean isOver()
	{
		return isOver;
	}
	
	/** End the game. */
	public void gameOver()
	{
		currentLevel.getWorld().terminate();
		isOver = true;
	}
	
	/** The width of the world view. */
	public int getWidth()
	{
		return width;
	}
	
	/** The width of the world view. */
	public int getHeight()
	{
		return height;
	}
	
		public World getWorld()
	{
		return world;
	}
	
	/** The world view. */
	public WorldView getView()
	{
		return view;
	}
	
	/** The player. */
	public Player getPlayer()
	{
		return player;
	}
	
	/** The current level. */
	public GameLevel getCurrentLevel()
	{
		return currentLevel;
	}
	
	/** Play a game. */
	public static void main(String[] args) {
		new Game();
		
	}




ps if anyone would help me more i am even willing to pay

*Edited to fix the [ /code]

Attached File(s)


This post has been edited by pbl: 16 April 2009 - 05:32 PM


Is This A Good Question/Topic? 0
  • +

Replies To: java help needed for assigment

#2 pbl   User is offline

  • There is nothing you can't do with a JTable
  • member icon

Reputation: 8381
  • View blog
  • Posts: 31,956
  • Joined: 06-March 08

Re: java help needed for assigment

Posted 16 April 2009 - 05:32 PM

Moved to JavaHomework
Was This Post Helpful? 0
  • +
  • -

#3 sl4ck3r   User is offline

  • D.I.C Regular
  • member icon

Reputation: 11
  • View blog
  • Posts: 285
  • Joined: 22-September 07

Re: java help needed for assigment

Posted 16 April 2009 - 07:16 PM

Read the rules then post.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1