Home Reference Source
import {Model} from 'penvas/src/model.js'
public class | source

Model

Extends:

EventEmitter → Model

Direct Subclass:

Particle, Sprite, Tileset, Viewport

Base class for every model entity

Example:

let model = new Model(10, 10, 100, 200);

Static Method Summary

Static Public Methods
public static

Constructor Summary

Public Constructor
public

constructor(x: number, y: number, width: number, height: number, hitbox: Object)

Member Summary

Public Members
public
public
public get

hitbox: Object: {"x": *, "y": *, "width": *, "height": *, "radius": *}

public set

hitbox(hitbox: Object): *

public

parent: {}

public
public set

x: *

public get

x: number: *

public set

y: *

public get

y: number: *

Method Summary

Public Methods
public

render(ctx: RenderingContext, drawer: Drawer)

public
public

step(dt: number)

Inherited Summary

From class EventEmitter
protected

List of registers

public

dispatch(event: String, args: mixed)

Dispatch event

public

on(event: String, callback: function, context: mixed)

Listen event

Static Public Methods

public static deserialize(data: Object): Model source

Params:

NameTypeAttributeDescription
data Object
data.x number
data.y number
data.width number
data.height number
data.hitbox Object
data.collision boolean

Return:

Model

Public Constructors

public constructor(x: number, y: number, width: number, height: number, hitbox: Object) source

Override:

EventEmitter#constructor

Params:

NameTypeAttributeDescription
x number
y number
width number
height number
hitbox Object
  • optional
hitbox.x number
  • optional
hitbox.y number
  • optional
hitbox.width number
  • optional
hitbox.height number
  • optional

Public Members

public collision: boolean source

public height: number source

public get hitbox: Object: {"x": *, "y": *, "width": *, "height": *, "radius": *} source

Properties:

NameTypeAttributeDescription
x number
y number
width number
height number

Return:

Object

Return Properties:

NameTypeAttributeDescription
x number
y number
width number
height number

public set hitbox(hitbox: Object): * source

public parent: {} source

public width: number source

public set x: * source

Properties:

NameTypeAttributeDescription
value number

public get x: number: * source

Return:

number

public set y: * source

Properties:

NameTypeAttributeDescription
value number

public get y: number: * source

Return:

number

Public Methods

public render(ctx: RenderingContext, drawer: Drawer) source

Params:

NameTypeAttributeDescription
ctx RenderingContext
drawer Drawer
  • optional
  • default: null

public serialize(): Object source

Return:

Object

Return Properties:

NameTypeAttributeDescription
x number
y number
width number
height number
hitbox Object
collision boolean

public step(dt: number) source

Params:

NameTypeAttributeDescription
dt number