diff options
| author | Elizabeth Hunt <me@liz.coffee> | 2025-10-26 21:38:22 -0700 |
|---|---|---|
| committer | Elizabeth Hunt <me@liz.coffee> | 2025-10-26 21:39:58 -0700 |
| commit | a8e5e723b7e1891c9b352261a3ee4c3d3563e8cf (patch) | |
| tree | 853df79c877d37d7e5d25f52b301aedcc3d5db55 /composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt | |
| parent | 395aa7d1c312e495517701be11c21425d9a5838e (diff) | |
| download | abstraction-engine-kt-main.tar.gz abstraction-engine-kt-main.zip | |
Diffstat (limited to 'composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt')
| -rw-r--r-- | composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt | 115 |
1 files changed, 62 insertions, 53 deletions
diff --git a/composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt b/composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt index 588e245..ceaef33 100644 --- a/composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt +++ b/composeApp/src/commonTest/kotlin/coffee/liz/ecs/animation/AnimationSystemTest.kt @@ -4,41 +4,43 @@ import coffee.liz.ecs.DAGWorld import kotlin.test.* class AnimationSystemTest { - - private fun createTestSpriteSheet(): SpriteSheet { - return SpriteSheet( + private fun createTestSpriteSheet(): SpriteSheet = + SpriteSheet( imagePath = "test.png", - frames = mapOf( - FrameName("idle_0") to Rect(0, 0, 32, 32), - FrameName("idle_1") to Rect(32, 0, 32, 32), - FrameName("walk_0") to Rect(0, 32, 32, 32), - FrameName("walk_1") to Rect(32, 32, 32, 32), - FrameName("walk_2") to Rect(64, 32, 32, 32) - ) + frames = + mapOf( + FrameName("idle_0") to Rect(0, 0, 32, 32), + FrameName("idle_1") to Rect(32, 0, 32, 32), + FrameName("walk_0") to Rect(0, 32, 32, 32), + FrameName("walk_1") to Rect(32, 32, 32, 32), + FrameName("walk_2") to Rect(64, 32, 32, 32), + ), ) - } - private fun createTestAnimator(): Animator { - return Animator( - clips = mapOf( - AnimationName("idle") to AnimationClip( - frameNames = listOf(FrameName("idle_0"), FrameName("idle_1")), - frameTicks = 0.1f, - loopMode = LoopMode.LOOP + private fun createTestAnimator(): Animator = + Animator( + clips = + mapOf( + AnimationName("idle") to + AnimationClip( + frameNames = listOf(FrameName("idle_0"), FrameName("idle_1")), + frameTicks = 0.1f, + loopMode = LoopMode.LOOP, + ), + AnimationName("walk") to + AnimationClip( + frameNames = + listOf( + FrameName("walk_0"), + FrameName("walk_1"), + FrameName("walk_2"), + ), + frameTicks = 0.15f, + loopMode = LoopMode.LOOP, + ), ), - AnimationName("walk") to AnimationClip( - frameNames = listOf( - FrameName("walk_0"), - FrameName("walk_1"), - FrameName("walk_2") - ), - frameTicks = 0.15f, - loopMode = LoopMode.LOOP - ) - ), - currentClip = AnimationName("idle") + currentClip = AnimationName("idle"), ) - } @Test fun `animation advances frame after frame duration`() { @@ -83,16 +85,19 @@ class AnimationSystemTest { fun `ONCE mode stops at last frame`() { val world = DAGWorld(listOf(AnimationSystem())) val entity = world.createEntity() - val animator = Animator( - clips = mapOf( - AnimationName("once") to AnimationClip( - frameNames = listOf(FrameName("idle_0"), FrameName("idle_1")), - frameTicks = 0.1f, - loopMode = LoopMode.ONCE - ) - ), - currentClip = AnimationName("once") - ) + val animator = + Animator( + clips = + mapOf( + AnimationName("once") to + AnimationClip( + frameNames = listOf(FrameName("idle_0"), FrameName("idle_1")), + frameTicks = 0.1f, + loopMode = LoopMode.ONCE, + ), + ), + currentClip = AnimationName("once"), + ) entity.add(createTestSpriteSheet()) entity.add(animator) @@ -114,20 +119,24 @@ class AnimationSystemTest { fun `PING_PONG mode bounces back and forth`() { val world = DAGWorld(listOf(AnimationSystem())) val entity = world.createEntity() - val animator = Animator( - clips = mapOf( - AnimationName("pingpong") to AnimationClip( - frameNames = listOf( - FrameName("walk_0"), - FrameName("walk_1"), - FrameName("walk_2") + val animator = + Animator( + clips = + mapOf( + AnimationName("pingpong") to + AnimationClip( + frameNames = + listOf( + FrameName("walk_0"), + FrameName("walk_1"), + FrameName("walk_2"), + ), + frameTicks = 0.1f, + loopMode = LoopMode.PING_PONG, + ), ), - frameTicks = 0.1f, - loopMode = LoopMode.PING_PONG - ) - ), - currentClip = AnimationName("pingpong") - ) + currentClip = AnimationName("pingpong"), + ) entity.add(createTestSpriteSheet()) entity.add(animator) |
