Minor dialogue/Tails posing updates

- Assign poses for Outro and GDQ Passwords
- Flicker camera when showing visuals after using a GDQ Password
This commit is contained in:
toaster 2023-12-18 13:09:03 +00:00
parent f5722b7569
commit ca6ebd89d8

View file

@ -197,11 +197,15 @@ public:
fixed_t x, focusx; fixed_t x, focusx;
fixed_t y, focusy; fixed_t y, focusy;
int darkframes;
GonerBGData() GonerBGData()
{ {
x = focusx = 0; x = focusx = 0;
y = focusy = 0; y = focusy = 0;
darkframes = 0;
focuslast = MAXGONERSPEAKERS; focuslast = MAXGONERSPEAKERS;
focusdelta = 0; focusdelta = 0;
@ -254,6 +258,9 @@ public:
focuslast = focuscurrent; focuslast = focuscurrent;
} }
if (darkframes)
darkframes--;
if (miles_timetoblink == 0) if (miles_timetoblink == 0)
{ {
if (miles_next_timetoblink) if (miles_next_timetoblink)
@ -461,7 +468,6 @@ void M_AddGonerLines(void)
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0,
"So you're right. I wonder if it has anything to do with that outburst."); "So you're right. I wonder if it has anything to do with that outburst.");
LinesToDigest.emplace_front(0, Miles_Look_Camera);
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0,
"Alright, Metal! I don't remember your specifications offhand. "\ "Alright, Metal! I don't remember your specifications offhand. "\
"First things first, go ahead and set up your "\ "First things first, go ahead and set up your "\
@ -475,6 +481,7 @@ void M_AddGonerLines(void)
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0,
"Ah, you can see us now. Good."); "Ah, you can see us now. Good.");
} }
LinesToDigest.emplace_front(0, Miles_Look_Camera);
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0,
"Now, calibrate your ""\x87""Sound Options""\x80""."); "Now, calibrate your ""\x87""Sound Options""\x80"".");
@ -600,6 +607,7 @@ void M_AddGonerLines(void)
{ {
if (!leftoff) if (!leftoff)
{ {
LinesToDigest.emplace_front(0, Miles_Look_Electric);
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/3, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/3,
"And... the training data is completed."); "And... the training data is completed.");
} }
@ -607,18 +615,27 @@ void M_AddGonerLines(void)
"It's kind of funny, actually."); "It's kind of funny, actually.");
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/3, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/3,
"Oh? Care to elucidate, Prower?"); "Oh? Care to elucidate, Prower?");
LinesToDigest.emplace_front(0, Miles_Look_Camera);
LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2,
"No matter how much time we took getting here, a machine like Metal can play it back in minutes."); "No matter how much time we took getting here, a machine like "\
"Metal can play it back in minutes.");
LinesToDigest.emplace_front(0, Miles_Electric_Lower);
LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2,
"It could have been five days or five years of development on our ""\x82""Ring Racers""\x80"", and that barely matters."); "It could have been five days or five years of development on "\
"our ""\x82""Ring Racers""\x80"", and that would barely matter to it.");
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/4, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/4,
"Ha! As if. I'd like to think our partnership hasn't felt that long."); "Ha! As if. I'd like to think our partnership hasn't felt "\
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2, "particularly protracted.");
"But yes. Perhaps now you have a better appreciation of what we're building here, Metal."); LinesToDigest.emplace_front(0, Miles_Look_Electric);
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2,
"But yes. Perhaps now you have a better appreciation of what "\
"we're building here, Metal.");
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/5,
"Now, I'm willing to let bygones be bygones."); "Now, I'm willing to let bygones be bygones.");
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2,
"As long as you keep your violence to the track, I'll be giving you your autonomy back in a moment."); "As long as you keep your violence to the track, I'll be "\
"giving you your autonomy back in a moment.");
LinesToDigest.emplace_front(0, Miles_Electric_Lower);
LinesToDigest.emplace_front(GONERSPEAKER_TAILS, 0, LinesToDigest.emplace_front(GONERSPEAKER_TAILS, 0,
"We've kept the keys from you long enough!"); "We've kept the keys from you long enough!");
break; break;
@ -856,6 +873,9 @@ void M_DrawGonerBack(void)
.height(BASEVIDHEIGHT) .height(BASEVIDHEIGHT)
.fill(31); .fill(31);
if (goner_background.darkframes)
return;
drawer = drawer.xy( drawer = drawer.xy(
FixedToFloat(Easing_InOutCubic( FixedToFloat(Easing_InOutCubic(
goner_background.focusdelta, goner_background.focusdelta,
@ -1200,13 +1220,18 @@ void M_GonerGDQ(boolean opinion)
{ {
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, TICRATE/2,
"Why wouldn't you save the frames..?"); "Why wouldn't you save the frames..?");
LinesToDigest.emplace_front(0, Miles_Look_Camera);
LinesToDigest.emplace_front(GONERSPEAKER_TAILS, 0, LinesToDigest.emplace_front(GONERSPEAKER_TAILS, 0,
"Don't mind him. Good luck on the run!"); "Don't mind him. Good luck on the run!");
LinesToDigest.emplace_front(0, Miles_Look_Electric);
} }
else // Save The Frames else // Save The Frames
{ {
LinesToDigest.emplace_front(0, Miles_Electric_Lower);
LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2, LinesToDigest.emplace_front(GONERSPEAKER_TAILS, TICRATE/2,
"But what about all the little animals..."); "But what about all the little animals...");
LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0, LinesToDigest.emplace_front(GONERSPEAKER_EGGMAN, 0,
"It's just logical. I know you'll conquer this run."); "It's just logical. I know you'll conquer this run.");
} }
@ -1214,6 +1239,9 @@ void M_GonerGDQ(boolean opinion)
if (gamedata->gonerlevel <= GDGONER_TUTORIAL) if (gamedata->gonerlevel <= GDGONER_TUTORIAL)
{ {
if (gamedata->gonerlevel <= GDGONER_VIDEO)
goner_background.darkframes = 5; // handle abrupt transition
goner_levelworking = gamedata->gonerlevel = GDGONER_TUTORIAL; goner_levelworking = gamedata->gonerlevel = GDGONER_TUTORIAL;
} }
} }