I FUCKING LOVE COLIN

This commit is contained in:
2023-08-21 02:55:19 +10:00
parent 1d3b18becb
commit 3020ea8a08

View File

@ -24,6 +24,8 @@ class Colin
private var fov = 60.0f
private var cam: PerspectiveCamera
private var nutted = false
private var colinMode = false
private var backPressed = false
private var texture: Texture = assetManager.get("colin.png")
private val nut: Sound = assetManager.get("nut.wav")
@ -76,16 +78,29 @@ class Colin
if (!stick.isZero)
pos -= forward * stick.y * speed * deltaTime
offsAngle = Controllers.getCurrent()?.let { pad ->
if (Gdx.input.isKeyJustPressed(Input.Keys.C))
colinMode = !colinMode
Controllers.getCurrent()?.let { pad ->
val dst = Vector2(
pad.getAxis(pad.mapping.axisRightX),
pad.getAxis(pad.mapping.axisRightY))
.radialDeadzone(0.1f, 1.0f) * MathUtils.PI * -0.25f
offsAngle.lerp(dst, 16.0f * deltaTime)
} ?: Vector2.Zero
Controllers.getCurrent()?.let { pad ->
val targetFov = MathUtils.lerp(60.0f, 20.0f, pad.getAxis(5))
.radialDeadzone(0.1f, 1.0f) * MathUtils.PI * -0.5f
offsAngle = offsAngle.lerp(dst, 16.0f * deltaTime)
val targetFov = MathUtils.lerp(60.0f, 20.0f, pad.getAxis(5)) //fixme: where is mapping for rt??
cam.fieldOfView = MathUtils.lerp(cam.fieldOfView, targetFov, 20.0f * deltaTime)
val right = Vector2(MathUtils.cos(angle), -MathUtils.sin(angle))
if (pad.getButton(pad.mapping.buttonL1))
pos -= right * speed * deltaTime
if (pad.getButton(pad.mapping.buttonR1))
pos += right * speed * deltaTime
val back = pad.getButton(pad.mapping.buttonBack)
if (!backPressed && back)
colinMode = !colinMode
backPressed = back
}
if (Controllers.getCurrent()?.let { pad -> pad.getButton(pad.mapping.buttonA) } == true || Gdx.input.isKeyJustPressed(Input.Keys.N))
@ -107,15 +122,16 @@ class Colin
fun draw(spriteBatch: SpriteBatch)
{
val drawPos = Vector2(pos.x * 100.0f, -pos.y * 100.0f)
//spriteBatch.draw(texture, drawPos.x - 32.0f, drawPos.y - 32.0f, 64.0f, 64.0f)
val region = TextureRegion(texture)
spriteBatch.draw(region,
drawPos.x - 32.0f, drawPos.y - 32.0f,
32.0f, 32.0f,
64.0f, 64.0f,
1.0f, 1.0f, angle * MathUtils.radiansToDegrees)
if (colinMode)
{
val drawPos = Vector2(pos.x * 100.0f, -pos.y * 100.0f)
val region = TextureRegion(texture)
spriteBatch.draw(region,
drawPos.x - 32.0f, drawPos.y - 32.0f,
32.0f, 32.0f,
64.0f, 64.0f,
1.0f, 1.0f, angle * MathUtils.radiansToDegrees)
}
}
val camera get() = cam