Jump to content

setCollisionByProperty seems not to be working


talamask
 Share

Recommended Posts

Here's my create() function.

   create() {
      const map = this.make.tilemap({key: "level_map"});

      const tileset = map.addTilesetImage("Caves", "tiles");

      const walls  = map.createStaticLayer("walls", tileset, 0, 0);
      const decals = map.createStaticLayer("decals", tileset, 0, 0);

      // create player sprite
      this.player = this.physics.add.sprite(16*9, 16*23, "player");

      // set collitions tiles by property
      walls.setCollisionByProperty({collides: true});

      // show collision tiles with different color
      const debugGraphics = this.add.graphics().setAlpha(0.45);
      walls.renderDebug(debugGraphics, {
         tileColor: new Phaser.Display.Color(40, 255, 48, 255), // Color of non-colliding tiles
         collidingTileColor: new Phaser.Display.Color(243, 134, 48, 255), // Color of colliding tiles
         faceColor: new Phaser.Display.Color(40, 39, 37, 255) // Color of colliding face edges
      });

      // setup physics
      this.physics.add.collider(this.player, walls);

      // cursors
      this.cursors = this.input.keyboard.createCursorKeys();

      // camera
      this.camera = this.cameras.main;
      this.camera.startFollow(this.player);
      this.camera.setBounds(0, 0, map.widthInPixels, map.heightInPixels);
   }

I load up a tilemap, read layers "walls" and "decals", set a collision by property and then add a collider of player to "walls". For me it seems that everything is ok. 

In Tiled I set up a "collides" bool variable and marked all impassible tiles as true, saved a level, exported JSON.. For debugging properties I even set up "walls.renderDebug" thing.

And of course after I launch the game I get a screen filled with green areas and my player falling down through a level.

One small note is that if I, instead of setCollisionByProperty use setCollisionBetween(1, 100) for example I do get some areas colored orange.

So, what am I doing wring in my code? In attachement there is my JSON file, maybe something is wrong with it.

level_02b64.json

Edited by talamask
added JSON with level
Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...