1
0
Fork 0
mirror of https://github.com/mat-1/matdoesdev.git synced 2025-08-02 06:36:04 +00:00

fix neko oscillation

This commit is contained in:
mat 2024-09-30 02:25:27 +00:00
parent fb50e73419
commit c854549ef2
2 changed files with 14 additions and 7 deletions

View file

@ -65,8 +65,8 @@
let startMouseX = 0
let startMouseY = 0
let initialX = 0
let initialY = 0
let initialX = 16
let initialY = 16
let offsetX = 0
let offsetY = 0
@ -109,7 +109,7 @@
>
<!-- svelte-ignore a11y-no-static-element-interactions -->
<div class="title-bar" on:mousedown={startDragWindow}>
<div class="title-bar-text">cat config page</div>
<div class="title-bar-text">cat config</div>
<div class="title-bar-controls">
<button aria-label="Minimize" on:click={closeWindow}></button>
<button aria-label="Maximize" on:click={toggleMaximizeWindow}></button>
@ -218,6 +218,7 @@
background-attachment: fixed;
background-size: cover;
height: 100%;
margin: 0;
}
:global(.music-player) {

View file

@ -359,9 +359,13 @@ export function initNeko(
const distance = Math.sqrt(diffX ** 2 + diffY ** 2)
const speed = Math.sqrt(nekoState.velX ** 2 + nekoState.velY ** 2)
const calculatedFollowDistance = Math.max(
nekoState.speedMultiplier * nekoConfig.accelMultiplier,
nekoFollowDistance
)
if (
distance <
Math.max(nekoState.speedMultiplier * nekoConfig.accelMultiplier, nekoFollowDistance) &&
distance < calculatedFollowDistance &&
speed <= nekoState.speedMultiplier * nekoConfig.accelMultiplier * 2
) {
nekoState.velX = 0
@ -391,8 +395,10 @@ export function initNeko(
nekoState.velX *= nekoConfig.slipperiness
nekoState.velY *= nekoConfig.slipperiness
nekoState.velX += accelX * nekoConfig.accelMultiplier
nekoState.velY += accelY * nekoConfig.accelMultiplier
if (distance > calculatedFollowDistance || Math.sign(accelX) != Math.sign(nekoState.velX))
nekoState.velX += accelX * nekoConfig.accelMultiplier
if (distance > calculatedFollowDistance || Math.sign(accelY) != Math.sign(nekoState.velY))
nekoState.velY += accelY * nekoConfig.accelMultiplier
let direction: string