AreaComp:

The area component.

groupComponents

subgroupComponent Types

area:

shape: Shape | null

If we use a custom shape over render shape.

scale: Vec2

Area scale.

cursor: Cursor | null

Cursor on hover.

Collider area info.

collisionIgnore: Tag[]

If this object should ignore collisions against certain other objects.

sincev3000.0

restitution?: number

Restitution ("bounciness") of the object.

friction?: number

Friction of the object.

isSensor: boolean

Whether collision detection should be done even without body.

isClicked(): boolean

If was just clicked on last frame.

isHovering(): boolean

If is being hovered on.

checkCollision(other: GameObj ): Collision | null

Check collision with another game obj.

sincev3000.0

getCollisions(): Collision[]

Get all collisions currently happening.

sincev3000.0

isColliding(o: GameObj ): boolean

If is currently colliding with another game obj.

isOverlapping(o: GameObj ): boolean

If is currently overlapping with another game obj (like isColliding, but will return false if the objects are just touching edges).

isVisuallyColliding(other: GameObj ): boolean

Returns true if the objects collide in screen space

paramother

onClick(f: ()=>void , btn?: MouseButton ): KEventController

Register an event runs when clicked.

sincev2000.1

onHover(action: ()=>void ): KEventController

Register an event runs once when hovered.

sincev3000.0

onHoverUpdate(action: ()=>void ): KEventController

Register an event runs every frame when hovered.

sincev3000.0

onHoverEnd(action: ()=>void ): KEventController

Register an event runs once when unhovered.

sincev3000.0

onCollide(tag: Tag , f: (obj: GameObj , col?: Collision )=>void ): KEventController

Register an event runs once when collide with another game obj with certain tag.

sincev2001.0

onCollide(f: (obj: GameObj , col?: Collision )=>void ): KEventController

Register an event runs once when collide with another game obj.

sincev2000.1

onCollideUpdate(tag: Tag , f: (obj: GameObj , col?: Collision )=>void ): KEventController

Register an event runs every frame when collide with another game obj with certain tag.

sincev3000.0

onCollideUpdate(f: (obj: GameObj , col?: Collision )=>void ): KEventController

Register an event runs every frame when collide with another game obj.

sincev3000.0

onCollideEnd(tag: Tag , f: (obj: GameObj )=>void ): KEventController

Register an event runs once when stopped colliding with another game obj with certain tag.

sincev3000.0

onCollideEnd(f: (obj: GameObj )=>void ): void

Register an event runs once when stopped colliding with another game obj.

sincev3000.0

hasPoint(p: Vec2 ): boolean

If has a certain point inside collider.

resolveCollision(obj: GameObj ): void

Push out from another solid game obj if currently overlapping.

localArea(): Shape

Get the geometry data for the collider in local coordinate space.

sincev3000.0

worldArea(): Shape

Get the geometry data for the collider in world coordinate space.

worldBbox(): Rect

Get the bounding box of the geometry data for the collider in world coordinate space.

screenArea(): Shape

Get the geometry data for the collider in screen coordinate space.

serialize(): any