07th-mod / tatarigoroshi

30 stars 11 forks source link

Too long announcer lines #46

Closed enumag closed 6 years ago

enumag commented 6 years ago

Since the auto-mode is finally usable with voices I was careful to properly fix cases where 1 voice line was split to 2 text lines. (Because the text was stuck on the first line and the second line only showed when the voice was finished.)

I fixed all of these cases I could find in Tatarigoroshi. The only problem is the lines by Announcer in tata_014. The problem is that these lines are really really long and the text does not fit on one screen in ADV-mode.

I can think of 3 possible ways to fix this:

  1. Decrease the font-size so that the text fits (this is what I did but I don't really like it).
  2. Split the long voice lines to 2 or more so that we can split the text as well. (Not sure if this would work, some of the sentences are really long)
  3. Force NVL-mode for that part of the game.

What do you think? To understand the problem it's actually best to try tata_014 by yourself in the game and pay attention to the lines by Announcer. You'll see what I mean.

P-Chang commented 6 years ago

How do you think make these like

    if (GetGlobalFlag(GADVMode)) { OutputLine("<color=#f5e6d3>アナウンサー</color>", NULL, "<color=#f5e6d3>Announcer</color>", NULL, Line_ContinueAfterTyping); }
    PlayVoice(4, "s03/00/ana0400013", 128);
    OutputLine(NULL, "『防衛庁から報道部の森川記者がお伝えしました。",
           NULL, "\"That was Morikawa from the Japan Defense Agency.", Line_WaitForInput);
    OutputLine(NULL, "続きまして、避難を余儀なくされている興宮地区住民の模様をリポートします。",
           NULL, " And now we have a report on the state of those who have been made to evacuate the Okinomiya area. ", GetGlobalFlag(GLinemodeSp));
    if (GetGlobalFlag(GADVMode)) { OutputLineAll("", NULL, Line_ContinueAfterTyping); }
    OutputLine(NULL, "現在、避難所のひとつとなっている下篠崎小学校に報道部の……、ザザ、……者が…ってい、…ザザ…ザ、』",
           NULL, "Shimoshinozaki Elementary School is one of the evacuation sites, and we currently have a reporter on... bzzz... scene... bzzz... bzzz...\"", Line_Normal);
    ClearMessage();

to

    if (GetGlobalFlag(GADVMode)) { OutputLine("<color=#f5e6d3>アナウンサー</color>", NULL, "<color=#f5e6d3>Announcer</color>", NULL, Line_ContinueAfterTyping); }
    PlayVoice(4, "s03/00/ana0400013", 128);
    OutputLine(NULL, "『防衛庁から報道部の森川記者がお伝えしました。",
           NULL, "\"That was Morikawa from the Japan Defense Agency.", Line_WaitForInput);
    OutputLine(NULL, "続きまして、避難を余儀なくされている興宮地区住民の模様をリポートします。",
           NULL, " And now we have a report on the state of those who have been made to evacuate the Okinomiya area. ", Line_Continue);

    if (GetGlobalFlag(GADVMode)) {ClearMessage();}

    if (GetGlobalFlag(GADVMode)) { OutputLine("<color=#f5e6d3>アナウンサー</color>", NULL, "<color=#f5e6d3>Announcer</color>", NULL, Line_Continue); }
    OutputLine(NULL, "現在、避難所のひとつとなっている下篠崎小学校に報道部の……、ザザ、……者が…ってい、…ザザ…ザ、』",
           NULL, "Shimoshinozaki Elementary School is one of the evacuation sites, and we currently have a reporter on... bzzz... scene... bzzz... bzzz...\"", Line_Normal);
    ClearMessage();

Although, we already fixed GUI Pos so, if we increase Y-Pos of Message Windows to 270, Message box can use 70% or 80% of 4th line without layout break.

Test image in chapter5 20171027062503_1 20171027062504_1

enumag commented 6 years ago

@P-Chang When a fourth line is needed I generally use <size=-2> tag to make them fit. There is a condition to only do this in ADV-mode, for example here. The difference is not too noticeable so it's fine. In most cases it's already insterted by my ADV-mode updater script.

Note that </size> is omitted on purpose becase it caused another bug. It works better without it.

The problem with Announcer in tata_014 is that sometimes not even 4 lines are enough unless I drastically reduce the font size with <size=-4> and in one case even <size=-7>. Also the in-game massge log looks like a shit then.