# wmllint: no translatables
# wmllint: markcheck off
# @file data/scenario-test.cfg

[test]
    name="Test scenario"

    victory_when_enemies_defeated=no

    map_data="border_size=1
usage=map

Gg, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu
Gg, Gg, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu
Uu, Gg, 1 Gg, Gg^Vht, Gg, Gg^Vht, Gg, Gg^Vht, Gg, Gg^Vht, Gs^Vc, Gg, Gg
Wo, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Gg, Ww
Uu, Wo, Wo, Wo, Wo, Wo, Wo, Wo, Wo, Wo, Wo, Ww, Uu
Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu
Uu, Uu, Uu, Uu, Uu, Uu, Gg, Uu, Uu, Uu, Uu, Uu, Uu
Uu, Uu, Uu, Uu, Uu, Gg, 2 Gg, Gg, Uu, Uu, Uu, Uu, Uu
Uu, Uu, Uu, Uu, Uu, Gg, Gg, Gg, Uu, Uu, Uu, Uu, Uu
Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu, Uu"

    turns=-1
    id=movethrough
    {DEFAULT_SCHEDULE}

    [side]
        side=1
        controller=human
        suppress_end_turn_confirmation=yes
        fog=yes
        shroud=yes
        team_name=us

        type=Gryphon Rider
        canrecruit=yes

        # No traits to have more determinancy in these test cases.
        {NOTRAIT_UNIT 1 "Dwarvish Guardsman" 4 2}
        {NOTRAIT_UNIT 1 "Dwarvish Fighter" 6 2}
        {NOTRAIT_UNIT 1 "Dwarvish Scout" 8 2}
        {NOTRAIT_UNIT 1 "Gryphon Rider" 11 3}
    [/side]

    [side]
        side=2
        controller=ai
        team_name=us

        type=Spectre
        canrecruit=yes
    [/side]

    [side]
        side=3
        controller=ai
        team_name=them
        no_leader=yes
        [unit]
            type=Peasant
            x,y=10,1
            [abilities]
                [hides]
                    id=invisible
                    name="invisible"
                    female_name="female^invisible"
                    name_inactive="invisible"
                    female_name_inactive="female^invisible"
                    affect_self=yes
                [/hides]
            [/abilities]
        [/unit]
    [/side]

    [event]
        name=prestart

        {PLACE_IMAGE "items/gohere.png" 10 2}
    [/event]

    # Test of enter hex event.
    [event]
        name=enter hex
        first_time_only=no

        [filter]
            x,y=8,2
        [/filter]

        [message]
            speaker=unit
            message="I triggered an enter hex event."
        [/message]

        [allow_undo]
        [/allow_undo]
    [/event]

    # Test of exit hex event.
    [event]
        name=exit hex
        first_time_only=no

        [filter]
            x,y=8,2
        [/filter]

        [message]
            speaker=unit
            message="I triggered an exit hex event."
        [/message]

        [allow_undo]
        [/allow_undo]
    [/event]

    # Test of landing on occupied tiles.
    [event]
        name=exit hex
        first_time_only=no

        [filter]
            race=dwarf
        [/filter]
        [filter_second]
            race=dwarf
        [/filter_second]

        [message]
            speaker=unit
            message="Get out of the way, $second_unit.name|!"
        [/message]

        [allow_undo]
        [/allow_undo]
        [event]
            name=enter hex
        [/event]
    [/event]

    # Changing terrain in an enter hex event
    [event]
        name=enter hex
        first_time_only=no

        [filter]
            [filter_location]
                x,y=5,5
                radius=1
            [/filter_location]
        [/filter]

        [terrain]
            x,y=5,5
            terrain=Ww
        [/terrain]
    [/event]

    # Leaving a trail of changed terrain
    [event]
        name=enter hex
        first_time_only=no

        [filter]
            canrecruit=yes
        [/filter]

        [allow_undo]
        [/allow_undo]
        [event]
            name=moveto
        [/event]

        [terrain]
            x,y=$x2,$y2
            terrain=Qxu
        [/terrain]
        [message]
            movement_cost={UNREACHABLE}
            message="The ground has collapsed beneath me!"
        [/message]
        [kill]
            movement_cost={UNREACHABLE}
            fire_event=yes
        [/kill]
    [/event]

    # Causing the death of a unit should interrupt movement
    [event]
        name=die
        first_time_only=no
    [/event]

    # Relocating the unit in an enter hex event
    [event]
        name=enter hex
        first_time_only=no

        [filter]
            x,y=6,4
        [/filter]

        [teleport]
            [filter]
                x,y=6,4
            [/filter]
            x,y=6,5
        [/teleport]
    [/event]

    # Obstructive movefrom
    [event]
        name=exit hex
        first_time_only=no

        [filter]
            x,y=6,5
        [/filter]

        [terrain]
            x,y=6,5
            radius=1
            terrain=Xu
        [/terrain]
        [allow_undo]
        [/allow_undo]
    [/event]

    # Moveto test
    [event]
        name=moveto
        first_time_only=no

        [filter]
            x=6
            y=1-4
        [/filter]

        [message]
            speaker=unit
            message="I triggered a moveto event."
        [/message]
    [/event]

    # Test of sighted event.
    [event]
        name=sighted
        first_time_only=no

        [filter]
            side=2
        [/filter]

        [message]
            speaker=second_unit
            message="I spy, with my little eye, something that starts with 'f'.

" + {ASIDE ("This is the first part of a sighted event.")}
        [/message]
        [message]
            speaker=unit
            message="Um, ""friend""? (Hopefully not ""foe""....)

" + {ASIDE ("This is the second part of a sighted event.")}
        [/message]
        [allow_undo]
        [/allow_undo]
    [/event]
[/test]
