//============================================================================================================
// Alyx Citadel 01 speech
//============================================================================================================
criterion "IsMap_ep1_citadel_01" "map" "ep1_citadel_01" weight 10 "required"

//alyx context for giving you a hint upon hacking a rollermine during the roller training in citadel_01
response Alyxcitadel01RollermineHint
{
	//alyx says a custom line after she hacks her first rollermine
	//which is commented out so we can emulate this behavior by firing a vcd in the map instead
	norepeat
	//scene "scenes/episode_1/al_citadel_01_rollertraining_hacked.vcd"
	
}

rule Alyxcitadel01RollermineHint
{
	criteria		IsAlyx IsEpisodic ConceptInteractionDone IsMap_ep1_citadel_01
	response		Alyxcitadel01RollermineHint
}

//============================================================================================================
// Alyx Citadel Elevator speech
//============================================================================================================
criterion "ConceptElevatorNag" "Concept" "CPT_EP1_CITELEVATORNAG" required
criterion "GarageAntlionHolesCovered" "AntlionHolesCovered" "1" required



response "AlyxElevatorNagPlayerToStart"
{
	scene "scenes/episode_1/al_cit_elevator_getitmoving01.vcd" nodelay 0 displayfirst speakonce	
	scene "scenes/episode_1/al_cit_elevator_getitmoving02.vcd" nodelay 0
	scene "scenes/episode_1/al_cit_elevator_getitmoving03.vcd" nodelay 0
	scene "scenes/episode_1/al_cit_elevator_getitmoving04.vcd" nodelay 0
}

rule AlyxElevatorNagPlayerToStart
{
	criteria		IsAlyx ConceptElevatorNag
	response		AlyxElevatorNagPlayerToStart
}

//==================================================================================================
// Alyx giving player hints on removing the Sniper in c17_01
//==================================================================================================
response Alyxc1701SniperHint
{
   	//*wav missing!*scene "scenes/episode_1/al_c17_01_sniper_cantcomewith.vcd"
   	//scene "scenes/episode_1/al_c17_01_sniper_takeoutsniper.vcd"
	scene "scenes/episode_1/al_c17_01_sniper_pinneddown.vcd"
	scene "scenes/episode_1/al_c17_01_sniper_cantgetthru.vcd"
	//scene "scenes/episode_1/al_c17_01_sniper_heygrabrollermine.vcd"
	//scene "scenes/episode_1/al_c17_01_sniper_bringmerollermine.vcd"
}

rule Alyxc1701SniperHint
{
	criteria		IsAlyx IsEpisodic ConceptTalkc1701SniperHint
	response		Alyxc1701SniperHint
}

response Alyxc1701RollermineHint
{
	//the idea is to have alyx talk about rollermines until you hack at least one.
	// then she'll say her SniperHint lines (above)
   	//scene "scenes/episode_1/al_c17_01_sniper_cantcomewith.vcd"
   	//scene "scenes/episode_1/al_c17_01_sniper_takeoutsniper.vcd"
	//scene "scenes/episode_1/al_c17_01_sniper_pinneddown.vcd"
	//scene "scenes/episode_1/al_c17_01_sniper_cantgetthru.vcd"
	scene "scenes/episode_1/al_c17_01_sniper_heygrabrollermine.vcd"
	scene "scenes/episode_1/al_c17_01_sniper_bringmerollermine.vcd"
	scene "scenes/episode_1/al_c17_01_sniper_DontWasteRollermine.vcd"
}

rule Alyxc1701RollermineHint
{
	criteria		IsAlyx IsEpisodic ConceptTalkc1701RollermineHint
	response		Alyxc1701RollermineHint
}


//============================================================================================================
// Alyx Evac Citizen Speech - spoken when the player arrives escorting a group of citizens.
//============================================================================================================

response "AlyxEvacCitizen"
{
	scene "scenes/episode_1/al_c17_05_evac_cits01.vcd"
	scene "scenes/episode_1/al_c17_05_evac_cits02.vcd"
	scene "scenes/episode_1/al_c17_05_evac_cits03.vcd"

}
rule AlyxEvacCitizen
{
	criteria IsAlyx ConceptTalkAlyxEVacCitizen
        applycontext "Evac05CitizenThanks:1:60"
	response AlyxEvacCitizen
}


//============================================================================================================
// Alyx Evac Next group - spoken when the player needs to get another group of citizens.
//============================================================================================================

criterion "IsWaitForPlayerEvacNextGroup" "concept" "ConceptEvacNextGroup" "required"

response "AlyxEvacNextGroup"
{

	scene "scenes/episode_1/c17/al_evac_takestand.vcd"  displayfirst
	scene "scenes/episode_1/al_c17_05_evac_nextgroup01.vcd"
	scene "scenes/episode_1/al_c17_05_evac_nextgroup02.vcd"
	scene "scenes/episode_1/al_c17_05_evac_nextgroup03.vcd"
	scene "scenes/episode_1/al_c17_05_evac_nextgroup04.vcd"
	scene "scenes/episode_1/al_c17_05_evac_nextgroup05.vcd"

}
rule AlyxEvacNextGroup
{
	criteria IsAlyx ConceptTalkAlyxEvacNextGroup 
	response AlyxEvacNextGroup
}


//============================================================================================================
// Alyx Evac Protect - spoken when the player lets evac citizens come to harm
//============================================================================================================
//----------------------------------------------------------------------------

response "AlyxEvacProtect"
{
	scene "scenes/episode_1/al_c17_05_evac_protect01.vcd"
	scene "scenes/episode_1/al_c17_05_evac_protect02.vcd"
	scene "scenes/episode_1/al_c17_05_evac_protect03.vcd"
	scene "scenes/episode_1/al_c17_05_evac_protect04.vcd"
	scene "scenes/episode_1/al_c17_05_evac_protect05.vcd"

}
rule AlyxEvacProtect
{
	criteria IsAlyx IsEpisodic ConceptTalkAlyxEvacProtect PlayerNear
	response AlyxEvacProtect
}


//============================================================================================================
// Alyx Antlion Holes Covered - spoken when the player covers the holes in the garage.
//============================================================================================================
//----------------------------------------------------------------------------

response "GarageAntlionHolesCoveredDeadAntlions"
{
	scene "scenes/episode_1/c17/al_garage_hearthink.vcd" speakonce

}
rule GarageAntlionHolesCoveredDeadAntlions
{
	criteria IsAlyx GarageAntlionHolesCovered  NotInCombat
	response GarageAntlionHolesCoveredDeadAntlions
}

response "GarageAntlionHolesCoveredLiveAntlions"
{
	scene "scenes/episode_1/c17/al_garage_stragglers.vcd" speakonce
}
rule GarageAntlionHolesCoveredLiveAntlions
{
	criteria IsAlyx GarageAntlionHolesCovered EnemyIsAntLion
	response GarageAntlionHolesCoveredLiveAntlions
}


//============================================================================================================
// Alyx Thanking you for not killing all of the citizens you are supposed to be escorting.
//============================================================================================================
//----------------------------------------------------------------------------
criterion "ConceptTalkEvacCongrats" "Concept" "TLK_ALYX_EVAC_CONGRATS" required

response "EvacCongrats"
{
	scene "scenes/episode_1/c17/al_evac_congrat01.vcd" 
	scene "scenes/episode_1/c17/al_evac_congrat02.vcd" 
	scene "scenes/episode_1/c17/al_evac_congrat03.vcd" 
	scene "scenes/episode_1/c17/al_evac_congrat04.vcd" 
	scene "scenes/episode_1/c17/al_evac_congrat05.vcd" 

}
rule EvacCongrats
{
	criteria IsAlyx ConceptTalkEvacCongrats PlayerNear
	response EvacCongrats
}



//============================================================================================================
// Alyx Training the player to cover the antlion holes - first time around
//============================================================================================================
//----------------------------------------------------------------------------
criterion "ConceptAntLionTrainingHint" "AntlionTrainingHint" "1" required

response "AntLionTrainingHints"
{
	sequential
	norepeat
	scene "scenes/npc/alyx/al_blank.vcd" respeakdelay 20 
	scene "scenes/episode_1/c17/al_antlions_cutsupply.vcd" respeakdelay 30 
	scene "scenes/episode_1/c17/al_antlions_keepcontrol.vcd"  respeakdelay 30 
	scene "scenes/episode_1/c17/al_antlions_runoutbullets.vcd" respeakdelay 30

}
rule AntLionTrainingHints
{
	criteria IsAlyx ConceptAntLionTrainingHint PlayerNear ConceptAlyxEnemyDead ConceptNoEnemies
	response AntLionTrainingHints
}


//============================================================================================================
// Alyx Congrats to player for covering hole
//============================================================================================================
//----------------------------------------------------------------------------
criterion "ConceptAntlionGoodWork" "Concept" "AntlionGoodWork" required

response "AntLionTrainingCongrats"
{
	scene "scenes/episode_1/c17/al_antlions_plugthatway.vcd" speakonce

}
rule AntLionTrainingCongrats
{
	criteria IsAlyx ConceptAntlionGoodWork PlayerNear ConceptNoEnemies
	response AntLionTrainingCongrats
}

//============================================================================================================
//Alyx plus use and nags while player should follow power line to powerbox for elevator.
//============================================================================================================
//----------------------------------------------------------------------------
criterion "NotUsedNagLookForPower" "UsedNagLookForPower" "!=1" "required" weight 0
criterion "IsLookForPower" "al_hint_c1700_LookForPower" "1" "required" weight 10
criterion "HintLookForPowerNag" "concept" "TLK_FollowWireNag" "required" weight 10

response AlyxC1700aUseLookForPower
{
	sequential
	scene "scenes/episode_1/c17/al_elev_power_nag05.vcd"  
	scene "scenes/episode_1/c17/al_elev_power_nag03.vcd"  
	scene "scenes/npc/Alyx/al_nomore.vcd"  
}

rule AlyxC1700aUseLookForPower
{
	criteria IsAlyx ConceptTalkUse IsLookForPower  NotUsedNagLookForPower
        applycontext "UsedNagLookForPower:1:30,UsedAlyxResponse:1:30"
	response AlyxC1700aUseLookForPower
}



response AlyxC1700aLookForPower
{	
	norepeat
	sequential
	scene "scenes/episode_1/c17/al_elev_power_nag04.vcd"
	scene "scenes/episode_1/c17/al_elev_power_nag01.vcd"
	scene "scenes/episode_1/c17/al_elev_power_nag02.vcd"

}

rule AlyxC1700aLookForPower
{
	criteria IsAlyx  HintLookForPowerNag NotUsedNagLookForPower NotInCombat PlayerNear
        applycontext "UsedNagLookForPower:1:30,UsedAlyxResponse:1:30"
	response AlyxC1700aLookForPower
}


//============================================================================================================
//Alyx plus use while waiting for elevator
//============================================================================================================
//----------------------------------------------------------------------------
criterion "IsWaitingForElevator" "al_hint_c1700_WaitForElevator" "1" "required" weight 10
response AlyxC1700aUseWaitForElevator
{
	sequential
	norepeat
	scene "scenes/episode_1/c17/al_elev_almosthere.vcd"  
	scene "scenes/npc/Alyx/al_nomore.vcd"  
}

rule AlyxC1700aUseWaitForElevator
{
	criteria IsAlyx ConceptTalkUse IsWaitingForElevator NotInCombat NotUsedAlyxResponse
        applycontext "UsedAlyxResponse:1:30"
	response AlyxC1700aUseWaitForElevator
}



response AlyxC1700aUseWaitForElevatorCombat
{
	sequential
	norepeat
	scene "scenes/episode_1/c17/al_elev_anytime_loud.vcd"  
	scene "scenes/episode_1/c17/al_elev_anyminute_loud.vcd"  
}


rule AlyxC1700aUseWaitForElevatorCombat
{
	criteria IsAlyx ConceptTalkUse IsWaitingForElevator InCombat NotUsedAlyxResponse
        applycontext "UsedAlyxResponse:1:30"
	response AlyxC1700aUseWaitForElevatorCombat
}

 