Difference between revisions of "Displayed Text"

From The Official Visionaire Studio: Adventure Game Engine Wiki
Line 1: Line 1:
 
Displayed text is the text spoken by a character or narration text which is not spoken by a character & can be positioned wherever you like on the screen.
 
Displayed text is the text spoken by a character or narration text which is not spoken by a character & can be positioned wherever you like on the screen.
  
 +
Let's have a look at the "'Display text'" action part first which is found inside of the "Character" action part area. By default character spoken text appears above the text owner (character who the displayed text is linked to) & is aligned via the "'text alignment'" drop down menu found inside of the "'game'" properties tab. Having said that we can in fact set a custom position (absolute) via Lua Script with the '"VTextPosition"' data structure command & the registerHookFunction; see further down the page for an example.
  
Let's have a look at the "<strong>Display text</strong>" action part first which is found inside of the "Character" action part area. By default character spoken text appears above the text owner (character who the displayed text is linked to) & is aligned via the "text alignment" drop down menu found inside of the "game" properties tab. Having said that we can in fact set a custom position (absolute) via Lua Script with the "VTextPosition" data structure command & the registerHookFunction; see further down the page for an example.
+
The "'Display narration text'" action part however is more geared towards narration & can be positioned on the screen wherever you like.
 
 
 
 
The "<strong>Display speaker text</strong>" action part however is more geared towards narration & can be positioned on the screen wherever you like.
 
  
 +
{| class="ts"
 +
|-
 +
| ''The '''Display speaker text''' action part was renamed to '''Display narration text''' in Visionaire Studio 4.0.'' 
 +
|}
  
 
Example: pause/delay methods for controlling time displayed text should be displayed for...
 
Example: pause/delay methods for controlling time displayed text should be displayed for...
Line 14: Line 16:
 
Continue after 2.5 seconds (s) <p2.5s> or <p2.5>
 
Continue after 2.5 seconds (s) <p2.5s> or <p2.5>
 
Wait until linked speech file has finished playing <pa>
 
Wait until linked speech file has finished playing <pa>
 +
Wait until linked speech file has finished playing (with fallback time (in ms) if media file is missing or corrupted <pa2500ms>
  
 
--[[
 
--[[
Line 22: Line 25:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
{| class="ts"
 +
|-
 +
| ''The <pa> fallback time tag is only available from Visionaire Studio 4.x onwards.''
 +
|}
  
 
Example: Displaying "string" & integer (number) values inside of a displayed text...
 
Example: Displaying "string" & integer (number) values inside of a displayed text...
Line 27: Line 34:
 
I have $<v=money> in my wallet. <p2> -- displays integer value of the linked Value
 
I have $<v=money> in my wallet. <p2> -- displays integer value of the linked Value
 
My name is <vs=protagonist_name>. <p2.5> -- displays "string" value of the linked value
 
My name is <vs=protagonist_name>. <p2.5> -- displays "string" value of the linked value
 +
</syntaxhighlight>
  
-- the value name is case sensitive.
+
{| class="ts"
</syntaxhighlight>
+
|-
 +
| ''The value name is case sensitive.''
 +
|}
  
  
Example: Using Lua to control the position of currently displayed text...
+
Example: Using Lua script to control the position of currently displayed text...
 
<syntaxhighlight>
 
<syntaxhighlight>
 
-- let's create the function which sets the position of displayed text
 
-- let's create the function which sets the position of displayed text
Line 45: Line 55:
 
-- let's create the event listener for handling position of displayed text
 
-- let's create the event listener for handling position of displayed text
 
registerHookFunction("setTextPosition", "setTextPosHook")
 
registerHookFunction("setTextPosition", "setTextPosHook")
</syntaxhighlight>
+
</syntaxhighlight>{{toc}}

Revision as of 18:39, 7 January 2015

Displayed text is the text spoken by a character or narration text which is not spoken by a character & can be positioned wherever you like on the screen.

Let's have a look at the "'Display text'" action part first which is found inside of the "Character" action part area. By default character spoken text appears above the text owner (character who the displayed text is linked to) & is aligned via the "'text alignment'" drop down menu found inside of the "'game'" properties tab. Having said that we can in fact set a custom position (absolute) via Lua Script with the '"VTextPosition"' data structure command & the registerHookFunction; see further down the page for an example.

The "'Display narration text'" action part however is more geared towards narration & can be positioned on the screen wherever you like.

The Display speaker text action part was renamed to Display narration text in Visionaire Studio 4.0.

Example: pause/delay methods for controlling time displayed text should be displayed for...

Wait until left mouse button is clicked to continue <p>
Continue after 2500 milliseconds (ms) <p2500ms>
Continue after 2.5 seconds (s) <p2.5s> or <p2.5>
Wait until linked speech file has finished playing <pa>
Wait until linked speech file has finished playing (with fallback time (in ms) if media file is missing or corrupted <pa2500ms>

--[[
!important: You need to be careful that when you are using the first example <p> that you do not hide the mouse cursor 
beforehand as hide cursor action part disables all key input & commands until the cursor is shown; thus
your game will end up stuck on the displayed text!
--]]
The <pa> fallback time tag is only available from Visionaire Studio 4.x onwards.

Example: Displaying "string" & integer (number) values inside of a displayed text...

I have $<v=money> in my wallet. <p2> -- displays integer value of the linked Value
My name is <vs=protagonist_name>. <p2.5> -- displays "string" value of the linked value
The value name is case sensitive.


Example: Using Lua script to control the position of currently displayed text...

-- let's create the function which sets the position of displayed text
function setTextPosHook(text)
 -- if text owner is a character then...
 if text:getLink(VTextOwner):getId().tableId == eCharacters then
  text:setValue(VTextPosition, {x=960, y=100})
  return true
 end
end

-- let's create the event listener for handling position of displayed text
registerHookFunction("setTextPosition", "setTextPosHook")