setTexture
Customui:setTexture(playerid, uiid, elementid, url)
API Description The main function of this method: Set the texture of an image element in a custom UI.
Parameters | Types | Info |
---|---|---|
playerid | number | Player ID |
uiid | string | The ID of the custom UI |
elementid | string | The ID of the image element |
url | string | The texture ID to apply |
Return Value | Type |
---|---|
ErrorCode.OK (0) | number |
Examples
- setTexture_Example.lua
-- This function executes when a player clicks a block local function clickblock(event) local playerid = event.eventobjid -- Player ID who clicked the block local uiid = "6986982063319417057" -- Replace with your UI ID local elementid = "6986982063319417057_3" -- Replace with your image element ID local url = "block_100" -- Replace with your texture ID -- Set the texture for the player's UI image element Customui:setTexture(playerid, uiid, elementid, url) end -- Register event for Player.ClickBlock ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], clickblock)
Lua Code Explanation: Texture Setting
This Lua code demonstrates how to change an image element's texture when a player clicks a block.
Function Definition
local function clickblock(event)
* Declares the clickblock function for `Player.ClickBlock` events * event parameter contains the interaction data
Parameter Extraction
local playerid = event.eventobjid
* Gets the player ID from the event object * Identifies which player triggered the action
UI Configuration
local uiid = "6986982063319417057" local elementid = "6986982063319417057_3" local url = "10010"
* uiid: The custom UI's identifier * elementid: Specific image component to modify * url: Texture ID to apply * Note: All are placeholders - replace with your actual IDs
Texture Setting
Customui:setTexture(playerid, uiid, elementid, url)
* Calls the Customui API to change the texture * Parameters:
- playerid: Target player
- uiid: Parent UI container
- elementid: Image element to modify
- url: New texture ID
Event Registration
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], clickblock)
* Links the function to block-click events * Event type: `Player.ClickBlock` (triggered by any block interaction)
Educational Notes
Key concepts demonstrated:
- Dynamic UI Modification: Changing elements at runtime
- Player Interaction: Responding to block clicks
- Texture Management: Applying different images to UI components
- Component Targeting: Using element IDs for precise control
Result: Clicking any block changes the specified image's texture for the interacting player.
Important Notes
1. Replace all placeholder IDs with your actual values:
- `uiid` (your custom UI's ID)
- `elementid` (specific image element ID)
- `url` (valid texture ID)
2. Ensure:
- The UI is already created/visible
- Texture IDs are preloaded
3. For multiple textures:
- Store texture IDs in a table
- Use logic to cycle through them
Troubleshooting
If the texture doesn't change: 1. Verify all IDs are correct 2. Check if the UI is visible 3. Confirm the texture ID exists 4. Ensure the event is properly registered