Interface

AreaComp

:

The area component.

group Component Types

area

: {

shape

: Shape | null

If we use a custom shape over render shape.

scale

: Vec2

Area scale.

offset

: Vec2

Area offset.

cursor

: Cursor | null

Cursor on hover.

}

Collider area info.

collisionIgnore

: Tag[]

If this object should ignore collisions against certain other objects.

since v3000.0

restitution

?: number

Restitution ("bounciness") of the object.

friction

?: number

Friction of the object.

isClicked

(): boolean

If was just clicked on last frame.

isHovering

(): boolean

If is being hovered on.

checkCollision

(other: GameObj<AreaComp>): Collision | null

Check collision with another game obj.

since v3000.0

getCollisions

(): Collision[]

Get all collisions currently happening.

since v3000.0

isColliding

(o: GameObj<AreaComp>): boolean

If is currently colliding with another game obj.

isOverlapping

(o: GameObj<AreaComp>): boolean

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

onClick

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

Register an event runs when clicked.

since v2000.1

onHover

(action: () => void): KEventController

Register an event runs once when hovered.

since v3000.0

onHoverUpdate

(action: () => void): KEventController

Register an event runs every frame when hovered.

since v3000.0

onHoverEnd

(action: () => void): KEventController

Register an event runs once when unhovered.

since v3000.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.

since v2001.0

onCollide

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

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

since v2000.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.

since v3000.0

onCollideUpdate

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

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

since v3000.0

onCollideEnd

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

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

since v3000.0

onCollideEnd

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

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

since v3000.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.

since v3000.0

worldArea

(): Shape

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

screenArea

(): Shape

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

kaplay logo

Layer

Miscalenous