ax.elements¶
Source: gamemode/framework/libraries/cl_elements.lua
Client-side HUD element registry and default framework elements.
Documented functions: 21
Functions¶
ax.elements:AddHookedTargetLines(context, entity)ax.elements:AddTargetLine(context, text, color, data)ax.elements:AddTargetLines(context, lines)ax.elements:CreateTargetContext(x, y, alpha, data)ax.elements:DrawTargetLines(context)ax.elements:DrawText(text, font, x, y, color, alpha, shadowAlpha)ax.elements:DrawWrappedLines(text, font, x, y, color, alpha, lineCount, maxWidth, lineSpacing)ax.elements:Get(uniqueID)ax.elements:GetAll()ax.elements:GetDisplayEntity(entity)ax.elements:GetEntityDisplayDescription(entity)ax.elements:GetEntityDisplayText(entity)ax.elements:GetTargetTrace(client)ax.elements:IsEnabled(element, context)ax.elements:PaintHUD()ax.elements:PaintTargetID(context)ax.elements:PaintTargetIDExtra(entity, x, y, alpha)ax.elements:Register(uniqueID, data)ax.elements:SetOrder(uniqueID, order)ax.elements:Unregister(uniqueID)GM:GetTargetIDLines(entity)
ax.elements:AddHookedTargetLines(context, entity)¶
Adds lines returned from the GetTargetIDLines hook to a context.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
context |
table |
TargetID context from CreateTargetContext. |
entity |
Entity |
Display entity. |
Returns
table: context The same context for chaining.
ax.elements:AddTargetLine(context, text, color, data)¶
Adds one line to a TargetID context.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
context |
table |
TargetID context from CreateTargetContext. |
text |
string |
Text to draw. Empty text is ignored. |
color |
Color\|nil |
Text color. |
data |
table\|nil |
Optional overrides: font, maxWidth, bNoWrap. |
Returns
table: context The same context for chaining.
Usage
ax.elements:AddTargetLines(context, lines)¶
Adds multiple TargetID lines from simple tables.
Each line supports text, color, font, maxWidth, and bNoWrap.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
context |
table |
TargetID context from CreateTargetContext. |
lines |
table |
Array of line definitions. |
Returns
table: context The same context for chaining.
ax.elements:CreateTargetContext(x, y, alpha, data)¶
Creates a simple TargetID line drawing context.
Modules and schemas can use this to add tooltip lines without managing fonts,
wrapping, shadows, alpha, or line counters manually.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
x |
number |
Screen X. |
y |
number |
Screen Y. |
alpha |
number |
Current TargetID alpha. |
data |
table\|nil |
Optional overrides: font, maxWidth, lineSpacing, lines. |
Returns
table: context TargetID drawing context.
ax.elements:DrawTargetLines(context)¶
Draws all queued TargetID lines and returns the updated line count.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
context |
table |
TargetID context from CreateTargetContext. |
Returns
number: lineCount Final line count.
ax.elements:DrawText(text, font, x, y, color, alpha, shadowAlpha)¶
Draws centered text with a soft shadow.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
text |
string |
Text to draw. |
font |
string |
Font name. |
x |
number |
Screen X. |
y |
number |
Screen Y. |
color |
Color |
Text color. |
alpha |
number |
Text alpha. |
shadowAlpha |
number |
Shadow alpha. |
ax.elements:DrawWrappedLines(text, font, x, y, color, alpha, lineCount, maxWidth, lineSpacing)¶
Draws wrapped centered lines and returns the updated line count.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
text |
string |
Text to wrap and draw. |
font |
string |
Font name. |
x |
number |
Screen X. |
y |
number |
Starting Y. |
color |
Color |
Text color. |
alpha |
number |
Base alpha. |
lineCount |
number |
Current line count. |
maxWidth |
number |
Maximum wrapped width. |
lineSpacing |
number |
Vertical line spacing. |
Returns
number: lineCount Updated line count.
ax.elements:Get(uniqueID)¶
Gets a HUD element by identifier.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
uniqueID |
string |
Element identifier. |
Returns
table|nil: element The registered element.
ax.elements:GetAll()¶
Gets all registered HUD elements.
Realm: client
Returns
table: elements Registry table keyed by unique identifier.
ax.elements:GetDisplayEntity(entity)¶
Resolves the entity that should be used for display data.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
entity |
Entity |
Traced entity. |
Returns
Entity: entity Display entity.
ax.elements:GetEntityDisplayDescription(entity)¶
Gets the default description for a TargetID entity.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
entity |
Entity |
Display entity. |
Returns
string|nil: description Description text.
ax.elements:GetEntityDisplayText(entity)¶
Gets the default display text for an entity.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
entity |
Entity |
Display entity. |
Returns
string|nil: text Display text.Color|nil: color Display color.boolean|nil: bShouldFlash Whether the text should softly flash.
ax.elements:GetTargetTrace(client)¶
Builds the default interaction trace used by the TargetID element.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
client |
Player |
Local player. |
Returns
table: trace Hull trace result.
ax.elements:IsEnabled(element, context)¶
Returns whether an element is currently enabled.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
element |
table |
Element definition. |
context |
table |
Paint context. |
Returns
boolean: bEnabled Whether the element should be considered for drawing.
ax.elements:PaintHUD()¶
Paints all registered HUD elements.
Realm: client
ax.elements:PaintTargetID(context)¶
Paints the default TargetID HUD element.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
context |
table |
Paint context. |
ax.elements:PaintTargetIDExtra(entity, x, y, alpha)¶
Draws default TargetID extra lines for descriptions and entity extras.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
entity |
Entity |
Display entity. |
x |
number |
Screen X. |
y |
number |
Screen Y. |
alpha |
number |
Current alpha. |
ax.elements:Register(uniqueID, data)¶
Registers a HUD element.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
uniqueID |
string |
Stable identifier for the element. |
data |
table |
Element definition. Supports order, option, enabled, ShouldDraw, Think, Paint. |
Returns
table|nil: element The registered element, or nil when invalid.
ax.elements:SetOrder(uniqueID, order)¶
Changes the draw order of a registered element.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
uniqueID |
string |
Element identifier. |
order |
number |
New draw order. Lower draws earlier. |
ax.elements:Unregister(uniqueID)¶
Removes a HUD element from the registry.
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
uniqueID |
string |
Element identifier. |
GM:GetTargetIDLines(entity)¶
Builds TargetID line definitions from a hook result.
Use this from modules/schemas when you want to provide tooltip lines without
handling any drawing yourself:
function MODULE:GetTargetIDLines(entity)
if ( !entity:IsDoor() ) then return end
return {
{ text = "Locked", color = Color(200, 80, 80) },
{ text = "Owned by you", color = Color(100, 200, 100) },
}
end
Realm: client
Parameters
| Name | Type | Description |
|---|---|---|
entity |
Entity |
Display entity. |
Returns
table|nil: lines Array of line definitions.