玩家悬停在平台精灵上方
Player hovering above platform sprites
我一直在关注 Phaser 3 的介绍 http://phaser.io/tutorials/making-your-first-phaser-3-game 并在我制作的平台上方找到了我的角色 'hovering'。
如果可以回答以下任一问题,则可以忽略此 post 的其余部分:
是否有填充 属性 给 sprite 并且可以将其删除吗?
可以为 sprite 指定碰撞遮罩尺寸吗?
这是我初始化播放器和平台的代码以及碰撞代码。
(我意识到在 'this' 上定义玩家可能是一种奇怪的做事方式)
clouds = this.physics.add.staticGroup();
platforms = this.physics.add.staticGroup();
platforms.create(0, 400, 'platform').setScale(0.5).refreshBody();
clouds.create(200, 410, 'plc-cloud').setScale(0.5).refreshBody();
//player
this.player = this.physics.add.sprite(0,300,'player').setScale(0.5);
this.player.speed = 5.5;
this.player.isMoving = false;
this.player.isCrouching = false;
this.player.setCollideWorldBounds(true);
this.player.body.setGravityY(400);
this.physics.add.collider(this.player, platforms);
this.physics.add.collider(this.player, clouds);
图片尺寸:
播放器:100x100像素
云:150x150
平台:400x32
这是结果
platform hover
你的 sprite 不应该被填充 属性 除非你在加载 sprite 时指定的边距或间距不是 0。
您可以使用 setSize(width, height)
设置精灵的碰撞尺寸,请参阅 Phaser 文档 here。
如果您在物理配置中打开调试,它应该在平台和您的精灵周围绘制方框,以便您确定合适的尺寸。类似于:
physics: {
default: 'arcade',
arcade: {
debug: true
}
}
我一直在关注 Phaser 3 的介绍 http://phaser.io/tutorials/making-your-first-phaser-3-game 并在我制作的平台上方找到了我的角色 'hovering'。
如果可以回答以下任一问题,则可以忽略此 post 的其余部分:
是否有填充 属性 给 sprite 并且可以将其删除吗?
可以为 sprite 指定碰撞遮罩尺寸吗?
这是我初始化播放器和平台的代码以及碰撞代码。
(我意识到在 'this' 上定义玩家可能是一种奇怪的做事方式)
clouds = this.physics.add.staticGroup();
platforms = this.physics.add.staticGroup();
platforms.create(0, 400, 'platform').setScale(0.5).refreshBody();
clouds.create(200, 410, 'plc-cloud').setScale(0.5).refreshBody();
//player
this.player = this.physics.add.sprite(0,300,'player').setScale(0.5);
this.player.speed = 5.5;
this.player.isMoving = false;
this.player.isCrouching = false;
this.player.setCollideWorldBounds(true);
this.player.body.setGravityY(400);
this.physics.add.collider(this.player, platforms);
this.physics.add.collider(this.player, clouds);
图片尺寸: 播放器:100x100像素 云:150x150 平台:400x32
这是结果 platform hover
你的 sprite 不应该被填充 属性 除非你在加载 sprite 时指定的边距或间距不是 0。
您可以使用 setSize(width, height)
设置精灵的碰撞尺寸,请参阅 Phaser 文档 here。
如果您在物理配置中打开调试,它应该在平台和您的精灵周围绘制方框,以便您确定合适的尺寸。类似于:
physics: {
default: 'arcade',
arcade: {
debug: true
}
}