From 52baf43af51e47a0e75c3984f3d7fbdbe828392f Mon Sep 17 00:00:00 2001
From: bye <bye@byecorps.com>
Date: Sun, 1 Sep 2024 12:18:18 +0100
Subject: [PATCH] Fix gaps between tiles

---
 src/js/objects/player.js | 2 +-
 src/js/rooms/game.js     | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/js/objects/player.js b/src/js/objects/player.js
index 2e09fc5..885cd6b 100644
--- a/src/js/objects/player.js
+++ b/src/js/objects/player.js
@@ -7,7 +7,7 @@ export default class Player extends Entity {
 
         this.jumping = false;
 
-        this.lastFramePos = {x: 0, y: 0};
+        this.lastFramePos = {x: this.x, y: this.y};
     }
 
     draw() {
diff --git a/src/js/rooms/game.js b/src/js/rooms/game.js
index 68dccdd..60eeca4 100644
--- a/src/js/rooms/game.js
+++ b/src/js/rooms/game.js
@@ -1,7 +1,7 @@
 
 import {Entity, Room} from "../../../hampsterengine/src/things";
 import Player from "../objects/player";
-import {clone, clonePlayer, abs} from "../extras";
+import {clone, clonePlayer, abs, roundToRatio} from "../extras";
 import Ground from "../objects/ground";
 
 export const rm_game = new Room();
@@ -79,7 +79,7 @@ rm_game.step = _=>{
     if (abs(player.vy) < 1) player.vy = 0;
     if (abs(player.vx) < 1) player.vx = 0;
 
-    if ({x: player.x, y: player.y} !== player.lastFramePos) {
+    if (player.x !== player.lastFramePos.x || player.y !== player.lastFramePos.y) {
         player.lastFramePos = {x: player.x, y: player.y};
         // Update the camera
         canvas.camera.goTo(
@@ -92,7 +92,7 @@ rm_game.step = _=>{
 
 rm_game.draw = _ => {
     canvas.ctx.save();
-    canvas.ctx.translate(-canvas.camera.x, -canvas.camera.y);
+    canvas.ctx.translate(roundToRatio(-canvas.camera.x), roundToRatio(-canvas.camera.y));
     for (let thing of rm_game.entities) {
         thing.draw();
     }
-- 
GitLab