Advertisement
vencinachev

WalkingMario

Aug 19th, 2021
1,580
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 'use strict'
  2. const Game = new Phaser.Game(800, 800, Phaser.AUTO, 'game-canvas', { preload, create, update })
  3.  
  4. let sprite, sprite2;
  5.  
  6. function preload() {
  7.     // 640x222, 5el in one line
  8.     Game.load.spritesheet('bob', 'bob.png', 640 / 5, 222 / 1);
  9. }
  10.  
  11. let counter = 0;
  12. let textVar;
  13. let speed = 5;
  14. let pos = 'up';
  15.  
  16. function create() {
  17.     sprite = Game.add.sprite(30, 20, 'bob');
  18.     sprite.animations.add('walk', [0, 1, 2], 10, true);
  19.     sprite.animations.play('walk');
  20.     sprite.x = 0;
  21.     sprite.y = 0;
  22. }
  23.  
  24. function update() {
  25.  
  26.     switch (pos) {
  27.         case 'left': sprite.x += speed; break;
  28.         case 'right': sprite.x -= speed; break;
  29.         case 'up': sprite.y -= speed; break;
  30.         case 'down': sprite.y += speed; break;
  31.     }
  32.  
  33.     switch (pos) {
  34.         case 'left':
  35.             if (sprite.x  > Game.width - sprite.width) {
  36.                 pos = 'down';
  37.                 sprite.x = Game.width;
  38.             }
  39.             sprite.angle = 0;
  40.             break;
  41.         case 'down':
  42.             if (sprite.y > Game.height - sprite.height) {
  43.                 pos = 'right';
  44.                 sprite.y = Game.height;
  45.             }
  46.             sprite.angle = 90;
  47.             break;
  48.         case 'right':
  49.             if (sprite.x <= sprite.width) {
  50.                 pos = 'up';
  51.                 sprite.x = 0;
  52.             }
  53.             sprite.angle = 180;
  54.             break;
  55.         case 'up':
  56.             if (sprite.y <= sprite.height) {
  57.                 pos = 'left';
  58.                 sprite. y = 0
  59.             }
  60.             sprite.angle = 270;
  61.             break;
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement