|
@@ -1,36 +1,55 @@
|
|
|
package pathgame;
|
|
|
|
|
|
import me.hammerle.snuviengine.api.IGame;
|
|
|
+import me.hammerle.snuviengine.api.KeyBinding;
|
|
|
+import me.hammerle.snuviengine.api.KeyHandler;
|
|
|
import me.hammerle.snuviengine.api.Renderer;
|
|
|
+import org.lwjgl.glfw.GLFW;
|
|
|
|
|
|
public class PathGame implements IGame
|
|
|
{
|
|
|
- private float oldAngle = 0;
|
|
|
- private float angle = 0;
|
|
|
+ private float oldX = 0;
|
|
|
+ private float oldY = 0;
|
|
|
+ private float x = 0;
|
|
|
+ private float y = 0;
|
|
|
+
|
|
|
+ private static final KeyBinding UP_KEY = KeyHandler.register(GLFW.GLFW_KEY_W);
|
|
|
+ private static final KeyBinding DOWN_KEY = KeyHandler.register(GLFW.GLFW_KEY_S);
|
|
|
+ private static final KeyBinding LEFT_KEY = KeyHandler.register(GLFW.GLFW_KEY_A);
|
|
|
+ private static final KeyBinding RIGHT_KEY = KeyHandler.register(GLFW.GLFW_KEY_D);
|
|
|
+
|
|
|
+ public PathGame()
|
|
|
+ {
|
|
|
+ }
|
|
|
|
|
|
@Override
|
|
|
public void tick()
|
|
|
{
|
|
|
- oldAngle = angle;
|
|
|
- angle += 0.25;
|
|
|
+ oldX = x;
|
|
|
+ oldY = y;
|
|
|
+
|
|
|
+ if(LEFT_KEY.isDown())
|
|
|
+ {
|
|
|
+ x -= 10;
|
|
|
+ }
|
|
|
+ if(RIGHT_KEY.isDown())
|
|
|
+ {
|
|
|
+ x += 10;
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
@Override
|
|
|
public void renderTick(Renderer r, float lag)
|
|
|
{
|
|
|
- r.setTextureEnabled(true);
|
|
|
- r.setColorEnabled(true);
|
|
|
r.setMixColorEnabled(false);
|
|
|
- r.setBlendingEnabled(false);
|
|
|
-
|
|
|
+
|
|
|
r.translateTo(0.0f, 0.0f);
|
|
|
- r.translate(200.0f, 200.0f);
|
|
|
- r.rotate(oldAngle + (angle - oldAngle) * lag);
|
|
|
- r.translate(-50.0f, 0.0f);
|
|
|
- r.scale(2, 2);
|
|
|
r.updateMatrix();
|
|
|
|
|
|
- r.getFontRenderer().drawString(0, 0, "Das &5ist &6ein Test.");
|
|
|
+ float ix = oldX + (x - oldX) * lag;
|
|
|
+ float iy = oldY + (y - oldY) * lag;
|
|
|
+
|
|
|
+ r.getColorRenderer().drawRectangle(ix, iy, ix + 20, iy + 20, 0xFF0000FF);
|
|
|
}
|
|
|
|
|
|
@Override
|