Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как повернуть каждое изображение в массиве (https://javascript.ru/forum/misc/76377-kak-povernut-kazhdoe-izobrazhenie-v-massive.html)

Retro_1477 06.01.2019 11:48

Как повернуть каждое изображение в массиве
 
у меня задаётся массив с изображениями. Как можно повернуть каждый элемент массива используя rotate?

рони 06.01.2019 12:12

Retro_1477,
циклом присвоить нужный класс.

Retro_1477 06.01.2019 13:03

for (var i = 0; i < 8; i++) {
      game.cat.state[1][i] = new Image();
      game.cat.state[2][i] = new Image();
      game.cat.state[1][i].src = 'assets/sprites/cat0/run/left/Run(' + i + ').png';
      game.cat.state[2][i].src = game.cat.state[1][i].src;
    }

рони 06.01.2019 13:41

Retro_1477,
:-?

Retro_1477 06.01.2019 13:46

я просто не знаю куда вставить rotate

рони 06.01.2019 14:29

Retro_1477,
<style type="text/css">
  img.rotate{
      transform: rotate(90deg);
  }

  </style>

  <script>
for (var i = 0; i < 8; i++) {
      game.cat.state[1][i] = new Image();
      game.cat.state[2][i] = new Image();
      game.cat.state[1][i].src = 'assets/sprites/cat0/run/left/Run(' + i + ').png';
      game.cat.state[2][i].src = game.cat.state[1][i].src;
      game.cat.state[1][i].classList.add('rotate');
      game.cat.state[2][i].classList.add('rotate');
    }

  </script>

рони 06.01.2019 14:32

Retro_1477,
или так
for (var i = 0; i < 8; i++) {
      game.cat.state[1][i] = new Image();
      game.cat.state[2][i] = new Image();
      game.cat.state[1][i].src = 'assets/sprites/cat0/run/left/Run(' + i + ').png';
      game.cat.state[2][i].src = game.cat.state[1][i].src;
      game.cat.state[1][i].style.transform = 'rotate(90deg)';
      game.cat.state[2][i].style.transform = 'rotate(90deg)';
    }

Retro_1477 06.01.2019 15:03

Я так же пробовал делать, не получается. Суть в том, что я подгружаю кадры анимации бега вправо и влево, но мне хочется сделать, чтобы я подгружал только один стек анимаций, а второй просто зеркально повернуть.
Вот код рендера персонажа:
ctx.drawImage(game.cat.state[game.cat.anim0][game.cat.anim1], game.cat.x, game.cat.y, game.cat.width, game.cat.height);

рони 06.01.2019 15:23

Retro_1477,
не могу помочь, но на всякий случай
transform: scaleX(-1);

Retro_1477 06.01.2019 15:31

окей, спасибо за старания)


Часовой пояс GMT +3, время: 01:07.