diff --git a/Military-Hero-Core/src/com/annimon/militaryhero/MainApp.java b/Military-Hero-Core/src/com/annimon/militaryhero/MainApp.java index cbc4a76..8a9f451 100644 --- a/Military-Hero-Core/src/com/annimon/militaryhero/MainApp.java +++ b/Military-Hero-Core/src/com/annimon/militaryhero/MainApp.java @@ -2,18 +2,24 @@ package com.annimon.militaryhero; import com.annimon.jecp.ApplicationListener; import com.annimon.jecp.Graphics; -import com.annimon.jecp.Image; +import com.annimon.jecp.Jecp; +import com.annimon.jecp.Keys; /** * @author aNNiMON */ -public class MainApp implements ApplicationListener { +public class MainApp extends InputProcessor implements ApplicationListener { private int width, height; + private SniperAim aim; public void onStartApp(int width, int height) { this.width = width; this.height = height; + aim = new SniperAim(width, height); + Jecp.inputListener = this; + Keys.numericdAsDpad = true; + Keys.wasdAsDpad = true; } public void onPauseApp() { @@ -23,9 +29,25 @@ public class MainApp implements ApplicationListener { } public void onPaint(Graphics g) { + g.setColor(0xFFFFFFFF); + g.fillRect(0, 0, width, height); + aim.draw(g); } public void onUpdate() { + if (isPressed(LEFT)) aim.move(-1, 0); + else if (isPressed(RIGHT)) aim.move(1, 0); + if (isPressed(UP)) aim.move(0, -1); + else if (isPressed(DOWN)) aim.move(0, 1); + + try { + Thread.sleep(10); + } catch (InterruptedException ex) { + ex.printStackTrace(); + } + } + + public void isFirePressed() { } } diff --git a/Military-Hero-Core/src/com/annimon/militaryhero/SniperAim.java b/Military-Hero-Core/src/com/annimon/militaryhero/SniperAim.java index 358cdac..c499c4e 100644 --- a/Military-Hero-Core/src/com/annimon/militaryhero/SniperAim.java +++ b/Military-Hero-Core/src/com/annimon/militaryhero/SniperAim.java @@ -23,6 +23,18 @@ public class SniperAim { y = (height - aimHeight) / 2; } + public void move(int dx, int dy) { + x += dx; + y += dy; + + final int aw2 = aimWidth / 2; + if (x < -aw2) x = -aw2; + else if (x + aw2 > width) x = width - aw2; + final int ah2 = aimHeight / 2; + if (y < -ah2) y = -ah2; + else if (y + ah2 > height) y = height - ah2; + } + public int getAimX() { return x + aimWidth / 2; }