diff --git a/fcore/level/player/sprites/player-walk-right-1.sml b/fcore/level/player/sprites/player-walk-right-1.sml new file mode 100644 index 0000000..9fc4ca5 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-1.sml @@ -0,0 +1,373 @@ +structure PlayerWalkRight1 = +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.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.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.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.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / 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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-2.sml b/fcore/level/player/sprites/player-walk-right-2.sml new file mode 100644 index 0000000..e008dc6 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-2.sml @@ -0,0 +1,403 @@ +structure PlayerWalkRight2 = +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.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.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.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.5625)) + (endX * 0.5625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5625)) + (endX * 0.5625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5625)) + (endX * 0.5625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.625)) + (endX * 0.625)) / 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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-3.sml b/fcore/level/player/sprites/player-walk-right-3.sml new file mode 100644 index 0000000..8a7fdb4 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-3.sml @@ -0,0 +1,373 @@ +structure PlayerWalkRight3 = +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.5625)) + (endX * 0.5625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5625)) + (endX * 0.5625)) / 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.5625)) + (endX * 0.5625)) / 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.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.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.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.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.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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.150000035763)) + (endY * 0.150000035763)) / 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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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, 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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-4.sml b/fcore/level/player/sprites/player-walk-right-4.sml new file mode 100644 index 0000000..cd98715 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-4.sml @@ -0,0 +1,433 @@ +structure PlayerWalkRight4 = +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.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5)) + (endX * 0.5)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.625)) + (endX * 0.625)) / 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.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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.0)) + (endY * 0.0)) / 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.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.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.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.4375)) + (endX * 0.4375)) / 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.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.0499999821186)) + (endY * 0.0499999821186)) / 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.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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-5.sml b/fcore/level/player/sprites/player-walk-right-5.sml new file mode 100644 index 0000000..68e103e --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-5.sml @@ -0,0 +1,373 @@ +structure PlayerWalkRight5 = +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.5625)) + (endX * 0.5625)) / 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.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.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5625)) + (endX * 0.5625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.5625)) + (endX * 0.5625)) / 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.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.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.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.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.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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-6.sml b/fcore/level/player/sprites/player-walk-right-6.sml new file mode 100644 index 0000000..96be42d --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-6.sml @@ -0,0 +1,373 @@ +structure PlayerWalkRight6 = +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.6875)) + (endX * 0.6875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / 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.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-7.sml b/fcore/level/player/sprites/player-walk-right-7.sml new file mode 100644 index 0000000..dcfbea0 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-7.sml @@ -0,0 +1,373 @@ +structure PlayerWalkRight7 = +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.625)) + (endX * 0.625)) / 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.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.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.625)) + (endX * 0.625)) / 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.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.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.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.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.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0)) + (endY * 0.0)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / 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.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.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.1875)) + (endX * 0.1875)) / 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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-8.sml b/fcore/level/player/sprites/player-walk-right-8.sml new file mode 100644 index 0000000..b429d71 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-8.sml @@ -0,0 +1,343 @@ +structure PlayerWalkRight8 = +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.6875)) + (endX * 0.6875)) / 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.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.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.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.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.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.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.125)) + (endX * 0.125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / 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.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.125)) + (endX * 0.125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.125)) + (endX * 0.125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / 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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/player-walk-right-9.sml b/fcore/level/player/sprites/player-walk-right-9.sml new file mode 100644 index 0000000..856e4f2 --- /dev/null +++ b/fcore/level/player/sprites/player-walk-right-9.sml @@ -0,0 +1,403 @@ +structure PlayerWalkRight9 = +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.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.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.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.200000017881)) + (endY * 0.200000017881)) / 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.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.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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.3125)) + (endX * 0.3125)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / 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.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.100000023842)) + (endY * 0.100000023842)) / 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.25)) + (endX * 0.25)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.150000035763)) + (endY * 0.150000035763)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / 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.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.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.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.0499999821186)) + (endY * 0.0499999821186)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.1875)) + (endX * 0.1875)) / 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.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.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.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.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.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.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.25)) + (endY * 0.25)) / 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.75)) + (endX * 0.75)) / 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.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, r, g, b, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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.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.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.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.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.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.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.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.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.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.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.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.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.799999952316)) + (endY * 0.799999952316)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / windowWidth) - 1.0, + (((startY * (1.0 - 0.700000047684)) + (endY * 0.700000047684)) / windowHeight) - 1.0, +0.0, +0.0, +0.0, + (((startX * (1.0 - 0.75)) + (endX * 0.75)) / 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.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.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/raster/stand.png b/fcore/level/player/sprites/raster/stand.png new file mode 100644 index 0000000..394971e Binary files /dev/null and b/fcore/level/player/sprites/raster/stand.png differ diff --git a/fcore/level/player/sprites/raster/walk1.png b/fcore/level/player/sprites/raster/walk1.png new file mode 100644 index 0000000..3ac74a3 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk1.png differ diff --git a/fcore/level/player/sprites/raster/walk2.png b/fcore/level/player/sprites/raster/walk2.png new file mode 100644 index 0000000..5cb4698 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk2.png differ diff --git a/fcore/level/player/sprites/raster/walk3.png b/fcore/level/player/sprites/raster/walk3.png new file mode 100644 index 0000000..7f2ce21 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk3.png differ diff --git a/fcore/level/player/sprites/raster/walk4.png b/fcore/level/player/sprites/raster/walk4.png new file mode 100644 index 0000000..de38c2e Binary files /dev/null and b/fcore/level/player/sprites/raster/walk4.png differ diff --git a/fcore/level/player/sprites/raster/walk5.png b/fcore/level/player/sprites/raster/walk5.png new file mode 100644 index 0000000..b066c94 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk5.png differ diff --git a/fcore/level/player/sprites/raster/walk6.png b/fcore/level/player/sprites/raster/walk6.png new file mode 100644 index 0000000..8bf1b30 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk6.png differ diff --git a/fcore/level/player/sprites/raster/walk7.png b/fcore/level/player/sprites/raster/walk7.png new file mode 100644 index 0000000..1b9c766 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk7.png differ diff --git a/fcore/level/player/sprites/raster/walk8.png b/fcore/level/player/sprites/raster/walk8.png new file mode 100644 index 0000000..78f5e28 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk8.png differ diff --git a/fcore/level/player/sprites/raster/walk9.png b/fcore/level/player/sprites/raster/walk9.png new file mode 100644 index 0000000..9d639e1 Binary files /dev/null and b/fcore/level/player/sprites/raster/walk9.png differ diff --git a/oms.mlb b/oms.mlb index 0ebc8b3..309b8c1 100644 --- a/oms.mlb +++ b/oms.mlb @@ -20,10 +20,24 @@ in fcore/block.sml fcore/field.sml fcore/level/chain-edge.sml +end +ann + "allowVectorExps true" +in fcore/level/player/sprites/player-standing-right.sml fcore/level/player/sprites/player-standing-left.sml + fcore/level/player/sprites/player-walk-right-1.sml + fcore/level/player/sprites/player-walk-right-2.sml + fcore/level/player/sprites/player-walk-right-3.sml + fcore/level/player/sprites/player-walk-right-4.sml + fcore/level/player/sprites/player-walk-right-5.sml + fcore/level/player/sprites/player-walk-right-6.sml + fcore/level/player/sprites/player-walk-right-7.sml + fcore/level/player/sprites/player-walk-right-8.sml + fcore/level/player/sprites/player-walk-right-9.sml end + fcore/make-text-vec.sml fcore/level/wall.sml