figure out a good hardcoded alignment value
This commit is contained in:
@@ -146,7 +146,7 @@ struct
|
|||||||
(* todo: hurt sprite/animation if amt mod 5 = 0 then *)
|
(* todo: hurt sprite/animation if amt mod 5 = 0 then *)
|
||||||
PlayerStandingLeft.lerp (rx, ry, 3.0, ww, wh)
|
PlayerStandingLeft.lerp (rx, ry, 3.0, ww, wh)
|
||||||
|
|
||||||
fun helpGet (player: player, rx, ry, windowWidth, windowHeight) =
|
fun helpGet (player: player, x, y, xOffset, yOffset, ratio, rx, ry, windowWidth, windowHeight) =
|
||||||
case #mainAttack player of
|
case #mainAttack player of
|
||||||
MAIN_ATTACKING amt =>
|
MAIN_ATTACKING amt =>
|
||||||
(case #facing player of
|
(case #facing player of
|
||||||
@@ -155,8 +155,12 @@ struct
|
|||||||
val playerVec = PlayerAttackStandRight.lerp
|
val playerVec = PlayerAttackStandRight.lerp
|
||||||
(rx, ry, 3.0, windowWidth, windowHeight)
|
(rx, ry, 3.0, windowWidth, windowHeight)
|
||||||
|
|
||||||
val projY = ry + (Constants.playerHeightReal / 3.0)
|
(* todo: why does 81 work to give perfect alignment? *)
|
||||||
val projX = rx + (Constants.playerHeightReal / 4.0 * 3.0)
|
val projX = x + 81
|
||||||
|
val projY = y + (Constants.playerHeight div 3)
|
||||||
|
val projX = (Real32.fromInt projX + xOffset) * ratio
|
||||||
|
val projY = (Real32.fromInt projY + yOffset) * ratio
|
||||||
|
|
||||||
val func = Vector.sub (attackRightProjectiles, amt)
|
val func = Vector.sub (attackRightProjectiles, amt)
|
||||||
val projectilesVec = func
|
val projectilesVec = func
|
||||||
(projX, projY, 3.0, windowWidth, windowHeight)
|
(projX, projY, 3.0, windowWidth, windowHeight)
|
||||||
@@ -168,8 +172,11 @@ struct
|
|||||||
val playerVec = PlayerAttackStandLeft.lerp
|
val playerVec = PlayerAttackStandLeft.lerp
|
||||||
(rx, ry, 3.0, windowWidth, windowHeight)
|
(rx, ry, 3.0, windowWidth, windowHeight)
|
||||||
|
|
||||||
val projY = ry + (Constants.playerHeightReal / 3.0)
|
val projX = x - Constants.playerHeight
|
||||||
val projX = rx - (Constants.playerHeightReal / 5.0 * 4.0)
|
val projY = y + (Constants.playerHeight div 3)
|
||||||
|
val projX = (Real32.fromInt projX + xOffset) * ratio
|
||||||
|
val projY = (Real32.fromInt projY + yOffset) * ratio
|
||||||
|
|
||||||
val func = Vector.sub (attackLeftProjectiles, amt)
|
val func = Vector.sub (attackLeftProjectiles, amt)
|
||||||
val projectilesVec = func
|
val projectilesVec = func
|
||||||
(projX, projY, 3.0, windowWidth, windowHeight)
|
(projX, projY, 3.0, windowWidth, windowHeight)
|
||||||
@@ -197,10 +204,10 @@ struct
|
|||||||
else if height < scale then (scale - height) / 2.0
|
else if height < scale then (scale - height) / 2.0
|
||||||
else 0.0
|
else 0.0
|
||||||
|
|
||||||
val x = Real32.fromInt x * wratio
|
val rx = Real32.fromInt x * wratio
|
||||||
val y = Real32.fromInt y * wratio + yOffset
|
val ry = Real32.fromInt y * wratio + yOffset
|
||||||
in
|
in
|
||||||
helpGet (player, x, y, width, height)
|
helpGet (player, x, y, 0.0, yOffset, wratio, rx, ry, width, height)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
let
|
let
|
||||||
@@ -210,10 +217,10 @@ struct
|
|||||||
else if width < scale then (scale - width) / 2.0
|
else if width < scale then (scale - width) / 2.0
|
||||||
else 0.0
|
else 0.0
|
||||||
|
|
||||||
val x = Real32.fromInt x * hratio + xOffset
|
val rx = Real32.fromInt x * hratio + xOffset
|
||||||
val y = Real32.fromInt y * hratio
|
val ry = Real32.fromInt y * hratio
|
||||||
in
|
in
|
||||||
helpGet (player, x, y, width, height)
|
helpGet (player, x, y, xOffset, 0.0, hratio, rx, ry, width, height)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user