all by me, important that you do (x- camx) * zoom and not (x * zoom) - camx, so that a change in camx will move things less when zoomed out, becuase thats how it should realisticalyl work, same for camy