diff --git a/src/main/kotlin/Colin.kt b/src/main/kotlin/Colin.kt index 51a1d5e..fce3629 100644 --- a/src/main/kotlin/Colin.kt +++ b/src/main/kotlin/Colin.kt @@ -20,6 +20,7 @@ class Colin { private var pos = Vector2() private var angle = 0.0f + private var yangle = 0.0f private var cam: PerspectiveCamera private var nutted = false @@ -40,7 +41,8 @@ class Colin cam.position.set(Vector3(pos.x, 1.0f, pos.y)) val forward = Vector3(0.0f, 0.0f, -1.0f) val up = Vector3(0.0f, 1.0f, 0.0f) - cam.direction.set(forward.rotateRad(up, angle)) + val right = Vector3(1.0f, 0.0f, 0.0f) + cam.direction.set(forward.rotateRad(right, yangle).rotateRad(up, angle)) cam.update() } @@ -70,6 +72,11 @@ class Colin if (!stick.isZero) pos -= forward * stick.y * speed * deltaTime + yangle = Controllers.getCurrent()?.let { pad -> + val dst = pad.getAxis(pad.mapping.axisRightY).axisDeadzone(0.1f, 0.9f) + MathUtils.lerp(yangle, dst, 16.0f * deltaTime) + } ?: 0.0f + if (Controllers.getCurrent()?.let { pad -> pad.getButton(pad.mapping.buttonA) } == true || Gdx.input.isKeyJustPressed(Input.Keys.N)) { if (!nutted)