@gora54747

Phaser js как повернуть спрайт на угол,как изменить прозрачность спрайта, как столкновение двух спрайтов прописать?

Здравствуйте изучаю phaser js , по сайту источника https://www.phaser.io/ создал первую игру которая представлена на сайте и приступил к созданию своей вот код
<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8" />
    <title>Making your first Phaser 3 Game - Part 3</title>
    <script src="//cdn.jsdelivr.net/npm/phaser@3.11.0/dist/phaser.js"></script>
    <style type="text/css">
        body {
            margin: 0;
        }
    </style>
</head>
<body>

<script type="text/javascript">
    var config = {
    type: Phaser.AUTO,
    width: 768,
    height: 1024,
    physics: {  /* подключение Arcade Physics, поддержку физики*/
        default: 'arcade',
        arcade: {
            gravity: { y: 300 },
            debug: false
        }
    },
    scene: {
        preload: preload,
        create: create,
        update: update
    }
};
    var girl;
var timedEvent;
var platforms;
    var strelka;
    var game = new Phaser.Game(config);
    function preload ()
    {
        /*загружаем данные в загрузчик */
        this.load.image('backgraund', 'sprites/1_0000s_0005_bg.jpg');
        this.load.image('girl', 'sprites/1_0000s_0001s_0000_Layer-981.png');
        this.load.image('labal1', 'sprites/1_0000s_0002_Group-9.png');
        this.load.image('krug', 'sprites/1.png');
        this.load.image('strelka', 'sprites/1_0000_arrowdown.png');
     
    }
    function create ()
    {
        /*создаем размешаем фон координаты указаны по центру но можно по верхенму левому --
        this.add.image(0, 0, 'sky').setOrigin(0, 0)*/
        platforms = this.physics.add.staticGroup();
        platforms.create(0, 703, 'girl').setOrigin(0, 0);
        this.add.image(0, 0, 'backgraund').setOrigin(0, 0);
      girl= this.add.image(0, 703, 'girl').setOrigin(0, 0);
        this.add.image(130, 469, 'labal1').setOrigin(0, 0);
        
       strelka =  this.add.image(320, 670, 'strelka').setOrigin(0, 0);
        
        /*
        
        this.add.overlap(girl, strelka, collectStar, null, this);
        */
timedEvent = this.time.delayedCall(5000, onEvent, [], this);
          
    }
    function update ()
    {
         girl.x = girl.x +10;
        strelka.y = strelka.y + 10;
        
        /*
        console.log(girl.Alpha);
       console.log(girl.globalAlpha);
       console.log(girl.opacity);
        Phaser.Actions.SetAlpha(girl, 0.5, 0.5);
        girl.globalAlpha = 0.5;
        girl.Alpha = 0.5;
        girl.SetAlpha = 0.5;
      
            girl.frame.pivotY =10;
        girl.frame.pivotX =10;
        girl.frame.rotated = 100;
        */
    }
    function onEvent ()
{
    this.add.image(-30, 731, 'krug').setOrigin(0, 0);
   /* girl.kill();*/
    girl.destroy(true); 
    girl = 'null';
    
     
}
    
    function collectStar () {
    console.log("huy");
    }
</script>

</body>
</html>


вопрос в том пытаюсь в учебных целях реализовать
1. поворот на угол girl
2.изменить прозрачность girl
3.выполнить вывод в консоль при пересечении girl и стрелка

Прошу сразу извенить за вопрос из разряда "для чайников" Phaser js изучаю впервые на сайте Phaser что нашел не смог реализовать это видно в коде коментариев /**/ всем заранее спасибо...
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
strelka лучше заменить на arrow, русские слова писать транслитом англ. буквами не оч. хорошая практика, сразу отучайтесь от этого.

Насчет поворота тот тут скорее всего надо вызвать метод angle() у girl.

Если вы про коллизии то возможно подойдет https://phaser.io/examples/v3/view/physics/matterj...

Насчет прозрачности: наверняка есть какое-то свойство alpha, или метод setAlpha(). Попробуйте с этим поработать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы