using MonoGame.FourEngine;
using System.Collections.Generic;

namespace LeMangeurDEnfants.Core.Scenes
{
    public class IntroScene : CodecScene
    {
        protected override string BackgroundFile { get; } = Resources.Sprites.Codec1;

        protected override IEnumerable<string> GetDialog()
        {
            yield return 
@"Colonel: Snake, you are being
deployed to a top secret mission.

We couldn't uncover the details
before you reach the destination.";
            yield return 
@"Snake: Got it, Colonel.
I just got to the facility.

I see some militia activity but
they have no signs or labels. 
They look like mercenaries. 
Who are they working for?";
            yield return
@"Colonel: Zero. He had a project
to create your clones in 70s.";
            yield return
@"Snake: I know.
""Les enfants terribles"".";
            yield return
@"Colonel: Right. He stole some
samples back then and successfully
created 5 new children.

But he betrayed the Cipher and 
stole the children.";
            yield return
@"Snake: Why? He knows the Cipher
still has the materials to build
much more.

He cannot use them against the
organization.";
            yield return
@"Colonel: He's not planning 
to use them. He keeps them as
hostages and tries to exchange 
them with the Soviets for the
new model of Shagokhod.";
            yield return
@"Colonel: It's an atomic carrying
metal gear that can wipe both
Cipher and Patriots from the earth
in one shot.";
            yield return
@"Snake: If he got the deal
he'll get the nukes and the Soviets
get the genetic material to build 
an army of clones without any 
traces to them. That's bad. 

How do we stop them?";
            yield return
@"Colonel: Secure the hostages.";
            yield return
@"Snake: That's smart.

We take the hostages, 
he has nothing to trade for 
the Shagokhod.";
            yield return
@"Colonel: Your objective is 
to free every hostage, 
then proceed with them 
to the extraction point. 

You should remain uncovered 
and not raise the alarm.";
            yield return
@"Colonel: Then it will look 
they just found a way out on
their own and Zero would 
not suspect us.";
            yield return
@"Snake: He won't.";
        }

        protected override void OnDialogEnd()
        {
            (DrawingSurface as DrawingSurface)?.NavigateTo<GameScene>();
        }
    }
}