From b697eaf8e004b2ee6f132fb31907754abc6cdbc5 Mon Sep 17 00:00:00 2001 From: Humza Shahid Date: Mon, 24 Feb 2025 12:43:08 +0000 Subject: [PATCH] add sprites for when player jumps while facing left, and add code to handle this case --- fcore/level/player/player-vec.sml | 33 +- .../sprites/jump/player-jump-left-1.sml | 343 +++++++++++++++ .../sprites/jump/player-jump-left-2.sml | 373 ++++++++++++++++ .../sprites/jump/player-jump-left-3.sml | 373 ++++++++++++++++ .../sprites/jump/player-jump-left-4.sml | 373 ++++++++++++++++ .../sprites/jump/player-jump-left-5.sml | 403 ++++++++++++++++++ oms.mlb | 6 + 7 files changed, 1901 insertions(+), 3 deletions(-) create mode 100644 fcore/level/player/sprites/jump/player-jump-left-1.sml create mode 100644 fcore/level/player/sprites/jump/player-jump-left-2.sml create mode 100644 fcore/level/player/sprites/jump/player-jump-left-3.sml create mode 100644 fcore/level/player/sprites/jump/player-jump-left-4.sml create mode 100644 fcore/level/player/sprites/jump/player-jump-left-5.sml diff --git a/fcore/level/player/player-vec.sml b/fcore/level/player/player-vec.sml index dc52337..f1c629a 100644 --- a/fcore/level/player/player-vec.sml +++ b/fcore/level/player/player-vec.sml @@ -68,7 +68,7 @@ struct end | STAY_STILL => getIdle (player, rx, ry, dw, dh, ww, wh) - fun getWhenJumping (player, amt, rx, ry, dw, dh, ww, wh) = + fun getWhenJumpingRight (player, amt, rx, ry, dw, dh, ww, wh) = if amt < 3 then PlayerJumpRight1.lerp (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) @@ -85,9 +85,36 @@ struct PlayerJumpRight5.lerp (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + fun getWhenJumpingLeft (player, amt, rx, ry, dw, dh, ww, wh) = + if amt < 3 then + PlayerJumpLeft1.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + else if amt < 6 then + PlayerJumpLeft2.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + else if amt < 9 then + PlayerJumpLeft3.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + else if amt < 12 then + PlayerJumpLeft4.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + else + PlayerJumpLeft5.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + + fun getWhenJumping (player, amt, rx, ry, dw, dh, ww, wh) = + case #facing player of + FACING_RIGHT => getWhenJumpingRight (player, amt, rx, ry, dw, dh, ww, wh) + | FACING_LEFT => getWhenJumpingLeft (player, amt, rx, ry, dw, dh, ww, wh) + fun getWhenFalling (player, rx, ry, dw, dh, ww, wh) = - PlayerJumpRight5.lerp - (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + case #facing player of + FACING_RIGHT => + PlayerJumpRight5.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) + | FACING_LEFT => + PlayerJumpLeft5.lerp + (rx, ry, dw, dh, ww, wh, 1.0, 1.0, 1.0) fun getWhenNotAttacked (player, rx, ry, dw, dh, ww, wh) = case #yAxis player of diff --git a/fcore/level/player/sprites/jump/player-jump-left-1.sml b/fcore/level/player/sprites/jump/player-jump-left-1.sml new file mode 100644 index 0000000..fab3fea --- /dev/null +++ b/fcore/level/player/sprites/jump/player-jump-left-1.sml @@ -0,0 +1,343 @@ +structure PlayerJumpLeft1 = +struct + fun lerp (startX, startY, drawWidth, drawHeight, windowWidth, windowHeight, r, g, b) : Real32.real vector = + let + val endY = windowHeight - startY + val startY = windowHeight - (startY + drawHeight) + val endX = startX + drawWidth + val windowHeight = windowHeight / 2.0 + val windowWidth = windowWidth / 2.0 + in + #[ (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0 + ] + end +end diff --git a/fcore/level/player/sprites/jump/player-jump-left-2.sml b/fcore/level/player/sprites/jump/player-jump-left-2.sml new file mode 100644 index 0000000..612b0d9 --- /dev/null +++ b/fcore/level/player/sprites/jump/player-jump-left-2.sml @@ -0,0 +1,373 @@ +structure PlayerJumpLeft2 = +struct + fun lerp (startX, startY, drawWidth, drawHeight, windowWidth, windowHeight, r, g, b) : Real32.real vector = + let + val endY = windowHeight - startY + val startY = windowHeight - (startY + drawHeight) + val endX = startX + drawWidth + val windowHeight = windowHeight / 2.0 + val windowWidth = windowWidth / 2.0 + in + #[ (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0 + ] + end +end diff --git a/fcore/level/player/sprites/jump/player-jump-left-3.sml b/fcore/level/player/sprites/jump/player-jump-left-3.sml new file mode 100644 index 0000000..8d90f28 --- /dev/null +++ b/fcore/level/player/sprites/jump/player-jump-left-3.sml @@ -0,0 +1,373 @@ +structure PlayerJumpLeft3 = +struct + fun lerp (startX, startY, drawWidth, drawHeight, windowWidth, windowHeight, r, g, b) : Real32.real vector = + let + val endY = windowHeight - startY + val startY = windowHeight - (startY + drawHeight) + val endX = startX + drawWidth + val windowHeight = windowHeight / 2.0 + val windowWidth = windowWidth / 2.0 + in + #[ (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0 + ] + end +end diff --git a/fcore/level/player/sprites/jump/player-jump-left-4.sml b/fcore/level/player/sprites/jump/player-jump-left-4.sml new file mode 100644 index 0000000..f429de3 --- /dev/null +++ b/fcore/level/player/sprites/jump/player-jump-left-4.sml @@ -0,0 +1,373 @@ +structure PlayerJumpLeft4 = +struct + fun lerp (startX, startY, drawWidth, drawHeight, windowWidth, windowHeight, r, g, b) : Real32.real vector = + let + val endY = windowHeight - startY + val startY = windowHeight - (startY + drawHeight) + val endX = startX + drawWidth + val windowHeight = windowHeight / 2.0 + val windowWidth = windowWidth / 2.0 + in + #[ (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0 + ] + end +end diff --git a/fcore/level/player/sprites/jump/player-jump-left-5.sml b/fcore/level/player/sprites/jump/player-jump-left-5.sml new file mode 100644 index 0000000..aa855aa --- /dev/null +++ b/fcore/level/player/sprites/jump/player-jump-left-5.sml @@ -0,0 +1,403 @@ +structure PlayerJumpLeft5 = +struct + fun lerp (startX, startY, drawWidth, drawHeight, windowWidth, windowHeight, r, g, b) : Real32.real vector = + let + val endY = windowHeight - startY + val startY = windowHeight - (startY + drawHeight) + val endX = startX + drawWidth + val windowHeight = windowHeight / 2.0 + val windowWidth = windowWidth / 2.0 + in + #[ (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.875)) + (endX * 0.875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.8125)) + (endX * 0.8125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.4375)) + (endX * 0.4375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.375)) + (endX * 0.375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.950000047684)) + (endY * 0.950000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.9375)) + (endX * 0.9375)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 1.0)) + (endX * 1.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.25)) + (endY * 0.25)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0625)) + (endX * 0.0625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.200000017881)) + (endY * 0.200000017881)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.0)) + (endX * 0.0)) / windowWidth) - 1.0, + (((startY * (1.0 - 1.0)) + (endY * 1.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0 + ] + end +end diff --git a/oms.mlb b/oms.mlb index f515e80..f0eb2c2 100644 --- a/oms.mlb +++ b/oms.mlb @@ -87,6 +87,12 @@ in fcore/level/player/sprites/jump/player-jump-right-4.sml fcore/level/player/sprites/jump/player-jump-right-5.sml + fcore/level/player/sprites/jump/player-jump-left-1.sml + fcore/level/player/sprites/jump/player-jump-left-2.sml + fcore/level/player/sprites/jump/player-jump-left-3.sml + fcore/level/player/sprites/jump/player-jump-left-4.sml + fcore/level/player/sprites/jump/player-jump-left-5.sml + fcore/level/player/player-vec.sml end