1
0

Add turrets

This commit is contained in:
Victor 2014-03-16 13:17:32 +02:00
parent 18821b065f
commit 1f273cd614

View File

@ -8,10 +8,11 @@ import java.awt.image.BufferedImage;
* *
* @author aNNiMON * @author aNNiMON
*/ */
public class GameCanvas extends DoubleBufferedCanvas { public class GameCanvas extends DoubleBufferedCanvas implements NetworkListener {
private final BufferedImage background; private final BufferedImage background;
private final Terrain terrain; private final Terrain terrain;
private Turret serverTurret, clientTurret;
public GameCanvas() { public GameCanvas() {
background = new BufferedImage(Constants.WIDTH, Constants.HEIGHT, BufferedImage.TYPE_INT_RGB); background = new BufferedImage(Constants.WIDTH, Constants.HEIGHT, BufferedImage.TYPE_INT_RGB);
@ -19,16 +20,31 @@ public class GameCanvas extends DoubleBufferedCanvas {
terrain = new Terrain(Constants.WIDTH); terrain = new Terrain(Constants.WIDTH);
terrain.generate(System.currentTimeMillis()); terrain.generate(System.currentTimeMillis());
serverTurret = new Turret(Turret.SERVER, terrain.getFirstBlockHeight(), terrain);
clientTurret = new Turret(Turret.CLIENT, terrain.getLastBlockHeight(), terrain);
} }
@Override @Override
protected void draw(Graphics2D g) { protected void draw(Graphics2D g) {
g.drawImage(background, 0, 0, null); g.drawImage(background, 0, 0, null);
terrain.draw(g); terrain.draw(g);
serverTurret.draw(g);
clientTurret.draw(g);
}
@Override
public void onStatusChanged(int status, Object data) {
switch (status) {
case ON_CONNECT:
System.out.println("connect!");
break;
}
} }
@Override @Override
protected void update() { protected void update() {
} }
private void initBackground() { private void initBackground() {
@ -36,4 +52,19 @@ public class GameCanvas extends DoubleBufferedCanvas {
new Background().draw(g); new Background().draw(g);
g.dispose(); g.dispose();
} }
@Override
protected void mousePressed(int x, int y) {
clientTurret.setBarrelParams(x, Constants.HEIGHT - y);
}
@Override
protected void mouseReleased(int x, int y) {
clientTurret.shoot();
}
@Override
protected void mouseDragged(int x, int y) {
clientTurret.setBarrelParams(x, Constants.HEIGHT - y);
}
} }