UiWidget

Extends: BGE.GameEntity

Base Abstract class for all UI Elements

Properties

  • customPosition (boolean) — If position = "custom", then m.customX is horizontal position of this element from the parent position ' and m.customY is the vertical position of this element from the parent position (positive is down)
  • customX (float)
  • customY (float)
  • horizAlign (string) — If customPosition is false, this dictates where horizontally in the container this element should go. Can be: "left", "center" or "right"
  • vertAlign (string) — If customPosition is false, this dictates where vertically in the container this element should go. Can be: "top", "center" or "bottom"
  • width (integer) — Width of the element
  • height (integer) — Height of the element
  • canvas (BGE.Canvas)
  • padding (OffsetSize)
  • margin (OffsetSize)

Constructor

new UiWidget(game: BGE.Game): UiWidget

Parameters


Instance Methods

getValue(): dynamic

Function to get the value of the UI element

Returns

  • dynamic

draw(parent?: UiWidget): void

Method called each frame to draw any images of this entity

Parameters

  • parent (UiWidget, optional, default: "invalid") — the parent of this Ui Element - will be an object with {x, y, width, height}

Returns

  • void

setCanvas(canvas?: BGE.Canvas): void

Set the canvas this UIWidgetDraws to

Parameters

  • canvas (BGE.Canvas, optional, default: "invalid") — The canvas this should draw to - if invalid, then will draw to the game canvas

Returns

  • void

repositionBasedOnParent(parent?: UiWidget): void

Method called each frame to reposition

Parameters

  • parent (UiWidget, optional, default: "invalid") — the parent of this Ui Element - will be an object with {x, y, width, height}

Returns

  • void

getWorldPosition(parent?: UiWidget): BGE.Math.Vector

protected

Method called each frame to draw any images of this entity

Parameters

  • parent (UiWidget, optional, default: "invalid") — the parent of this Ui Element

Returns

  • BGE.Math.Vector

isValid(): boolean

Inherited from BGE.GameEntity#isValid

Overrides: BGE.GameEntity#isValid

Is this still a valid entity?

Returns

  • boolean

invalidate(): void

Inherited from BGE.GameEntity#invalidate

Overrides: BGE.GameEntity#invalidate

Marks this entity as invalid, so it will be cleared/destroyed at the end of the frame

Returns

  • void

onCreate(args: roAssociativeArray): void

Inherited from BGE.GameEntity#onCreate

Overrides: BGE.GameEntity#onCreate

Method to be called when this entity is added to a Game. Override in subclass

Parameters

  • args (roAssociativeArray)

Returns

  • void

onUpdate(deltaTime: float): void

Inherited from BGE.GameEntity#onUpdate

Overrides: BGE.GameEntity#onUpdate

Method for handling any updates based on time since previous frame

Parameters

  • deltaTime (float) — milliseconds since last frame

Returns

  • void

onCollision( myCollider: Collider, otherCollider: Collider, otherEntity: GameEntity, ): void

Inherited from BGE.GameEntity#onCollision

Overrides: BGE.GameEntity#onCollision

Method for processing all collisions

Parameters

  • myCollider (Collider) — the collider of this entity that collided
  • otherCollider (Collider) — the collider of the other entity in the collision
  • otherEntity (GameEntity) — the entity that owns the other collider

Returns

  • void

onDrawBegin( Renderer: renderer, gameRenderer: Renderer, uiRenderer: Renderer, ): void

Inherited from BGE.GameEntity#onDrawBegin

Overrides: BGE.GameEntity#onDrawBegin

Method called each frame before drawing any images of this entity

Parameters

  • Renderer (renderer) — the Renderer images will be drawn to
  • gameRenderer (Renderer)
  • uiRenderer (Renderer)

Returns

  • void

onDrawEnd( canvas: Renderer, gameRenderer: Renderer, uiRenderer: Renderer, ): void

Inherited from BGE.GameEntity#onDrawEnd

Overrides: BGE.GameEntity#onDrawEnd

Method called each frame after drawing all images of this entity

Parameters

Returns

  • void

onInput(input: GameInput): void

Inherited from BGE.GameEntity#onInput

Overrides: BGE.GameEntity#onInput

Method to process input per frame

Parameters

  • input (GameInput) — GameInput object for the last frame

Returns

  • void

onECPKeyboard(char: integer): void

Inherited from BGE.GameEntity#onECPKeyboard

Overrides: BGE.GameEntity#onECPKeyboard

Method to process an ECP keyboard event

Parameters

  • char (integer)

Returns

  • void

onECPInput(data: roInputEvent): void

Inherited from BGE.GameEntity#onECPInput

Overrides: BGE.GameEntity#onECPInput

Method to process an External Control Protocol event

Parameters

  • data (roInputEvent)

Returns

  • void

onAudioEvent(msg: roAudioPlayerEvent): void

Inherited from BGE.GameEntity#onAudioEvent

Overrides: BGE.GameEntity#onAudioEvent

Method to handle audio events

Parameters

  • msg (roAudioPlayerEvent) — roAudioPlayerEvent

Returns

  • void

onPause(): void

Inherited from BGE.GameEntity#onPause

Overrides: BGE.GameEntity#onPause

Called when the game pauses

Returns

  • void

onResume(pauseTimeMs: integer): void

Inherited from BGE.GameEntity#onResume

Overrides: BGE.GameEntity#onResume

Called when the game unpauses

Parameters

  • pauseTimeMs (integer) — The number of milliseconds the game was paused

Returns

  • void

onUrlEvent(msg: roUrlEvent): void

Inherited from BGE.GameEntity#onUrlEvent

Overrides: BGE.GameEntity#onUrlEvent

Called on url event

Parameters

  • msg (roUrlEvent) — roUrlEvent

Returns

  • void

onGameEvent(eventName: string, data: roAssociativeArray): void

Inherited from BGE.GameEntity#onGameEvent

Overrides: BGE.GameEntity#onGameEvent

General purpose event handler for in-game events.

Parameters

  • eventName (string) — Event name that describes the event type
  • data (roAssociativeArray) — Any extra data to go along with the event

Returns

  • void

onChangeRoom(newRoom: Room): void

Inherited from BGE.GameEntity#onChangeRoom

Overrides: BGE.GameEntity#onChangeRoom

Method called when the current room changes. This method is only called when the entity is marked as persistant, otherwise entities are destroyed on room changes.

Parameters

  • newRoom (Room) — The next room

Returns

  • void

onDestroy(): void

Inherited from BGE.GameEntity#onDestroy

Overrides: BGE.GameEntity#onDestroy

Method called when this entity is destroyed

Returns

  • void

addCircleCollider( colliderName: string, radius: float, offset_x?: float, offset_y?: float, enabled?: boolean, ): CircleCollider

Inherited from BGE.GameEntity#addCircleCollider

Overrides: BGE.GameEntity#addCircleCollider

Adds a circle collider to this entity

Parameters

  • colliderName (string) — Name of the collider (only one collider with the same name can be added)
  • radius (float) — radius of the circle
  • offset_x (float, optional, default: 0) — horizontal offset from entity position of centre of the circle
  • offset_y (float, optional, default: 0) — vertical offset from entity position of centre of the circle
  • enabled (boolean, optional, default: true) — is this collider enabled?

Returns

addRectangleCollider( colliderName: string, width: float, height: float, offset_x?: float, offset_y?: float, enabled?: boolean, ): RectangleCollider

Inherited from BGE.GameEntity#addRectangleCollider

Overrides: BGE.GameEntity#addRectangleCollider

Adds a rectangle collider to this entity

Parameters

  • colliderName (string) — Name of the collider (only one collider with the same name can be added)
  • width (float) — Width of rectangle
  • height (float) — Height of rectangle
  • offset_x (float, optional, default: 0) — horizontal offset from entity position of left edge of rectangle
  • offset_y (float, optional, default: 0) — vertical offset from entity position of bottom edge of rectangle (top edge is at offset_y - height)
  • enabled (boolean, optional, default: true) — is this collider enabled?

Returns

addCollider(colliderToAdd: Collider): Collider

Inherited from BGE.GameEntity#addCollider

Overrides: BGE.GameEntity#addCollider

Adds a collider that has already been constructed

Parameters

  • colliderToAdd (Collider) — the collider to add (only one collider with the same name can be added)

Returns

getCollider(colliderName: string): Collider

Inherited from BGE.GameEntity#getCollider

Overrides: BGE.GameEntity#getCollider

Gets a collider based on its name

Parameters

  • colliderName (string) — The name of the collider to find

Returns

removeCollider(colliderName: string): void

Inherited from BGE.GameEntity#removeCollider

Overrides: BGE.GameEntity#removeCollider

Removes a collider by its name

Parameters

  • colliderName (string) — the name of the collider to remove

Returns

  • void

clearAllColliders(): void

Inherited from BGE.GameEntity#clearAllColliders

Overrides: BGE.GameEntity#clearAllColliders

Remove all colliders from this entity

Returns

  • void

addImage( regionName?: string, imageName: string, region: roRegion, args?: roAssociativeArray, insertPosition?: integer, ): Image

Inherited from BGE.GameEntity#addImage

Overrides: BGE.GameEntity#addImage

Adds a basic image (non-animated) to be drawn for this entity

Parameters

  • regionName (string, optional, default: "\"\"") — an optional unique name for the region, used for caching image data
  • imageName (string) — Name of the image
  • region (roRegion) — an roRegion of a bitmap to draw
  • args (roAssociativeArray, optional, default: "{}") — any extra properties to set (e.g. offset_x, offset_y, rotation, scale_x, scale_y, etc.)
  • insertPosition (integer, optional, default: -1) — the position/order in the images array where the image should be added (defaults to being added at the end)

Returns

addAnimatedImage( imageName: string, regions: Array.<roRegion>, args?: roAssociativeArray, insertPosition?: integer, ): AnimatedImage

Inherited from BGE.GameEntity#addAnimatedImage

Overrides: BGE.GameEntity#addAnimatedImage

Adds a animated image to be drawn for this entity. Animated images cycle through regions of a bitmap (e.g. spritesheet)

Parameters

  • imageName (string) — Name of the image
  • regions (Array.<roRegion>) — an array of roRegion of a bitmap to draw
  • args (roAssociativeArray, optional, default: "{}") — any extra properties to set (e.g. offset_x, offset_y, rotation, scale_x, scale_y, etc.)
  • insertPosition (integer, optional, default: -1) — the position/order in the images array where the image should be added (defaults to being added at the end)

Returns

addSprite( bitmap: roBitmap, imageName: string, spriteSheet: roBitmap, cellWidth: integer, cellHeight: integer, args?: roAssociativeArray, insertPosition?: integer, ): Sprite

Inherited from BGE.GameEntity#addSprite

Overrides: BGE.GameEntity#addSprite

Adds a Sprite to be drawn for this entity. Sprites can have specific animations configured buy choosing series of cells from a sprite sheet

Parameters

  • bitmap (roBitmap) — the bitmap object to use for teh SpriteSheet (e.g response from game.getBitmap("bitmap_name"))
  • imageName (string) — Name of the image
  • spriteSheet (roBitmap)
  • cellWidth (integer) — the height in pixels of a dingle cell in the sprite
  • cellHeight (integer) — the height in pixels of a dingle cell in the sprite
  • args (roAssociativeArray, optional, default: "{}") — any extra properties to set (e.g. offset_x, offset_y, rotation, scale_x, scale_y, etc.)
  • insertPosition (integer, optional, default: -1) — the position/order in the images array where the image should be added (defaults to being added at the end)

Returns

addRectangle( rectangleName: string, width: float, height: float, args?: roAssociativeArray, insertPosition?: integer, ): DrawableRectangle

Inherited from BGE.GameEntity#addRectangle

Overrides: BGE.GameEntity#addRectangle

Adds a rectangle to be drawn for this entity. The rectangle's top left corner sits at the entity's position (plus the drawable's own offset), and it extends width to the right and height downwards in world space.

Parameters

  • rectangleName (string) — Name of the rectangle
  • width (float) — width of the rectangle in world units
  • height (float) — height of the rectangle in world units
  • args (roAssociativeArray, optional, default: "{}") — any extra properties to set (e.g. color, outlineRGBA, outlineWidth, filled, offset, rotation, scale, drawMode)
  • insertPosition (integer, optional, default: -1) — the position/order in the drawables array where the rectangle should be added (defaults to being added at the end)

Returns

addDrawable( imageName: string, drawableObject: Drawable, insertPosition?: integer, ): Drawable

Inherited from BGE.GameEntity#addDrawable

Overrides: BGE.GameEntity#addDrawable

Adds any Drawable/Image object to this entity

Parameters

  • imageName (string) — Name of the image
  • drawableObject (Drawable) — The image to be added
  • insertPosition (integer, optional, default: -1) — the position/order in the images array where the image should be added (defaults to being added at the end)

Returns

getDrawable(imageName: string, drawableName: string): Drawable

Inherited from BGE.GameEntity#getDrawable

Overrides: BGE.GameEntity#getDrawable

Gets a drawable by its name from the lookup table

Parameters

  • imageName (string) — Name of drawable to get
  • drawableName (string)

Returns

removeDrawable(drawableName: string): void

Inherited from BGE.GameEntity#removeDrawable

Overrides: BGE.GameEntity#removeDrawable

Removes a drawable from the entity

Parameters

  • drawableName (string) — Name of drawable to remove

Returns

  • void

updateTransformationMatrix(): void

Inherited from BGE.GameEntity#updateTransformationMatrix

Overrides: BGE.GameEntity#updateTransformationMatrix

Returns

  • void

movedLastFrame(): boolean

Inherited from BGE.GameEntity#movedLastFrame

Overrides: BGE.GameEntity#movedLastFrame

Returns

  • boolean

getStaticVariable(staticVariableName: string): dynamic

Inherited from BGE.GameEntity#getStaticVariable

Overrides: BGE.GameEntity#getStaticVariable

TODO: work on statics

Parameters

  • staticVariableName (string)

Returns

  • dynamic

setStaticVariable( staticVariableName: string, staticVariableValue: dynamic, ): void

Inherited from BGE.GameEntity#setStaticVariable

Overrides: BGE.GameEntity#setStaticVariable

TODO: work on statics

Parameters

  • staticVariableName (string)
  • staticVariableValue (dynamic)

Returns

  • void

addInterface(interfaceName: string): void

Inherited from BGE.GameEntity#addInterface

Overrides: BGE.GameEntity#addInterface

TODO: work on Interfaces

Parameters

  • interfaceName (string)

Returns

  • void

hasInterface(interfaceName: string): boolean

Inherited from BGE.GameEntity#hasInterface

Overrides: BGE.GameEntity#hasInterface

TODO: work on Interfaces

Parameters

  • interfaceName (string)

Returns

  • boolean

debugDraw( renderObj: Renderer, drawAxes?: boolean, drawName?: boolean, ): void

Inherited from BGE.GameEntity#debugDraw

Overrides: BGE.GameEntity#debugDraw

Draws the entity's axes and/or its name

Parameters

  • renderObj (Renderer)
  • drawAxes (boolean, optional, default: false)
  • drawName (boolean, optional, default: false)

Returns

  • void