diff options
Diffstat (limited to 'src/engine/components')
-rw-r--r-- | src/engine/components/Colliding.ts | 13 | ||||
-rw-r--r-- | src/engine/components/ComponentNames.ts | 1 | ||||
-rw-r--r-- | src/engine/components/RadialObserver.ts | 13 | ||||
-rw-r--r-- | src/engine/components/index.ts | 1 |
4 files changed, 28 insertions, 0 deletions
diff --git a/src/engine/components/Colliding.ts b/src/engine/components/Colliding.ts new file mode 100644 index 0000000..fe782df --- /dev/null +++ b/src/engine/components/Colliding.ts @@ -0,0 +1,13 @@ +import { Component, ComponentNames } from "."; +import { Game } from ".."; +import { Entity } from "../entities"; + +export class Colliding extends Component { + public onCollision?: (game: Game, entity: Entity) => void; + + constructor(onCollision?: (game: Game, entity: Entity) => void) { + super(ComponentNames.Colliding); + + this.onCollision = onCollision; + } +} diff --git a/src/engine/components/ComponentNames.ts b/src/engine/components/ComponentNames.ts index fdf1a18..aec14c5 100644 --- a/src/engine/components/ComponentNames.ts +++ b/src/engine/components/ComponentNames.ts @@ -7,6 +7,7 @@ export namespace ComponentNames { export const Highlight = "Highlight"; export const Interactable = "Interactable"; export const Pushable = "Pushable"; + export const Colliding = "Colliding"; export const RadialObserve = "RadialObserve"; export const GridSpawn = "GridSpawn"; export const Text = "Text"; diff --git a/src/engine/components/RadialObserver.ts b/src/engine/components/RadialObserver.ts new file mode 100644 index 0000000..627c4ff --- /dev/null +++ b/src/engine/components/RadialObserver.ts @@ -0,0 +1,13 @@ +import { Component, ComponentNames } from "."; +import { Game } from ".."; +import { Entity } from "../entities"; + +export class Colliding extends Component { + public onCollision?: (game: Game, entity: Entity) => void; + + constructor(onCollision?: (game: Game, entity: Entity) => void) { + super(ComponentNames.RadialObserve); + + this.onCollision = onCollision; + } +} diff --git a/src/engine/components/index.ts b/src/engine/components/index.ts index d3b2fd0..0e5f85c 100644 --- a/src/engine/components/index.ts +++ b/src/engine/components/index.ts @@ -8,6 +8,7 @@ export * from "./Control"; export * from "./Highlight"; export * from "./Interactable"; export * from "./Pushable"; +export * from "./RadialObserve"; export * from "./Colliding"; export * from "./GridSpawn"; export * from "./Text"; |