Imagem

Galera como mostro a imagem do Player 1 na tela?

public class Game extends Canvas implements Runnable {

	private static JFrame frame;
	public static final int WIDTH = 1000;
	public static final int HEIGHT = 700;
	private int FPS;
	private Thread thread;
	private boolean isRunnable = false;
	
	Juiz juiz;
	
	private BufferedImage image;

	public List<Entiti> entities; 





	public void iniciarJogo() {
	 
	
	}
	public void info() {
		
	  
		
	}

	public Game() {

		initFrame();
		iniciarJogo();
		info();

		juiz = new Juiz();
		image = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB);
		entities = new ArrayList<Entiti>();
		
		
	}

	public void initFrame() {

		frame = new JFrame();
		frame.setPreferredSize(new Dimension(WIDTH, HEIGHT));
		frame.add(this);
		frame.setResizable(false);
		frame.pack();
		frame.setLocationRelativeTo(null);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);

	}

	public synchronized void start() {

		thread = new Thread(this);
		isRunnable = true;
		thread.start();
	}

	public synchronized void stop() {

		try {
			thread.join();
		} catch (InterruptedException e) {

			e.printStackTrace();
		}

	}

	public static void main(String[] args) {

		Game game = new Game();
		game.start();
	}

	public void tick() {

		for (int i = 0; i < entities.size(); i++) {
			Entiti e = entities.get(i); // pecorre a Lista para achar todos as classes/entidades.
			////////////////// LOGICA DO GAME! //////////////////
			long agora = System.currentTimeMillis();
			///// Testo na tela!!!!
		
			
			////////////////////////////////////
			e.tick(); // Chama o metodo tick de todas as clases/entidaes que estao dentro da Lista!
		}

	}

	public void render() {
		BufferStrategy bs = this.getBufferStrategy();
		if (bs == null) {
			this.createBufferStrategy(3);
			return;
		}
		//
		Graphics g = image.getGraphics();
		g.setColor(new Color(0, 0, 0));
		g.fillRect(0, 0, WIDTH, HEIGHT);
		// render abaixo

		for (int i = 0; i < entities.size(); i++) {
			Entiti e = entities.get(i);
			e.render(g); // O 'e' que é uma lista de classes/entidades chama
			
		}
/////////////////            DIALOGO        ////////////////////////
	
/////////////////            DIALOGO        ////////////////////////
		g = bs.getDrawGraphics(); // A classe Graphics/imagens cria 3 "pré" imagens antes de renderizar!
		g.drawImage(image, 0, 0, WIDTH, HEIGHT, null); // Agora Graphics/imagem pinta a(as) imagem que estiver pronra!

		g.setFont(new Font("Arial", Font.BOLD, 14));
		g.setColor(Color.white);
		g.drawString("Fps."+FPS, 900, 650);

		bs.show(); // exibe a(as) imagens!
	}

	@Override
	public void run() {

		// Variaveis q serao necessarias para o calculo dos fps e gerar os ticks do
		// looping.
		long lestTime = System.nanoTime(); // menor tempo do sistema.Ponto de inicio.
		double amountOfticks = 60; // quantidade de ticks desejados
		double ns = 1000000000 / amountOfticks;
		double delta = 0;
		int frames = 0;
		double time = System.currentTimeMillis();

		while (isRunnable) {

			long now = System.nanoTime(); // Pega o tempo de agora e nano segundos!
			delta += (now - lestTime) / ns;
			lestTime = now;
			if (delta >= 1) {
				tick();
				render();
				frames++;
				delta--;

			}
			if (System.currentTimeMillis() - time >= 1000) {
				System.out.println("FPS: " + frames);
				FPS = frames;
				frames = 0;
				time += 1000;
			}

		}
// esse meto nao e necessario, mas e importante pois funciona como uma segurança para parar o looping!
		stop();
	}

}
package entidades;

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.util.Random;

import graficos.ImageLoader;

public class Entiti {
	
	protected double x;
	protected double y;
	protected int width;
	protected int height;
	
	//String CaminhoImagem;
	Random r = new Random();
	BufferedImage imagem;

	private int dinheiro;
	private String nome;
	private int vida;
	private int ataque;
	private int defesa;
	
	protected BufferedImage loadImage(String path) {
		return ImageLoader.loadImage(path);
	}
	
	
	public Entiti(int x, int y, int width, int height,String CaminhoImagem) {
		
		this.x=x;
		this.y=y;
		this.width=width;
		this.height=height;
		//this.CaminhoImagem=CaminhoImagem;
		
	}

	public int getX() {
		return (int)this.x;
	}

	public void setX(int newX) {
		this.x = newX;
	}

	public int getY() {
		return (int)this.y;
	}

	public void setY(int newY) {
		this.y = newY;
	}

	public int getWidth() {
		return width;
	}

	public void setWidth(int width) {
		this.width = width;
	}

	public int getHeight() {
		return height;
	}

	public void setHeight(int height) {
		this.height = height;
	}
	
public void tick() {
		
		
	}

public void render(Graphics g) {
	

	g.drawImage(imagem, this.getX(), this.getY(),null);	
	
	
	}
	

}
package entidades;

import java.awt.Graphics;
import java.util.ArrayList;

public class Player1 extends Entiti {

	   static String CaminhoImagem;

	    ArrayList<String> guardarCaminhoImagens = new ArrayList<>();

	    public Player1() {
	        super(240, 2, 250, 400, CaminhoImagem);
	        sortearIM();
	    }

	    public void sortearIM() {
	        guardarCaminhoImagens.add("/guerreiro.png");
	        guardarCaminhoImagens.add("/mago.png");

	        int sort = r.nextInt(guardarCaminhoImagens.size());

	        CaminhoImagem = guardarCaminhoImagens.get(sort);
	        System.out.println("RANDOM =========== " + sort);
	    }

	    public void render(Graphics g) {
	        imagem = loadImage(CaminhoImagem);
	        g.drawImage(imagem, this.getX(), this.getY(), null);
	    }


}
package entidades;

import java.awt.Graphics;

import com.cett.Game;

public class Juiz {
	

	Player1 p1;
	
	
	public Juiz() {
		
	
		p1= new Player1();
	   
	
	}


	public void tick() {
		// TODO Auto-generated method stub
		
	}


	public void render(Graphics g) {
		// TODO Auto-generated method stub
		
	}
}

Entity se escreve é com “y”.
Analisando seu código, basta que um objeto do tipo Player1 esteja adicionado na sua lista entities.

a vlw sou cego depois q mandei a duvida aqui que vi o erro