From 25adfc618e77db9a5ee3b98ce0dab0be832efed0 Mon Sep 17 00:00:00 2001 From: niliara-edu Date: Tue, 24 Dec 2024 17:58:20 +0100 Subject: hello kitty base done --- src/entities/hp_bar.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/entities/hp_bar.js (limited to 'src/entities/hp_bar.js') diff --git a/src/entities/hp_bar.js b/src/entities/hp_bar.js new file mode 100644 index 0000000..d6e68bb --- /dev/null +++ b/src/entities/hp_bar.js @@ -0,0 +1,32 @@ +import { WHITE } from "../assets.js" +import { Vector } from "../engine/vector.js" +import { Engine } from "../engine.js" +import { Entity } from "./entity.js" +import { enemy } from "../main.js" + +export class HPBar extends Entity { + constructor() { + let size = new Vector(Engine.screen.viewport.x, 20) + super({ + size: new Vector(Engine.screen.viewport.x, 20), + position: new Vector(size.x / 2, size.y / 2), + sprite: WHITE, + pixelated: true, + }) + + this.lasthp = enemy.hp + } + + update() { + if (enemy.hp != this.lasthp) { + this.lasthp = enemy.hp + + let hpScale = enemy.hp / enemy.max_hp + let viewport = Engine.screen.viewport + + this.size.x = hpScale * viewport.x + this.position.x = (viewport.x / 2) - (1 - hpScale) / 2 * viewport.x + } + } +} + -- cgit v1.2.3