AreaComp:
The area component.
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.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.collisionIgnore: Tag[]
If this object should ignore collisions against certain other objects.since
restitution?: number
friction?: number
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.since
getCollisions(): Collision[]
Get all collisions currently happening.since
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).onClick(f: ()=>void, btn?: MouseButton): void
Register an event runs when clicked.since
onHover(action: ()=>void): KEventController
Register an event runs once when hovered.since
onHoverUpdate(action: ()=>void): KEventController
Register an event runs every frame when hovered.since
onHoverEnd(action: ()=>void): KEventController
Register an event runs once when unhovered.since
onCollide(tag: Tag, f: (obj: GameObj, col?: Collision)=>void): void
Register an event runs once when collide with another game obj with certain tag.since
onCollide(f: (obj: GameObj, col?: Collision)=>void): void
Register an event runs once when collide with another game obj.since
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
onCollideUpdate(f: (obj: GameObj, col?: Collision)=>void): KEventController
Register an event runs every frame when collide with another game obj.since
onCollideEnd(tag: Tag, f: (obj: GameObj)=>void): KEventController
Register an event runs once when stopped colliding with another game obj with certain tag.since
onCollideEnd(f: (obj: GameObj)=>void): void
Register an event runs once when stopped colliding with another game obj.since
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