summaryrefslogtreecommitdiff
path: root/src/entities/entity.js
blob: 9d2750827c439af8da159c536336603e3780bd32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import { Vector } from "../engine/vector.js"
import { Engine } from "../engine.js"
import { entities } from "../main.js"

export class Entity {
    constructor({
        size,
        hitbox = size,
        sprite,
        position = new Vector(0,0),
        pixelated = false,
    }) {
        this.size = size
        this.hitbox = hitbox
        this.position = position

        this.span = document.createElement("img")
        this.span.src = sprite
        Engine.screen.append(this.span)

        entities.list.push(this)
        if (pixelated) this.span.className = "pixelated"
    }

    update() {}

    draw() {
        Engine.screen.draw(this.span, this.position, this.size)
    }


    remove() {
        this.span.remove()
        entities.remove(this)
    }
}