Speech
Provides functions for controlling speech and dialogue on NPCs.
Functions
setText(text)
Sets the text displayed in a speech bubble.
Parameters
- text — The text value to display.
Example
Set a welcome message on a NPC.
function onStart()
Speech.setText('Welcome!')
end
Result
clearText()
Clears the text displayed in a speech bubble.
Example
Clear a message after 5 seconds.
function onStart()
Speech.setText("This message is going to disappear in 5 seconds!")
Task.wait(5)
Speech.clearText()
end
Result
prompt(text, options)
Sets the text and response options displayed in the dialogue prompt that is shown when a player interacts with the NPC.
Parameters
- text — The text value to display.
- options — A list of options displayed that the player can select to respond.
Returns
An integer representing the response option selected by the player.
Example
A simple interaction between a player and a NPC.
function onInteractStart(player)
-- Show a prompt when the player interacts with this NPC
local response = Speech.prompt('How are you today?', {
'Good!',
'Fine.',
'Terrible...',
})
-- Show another prompt depending on the option the player selected
if response == 0 then
Speech.prompt('Great!')
elseif response == 1 then
Speech.prompt('OK!')
elseif response == 2 then
Speech.prompt('Oh no!')
end
end
closePrompt()
Closes the dialogue prompt.
Example
Close a dialogue prompt after a short dialogue.
function onInteractStart(clientId)
-- Set our camera to dialogue and prevent player movement
Controls.setControlScheme(clientId, ControlScheme.Dialogue, false)
Speech.prompt("Welcome to my world, I hope you have a nice experience!")
Speech.closePrompt()
end
setName(name)
Sets the name of the NPC, displayed in the dialogue prompt.
Example
Set the name of a NPC to Gary.
function onStart()
Speech.setName("Gary")
end
function onInteractStart(clientId)
Speech.prompt("Hello, my name is Gary")
end