From 179eaf4f82f327c4f26b12f949f60ca272cf785e Mon Sep 17 00:00:00 2001 From: Mal Date: Tue, 3 Sep 2024 23:08:08 +0200 Subject: [PATCH] Giesela is now sleeping until finish --- graphics/giesela-left-sleeping.png | Bin 0 -> 3059 bytes graphics/giesela-right-sleeping.png | Bin 0 -> 3026 bytes js/Game.js | 24 ++++++++++++++++++++---- js/Gisela.js | 10 +++++++++- js/module.js | 2 ++ 5 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 graphics/giesela-left-sleeping.png create mode 100644 graphics/giesela-right-sleeping.png diff --git a/graphics/giesela-left-sleeping.png b/graphics/giesela-left-sleeping.png new file mode 100644 index 0000000000000000000000000000000000000000..733b1dae5899dcdb2ab7a762ae45018098b9d5c8 GIT binary patch literal 3059 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 literal 0 HcmV?d00001 diff --git a/js/Game.js b/js/Game.js index d6bc28d..578f9bf 100644 --- a/js/Game.js +++ b/js/Game.js @@ -51,10 +51,20 @@ export class Game return; } - if (this.gisela.currentAnimation !== 'LOOK_LEFT' && this.mrCroc.position.x < this.gisela.position.x) { - this.gisela.currentAnimation = 'LOOK_LEFT'; - } else if (this.gisela.currentAnimation !== 'LOOK_RIGHT' && this.mrCroc.position.x >= this.gisela.position.x) { - this.gisela.currentAnimation = 'LOOK_RIGHT'; + /* + if (this.gisela.currentAnimation !== 'SLEEP_LEFT' && this.mrCroc.position.x < this.gisela.position.x) { + this.gisela.currentAnimation = 'SLEEP_LEFT'; + } else if (this.gisela.currentAnimation !== 'SLEEP_RIGHT' && this.mrCroc.position.x >= this.gisela.position.x) { + this.gisela.currentAnimation = 'SLEEP_RIGHT'; + } + */ + + if (!this.gameFinished) { + if (this.mrCroc.position.x < this.gisela.position.x) { + this.gisela.playAnimation('SLEEP_LEFT', timestamp); + } else { + this.gisela.playAnimation('SLEEP_RIGHT', timestamp); + } } this.context.clearRect(0, 0, window.innerWidth, window.innerHeight); @@ -164,6 +174,12 @@ export class Game finish() { + if (this.mrCroc.position.x < this.gisela.position.x) { + this.gisela.currentAnimation = 'LOOK_LEFT'; + } else { + this.gisela.currentAnimation = 'LOOK_RIGHT'; + } + this.gameFinished = true; this.KeyLeft.pressed = false; this.KeyRight.pressed = false; diff --git a/js/Gisela.js b/js/Gisela.js index b91b7f4..3dbb08b 100644 --- a/js/Gisela.js +++ b/js/Gisela.js @@ -15,5 +15,13 @@ export default class Gisela extends Movable 'LOOK_RIGHT', new RetroAnimation(Setting.GRAPHICS_LOCATION + 'gisela-right.png', 1, SCALE, 0.01) ); + this.addAnimation( + 'SLEEP_LEFT', + new RetroAnimation(Setting.GRAPHICS_LOCATION + 'giesela-left-sleeping.png', 4, SCALE, 4) + ); + this.addAnimation( + 'SLEEP_RIGHT', + new RetroAnimation(Setting.GRAPHICS_LOCATION + 'giesela-right-sleeping.png', 4, SCALE, 4) + ); } -} \ No newline at end of file +} diff --git a/js/module.js b/js/module.js index fd867a5..7326f08 100644 --- a/js/module.js +++ b/js/module.js @@ -58,6 +58,8 @@ function loadLevel(level) loader.addImage(Setting.GRAPHICS_LOCATION + 'gisela-right.png'); loader.addImage(Setting.GRAPHICS_LOCATION + 'gisela-left.png'); loader.addImage(Setting.GRAPHICS_LOCATION + 'gisela-left.png'); + loader.addImage(Setting.GRAPHICS_LOCATION + 'giesela-left-sleeping.png'); + loader.addImage(Setting.GRAPHICS_LOCATION + 'giesela-right-sleeping.png'); for (const graphicSet of GraphicSet) { loader.addImage(Setting.TILESET_LOCATION + graphicSet.tileset);