From 068cf4aa79b43646462dbedc1f602b2479a8de81 Mon Sep 17 00:00:00 2001 From: Ilia Mashkov Date: Sat, 18 Jul 2026 10:03:31 +0300 Subject: [PATCH] =?UTF-8?q?refactor(paddle):=20=D0=BC=D0=B5=D1=82=D0=BE?= =?UTF-8?q?=D0=B4=20clampTo=20=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=20=D0=BD=D0=B0=20moveTo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/entities/paddle/paddle.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/entities/paddle/paddle.js b/src/entities/paddle/paddle.js index 23c24d0..e534883 100644 --- a/src/entities/paddle/paddle.js +++ b/src/entities/paddle/paddle.js @@ -16,14 +16,21 @@ export class Paddle { } /** - * Ограничивает минимальные и максимальные координаты положения ракетки на оси X - * @param {number} containerWidth ширина игрового поля + * Изменяет X координату ракетки, ограничивая минимальные и максимальные координаты + * @param {number} x новая X координата + * @param {number} minX минимальное положение на оси X + * @param {number} maxX максимальное положение на оси X */ - clampTo(containerWidth) { - if (this.x <= 0) { - this.x = 0; - } else if (this.x >= containerWidth - this.width) { - this.x = containerWidth - this.width; + moveTo(x, minX, maxX) { + switch (true) { + case minX !== undefined && x <= minX: + this.x = minX; + return; + case maxX !== undefined && x >= maxX - this.width: + this.x = maxX - this.width; + return; + default: + this.x = x; } } }