Merge pull request #42 from gparant/refactor-sizing-character
Refactor sizing hitbox character
This commit is contained in:
commit
1c833f6114
@ -14,7 +14,8 @@ export class PlayableCaracter extends Phaser.Physics.Arcade.Sprite {
|
|||||||
this.scene.physics.world.enableBody(this);
|
this.scene.physics.world.enableBody(this);
|
||||||
this.setImmovable(true);
|
this.setImmovable(true);
|
||||||
this.setCollideWorldBounds(true);
|
this.setCollideWorldBounds(true);
|
||||||
this.setSize(32, 32); //edit the hitbox to better match the caracter model
|
this.setSize(16, 16); //edit the hitbox to better match the caracter model
|
||||||
|
this.setOffset(8, 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
move(x: number, y: number){
|
move(x: number, y: number){
|
||||||
|
@ -94,16 +94,16 @@ export class GameScene extends Phaser.Scene implements GameSceneInterface{
|
|||||||
//add collision layer
|
//add collision layer
|
||||||
this.Layers.forEach((Layer: Phaser.Tilemaps.StaticTilemapLayer) => {
|
this.Layers.forEach((Layer: Phaser.Tilemaps.StaticTilemapLayer) => {
|
||||||
this.physics.add.collider(this.CurrentPlayer, Layer, (object1: any, object2: any) => {
|
this.physics.add.collider(this.CurrentPlayer, Layer, (object1: any, object2: any) => {
|
||||||
this.CurrentPlayer.say("Collision with layer : "+ (object2 as Tile).layer.name)
|
//this.CurrentPlayer.say("Collision with layer : "+ (object2 as Tile).layer.name)
|
||||||
});
|
});
|
||||||
Layer.setCollisionByProperty({collides: true});
|
Layer.setCollisionByProperty({collides: true});
|
||||||
//debug code
|
//debug code
|
||||||
//debug code to see the collision hitbox of the object in the top layer
|
//debug code to see the collision hitbox of the object in the top layer
|
||||||
Layer.renderDebug(this.add.graphics(), {
|
/*Layer.renderDebug(this.add.graphics(), {
|
||||||
tileColor: null, //non-colliding tiles
|
tileColor: null, //non-colliding tiles
|
||||||
collidingTileColor: new Phaser.Display.Color(243, 134, 48, 200), // Colliding tiles,
|
collidingTileColor: new Phaser.Display.Color(243, 134, 48, 200), // Colliding tiles,
|
||||||
faceColor: new Phaser.Display.Color(40, 39, 37, 255) // Colliding face edges
|
faceColor: new Phaser.Display.Color(40, 39, 37, 255) // Colliding face edges
|
||||||
});
|
});*/
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ export class GameScene extends Phaser.Scene implements GameSceneInterface{
|
|||||||
createCollisionObject(){
|
createCollisionObject(){
|
||||||
this.Objects.forEach((Object : Phaser.Physics.Arcade.Sprite) => {
|
this.Objects.forEach((Object : Phaser.Physics.Arcade.Sprite) => {
|
||||||
this.physics.add.collider(this.CurrentPlayer, Object, (object1: any, object2: any) => {
|
this.physics.add.collider(this.CurrentPlayer, Object, (object1: any, object2: any) => {
|
||||||
this.CurrentPlayer.say("Collision with object : " + (object2 as Phaser.Physics.Arcade.Sprite).texture.key)
|
//this.CurrentPlayer.say("Collision with object : " + (object2 as Phaser.Physics.Arcade.Sprite).texture.key)
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -50,8 +50,6 @@ export class Player extends PlayableCaracter implements CurrentGamerInterface, G
|
|||||||
|
|
||||||
//the current player model should be push away by other players to prevent conflict
|
//the current player model should be push away by other players to prevent conflict
|
||||||
this.setImmovable(false);
|
this.setImmovable(false);
|
||||||
//edit the hitbox to better match the caracter model
|
|
||||||
this.setSize(32, 32);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
initAnimation(): void {
|
initAnimation(): void {
|
||||||
|
Loading…
Reference in New Issue
Block a user