Please login or register.

Login with username, password and session length
Advanced search  

News:

For WME related articles and tutorials visit WME Resource Center.

Author Topic: write a letter and skip talk lines?  (Read 5424 times)

0 Members and 1 Guest are viewing this topic.

Rocco

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 87
    • View Profile
    • Virtual-Illusion
write a letter and skip talk lines?
« on: September 03, 2005, 08:29:25 AM »

1.
is it possible to format the text in the string tab?
i have a letter in my game, and i dont know which method is better to generate it.
either as a picture, but then i need another one for every other language and this could be complicated,
or with the WME method TALK in cooperation with the string tab.
but in this case i must at least set newlines in the string tab.
is this possible, or what is the best way to generate a letter in WME?

2.
the <talk lines skipped by> under game settings doesnt work in my game.
regardless from the option i choose (i want to use both mouse buttons),
i cant skip text messages.

thx, greets
rocco
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: write a letter and skip talk lines?
« Reply #1 on: September 03, 2005, 08:51:04 AM »

1.
You can use a GUI window. Create a window with one large static control covering the entire window and fill it with the text. Ypu could, for example, have a string-table entry for each paragraph of the letter and combine them in a script.
To explicitly translate string from a string table call something like:
Code: [Select]
var TranslatedText = Game.ExpandString("/some_id/Original text");

Also, to insert new-lines into string table, use the "pipe" character (|).
Code: [Select]
some_id<tab>First line|Second line|Third line

2.
Dialogue lines skipping only works if the game is in non-interactive mode (Game.Interactive = false;) Otherwise the mouse clicks are handled normally by the scripts.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Rocco

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 87
    • View Profile
    • Virtual-Illusion
Re: write a letter and skip talk lines?
« Reply #2 on: September 03, 2005, 09:28:02 AM »

1.


Also, to insert new-lines into string table, use the "pipe" character (|).
Code: [Select]
some_id<tab>First line|Second line|Third line

2.
Dialogue lines skipping only works if the game is in non-interactive mode (Game.Interactive = false;) Otherwise the mouse clicks are handled normally by the scripts.

1.
thx, i will play around with the string tab.

2. how can i achieve this? can i set this option for all dialogue lines, or must i write before ervery single *.Talk command, Game.Interactive = false and after this set it to true??
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: write a letter and skip talk lines?
« Reply #3 on: September 03, 2005, 09:33:32 AM »

2. how can i achieve this? can i set this option for all dialogue lines, or must i write before ervery single *.Talk command, Game.Interactive = false and after this set it to true??
Typically it's enough to set the non-interactive state in the beginning of a dialogue and restore interactivity when the dialogue is over. But, yes, you have to do it "manually".
If you required the interactivity change for every single Talk method, you could also create a custom method which would 1) set interactivity to false, 2) call the Talk method, 3) set interactivity to true.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: write a letter and skip talk lines?
« Reply #4 on: September 03, 2005, 09:34:03 AM »

2. how can i achieve this? can i set this option for all dialogue lines, or must i write before ervery single *.Talk command, Game.Interactive = false and after this set it to true??
Typically it's enough to set the non-interactive state in the beginning of a dialogue and restore interactivity when the dialogue is over. But, yes, you have to do it "manually".
If you required the interactivity change for every single Talk method call, you could also create a custom method which would 1) set interactivity to false, 2) call the Talk method, 3) set interactivity to true.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Rocco

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 87
    • View Profile
    • Virtual-Illusion
Re: write a letter and skip talk lines?
« Reply #5 on: September 03, 2005, 12:57:31 PM »

2. how can i achieve this? can i set this option for all dialogue lines, or must i write before ervery single *.Talk command, Game.Interactive = false and after this set it to true??
Typically it's enough to set the non-interactive state in the beginning of a dialogue and restore interactivity when the dialogue is over. But, yes, you have to do it "manually".
If you required the interactivity change for every single Talk method, you could also create a custom method which would 1) set interactivity to false, 2) call the Talk method, 3) set interactivity to true.

thx a lot, it would be better for me to write a custom method, cause i have no dialogs, only single talk statments.
Logged

Rocco

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 87
    • View Profile
    • Virtual-Illusion
Re: write a letter and skip talk lines?
« Reply #6 on: September 05, 2005, 11:48:58 AM »

it works fine, I have this method:

Code: [Select]
method Talk(var txt,var soundfile,var duration, var stances, var alignement, var skip)
{
if (skip)
this.Talk(txt,soundfile,duration,stances,alignement);
else
{
Game.Interactive = false;
this.Talk(txt,soundfile,duration,stances,alignement);
Game.Interactive = true;
}
}

but im not familiar with the standard values
i call the method like this:
actor.Talk("/ROOM1101/Brief Lieber... | Wie geht es dir??","",1000000,"",1,1);
I guess the | works not here, only in the string tab,
the engine trys to load sound "", what is the default value for no sound
i want an endless duration, what can i do here??
dont know what is meant with stances, and what value is here for not used?
the text alignement is clear :-))

thx and greets
rocco
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: write a letter and skip talk lines?
« Reply #7 on: September 05, 2005, 12:28:19 PM »

i call the method like this:
actor.Talk("/ROOM1101/Brief Lieber... | Wie geht es dir??","",1000000,"",1,1);
I guess the | works not here, only in the string tab,
Yes, the pipe character is only used in string tables. It's easier to explain to translators ;) In script you'd use "Brief Lieber...~nWie geht es dir??"


the engine trys to load sound "", what is the default value for no sound
dont know what is meant with stances, and what value is here for not used?
Use null for undefined values.
Talk stances are special animations to be used by the character when talking. More info can be found in the documentation.


i want an endless duration, what can i do here??
You can't specify an endless duration, you'll have to use some huge number so that it *seems* to be endless.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave
 

Page created in 0.108 seconds with 23 queries.