diff --git a/assets/NNDungeon.json b/assets/NNDungeon.json index 8483db4..943452c 100644 --- a/assets/NNDungeon.json +++ b/assets/NNDungeon.json @@ -781,8 +781,41 @@ "type":"", "visible":true, "width":100, - "x":4500, - "y":300 + "x":6050.49833041819, + "y":346.500238511687 + }, + { + "gid":301, + "height":200, + "id":22, + "name":"", + "properties":[ + { + "name":"NNBoss", + "type":"bool", + "value":true + }, + { + "name":"garbage", + "type":"bool", + "value":true + }, + { + "name":"health", + "type":"int", + "value":3 + }, + { + "name":"patrolY", + "type":"int", + "value":400 + }], + "rotation":0, + "type":"", + "visible":true, + "width":200, + "x":4400, + "y":400 }], "opacity":1, "type":"objectgroup", @@ -848,7 +881,7 @@ "y":0 }], "nextlayerid":6, - "nextobjectid":22, + "nextobjectid":23, "orientation":"orthogonal", "renderorder":"right-down", "tiledversion":"1.11.2", @@ -1554,6 +1587,19 @@ "tilecount":100, "tileheight":100, "tilewidth":100 + }, + { + "columns":5, + "firstgid":301, + "image":"boss-tiles.png", + "imageheight":1000, + "imagewidth":1000, + "margin":0, + "name":"boss-tiles", + "spacing":0, + "tilecount":25, + "tileheight":200, + "tilewidth":200 }], "tilewidth":100, "type":"map", diff --git a/assets/boss-tiles.png b/assets/boss-tiles.png new file mode 100644 index 0000000..c021940 Binary files /dev/null and b/assets/boss-tiles.png differ diff --git a/raw/boss-tiles.psd b/raw/boss-tiles.psd new file mode 100644 index 0000000..54e85ec Binary files /dev/null and b/raw/boss-tiles.psd differ diff --git a/src/main.js b/src/main.js index 710db95..4356092 100644 --- a/src/main.js +++ b/src/main.js @@ -21,8 +21,8 @@ const config = { }, scene: [ - MenuScene, - Gulch, + //MenuScene, + //Gulch, NNDungeon ] }; diff --git a/src/scenes/NNDungeon.js b/src/scenes/NNDungeon.js index 4959f38..eefb41c 100644 --- a/src/scenes/NNDungeon.js +++ b/src/scenes/NNDungeon.js @@ -29,6 +29,10 @@ export class NNDungeon extends Phaser.Scene { frameWidth: 100, frameHeight: 100 }); + this.load.spritesheet('boss-tiles', 'assets/boss-tiles.png', { + frameWidth: 100, + frameHeight: 100 + }); this.load.spritesheet('99Dungeon-tiles', 'assets/dungeon-tiles.png', { frameWidth: 100, frameHeight: 100 @@ -58,8 +62,8 @@ export class NNDungeon extends Phaser.Scene { //const zoneLayer = gulchMap.getObjectLayer('zone'); // Add a player - this.player = new Player(this, 2400, 3450); - //this.player = new Player(this, 3550, 350); + //this.player = new Player(this, 2400, 3450); + this.player = new Player(this, 3550, 350); this.player.healthBars(true, 1, 3); // zoneLayer.objects.forEach(object => { @@ -90,7 +94,12 @@ export class NNDungeon extends Phaser.Scene { runChildUpdate: true }); enemiesLayer.objects.forEach(object => { - let a99Boy = this.enemies.create(object.x-50, object.y-50, '99boy-tiles', object.gid-201); + let a99Boy; + if (object.gid > 300) { + a99Boy = this.enemies.create(object.x-50, object.y-50, 'boss-tiles', object.gid-301); + } else { + a99Boy = this.enemies.create(object.x-50, object.y-50, '99boy-tiles', object.gid-201); + } if (object.properties) { object.properties.forEach(prop => { if (prop.name === 'patrolX') { @@ -124,7 +133,7 @@ export class NNDungeon extends Phaser.Scene { a99Boy.bottleReloadVariance = 500; } if (prop.name === 'NNBoss' && prop.value === true) { - a99Boy.setScale(2.5); + a99Boy.tiles = 'boss-tiles' } if (prop.name === 'health') { a99Boy.health = prop.value; diff --git a/src/scenes/gulch.js b/src/scenes/gulch.js index b832ea2..2cb0f41 100644 --- a/src/scenes/gulch.js +++ b/src/scenes/gulch.js @@ -69,7 +69,6 @@ export class Gulch extends Phaser.Scene { runChildUpdate: true }); enemiesLayer.objects.forEach(object => { - let a99Boy = this.enemies.create(object.x-50, object.y-50, '99boy-tiles', object.gid-101); if (object.properties) { object.properties.forEach(prop => { if (prop.name === 'patrolX') {