Проблема в том, что ты хранишь координаты в dom-элементах
this.x
this.y
Но у элемента img есть специфические свойства x и y, которые readonly, то есть ты не можешь перезаписать их значения. При этом y зависит от масштаба, так как это значение в пикселях от картинки до html-элемента. Из-за этого и происходит фигня.
Храни координаты лучше в дата атрибутах
То есть так
this.dataset.x = //значение
this.dataset.y = //значение
Ну и когда нужно получить значение так же обращаешься
enemies[n].dataset.y
line.dataset.y
Ну и тд.
Переделай на datasetы и все заработает как надо