From 27f230d8f6722e7fcb2c13a63ee7b9b4dcc00174 Mon Sep 17 00:00:00 2001 From: Ilia Mashkov Date: Tue, 21 Jul 2026 09:36:59 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B0=D0=BD=D0=B8=D0=BC=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=B4=D0=BB=D1=8F=20=D1=82=D0=B5=D0=BA=D1=81=D1=82?= =?UTF-8?q?=D1=83=D1=80=D1=8B=20=D0=BC=D1=8F=D1=87=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.js | 7 +++++++ src/view.js | 18 +++++++++++++++--- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/main.js b/src/main.js index 5aa3915..9eb044b 100644 --- a/src/main.js +++ b/src/main.js @@ -33,6 +33,13 @@ import { createGameView, managePerkViewsLifetime, rebuildBrickViews, syncronizeV const textures = await Assets.load([ '/sprites/fire_ball_1.png', + '/sprites/fire_ball_2.png', + '/sprites/fire_ball_3.png', + '/sprites/fire_ball_4.png', + '/sprites/fire_ball_5.png', + '/sprites/fire_ball_6.png', + '/sprites/fire_ball_7.png', + '/sprites/fire_ball_8.png', '/sprites/background_1.png', '/sprites/paddle.png', '/sprites/block_1.png', diff --git a/src/view.js b/src/view.js index 8ce1416..6910a95 100644 --- a/src/view.js +++ b/src/view.js @@ -1,4 +1,4 @@ -import { Container, Graphics, NineSliceSprite, Sprite, Text } from 'pixi.js'; +import { AnimatedSprite, Container, Graphics, NineSliceSprite, Sprite, Text } from 'pixi.js'; import { CONTAINER_HEIGHT, CONTAINER_WIDTH } from './config'; import { Ball } from './entities/ball/ball'; import { Brick } from './entities/brick/brick'; @@ -12,11 +12,23 @@ import { Game } from './game'; * @param {object} textures объект с текстурами для визуального отображения */ function createBallView(ball, textures) { - const texture = textures['/sprites/fire_ball_1.png']; - const ballSprite = new Sprite(texture); + const ballFrames = [ + textures['/sprites/fire_ball_1.png'], + textures['/sprites/fire_ball_2.png'], + textures['/sprites/fire_ball_3.png'], + textures['/sprites/fire_ball_4.png'], + textures['/sprites/fire_ball_5.png'], + textures['/sprites/fire_ball_6.png'], + textures['/sprites/fire_ball_7.png'], + textures['/sprites/fire_ball_8.png'], + ]; + + const ballSprite = new AnimatedSprite(ballFrames); + ballSprite.animationSpeed = 0.15; ballSprite.anchor.set(0.5); ballSprite.width = ball.radius * 2; ballSprite.height = ball.radius * 2; + ballSprite.play(); return ballSprite; }