############################################################
###           ESC Scripted Triggers (Ship Sizes)         ###
############################################################

###
### Vanilla trigger substitutes
###

# ESC overwrite for ship_sizes that use starbase components
ESC_ship_uses_starbase_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_starbase_components = yes
		is_ship_size = starbase_deep_space_citadel_1
		is_ship_size = starbase_deep_space_citadel_2
		is_ship_size = starbase_deep_space_citadel_3
		# NSC starbases
		is_ship_size = @NSC_GrandCitadel
		is_ship_size = @NSC_SolarStronghold
		# NSC ships
		is_ship_size = @NSC_Headquarters
		# other starbases
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_Bastion
	}
}
ESC_ship_uses_starbase_reactors = {
	ESC_ship_uses_starbase_components = yes
}
ESC_ship_uses_big_starbase_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		is_ship_size = starbase_citadel
		is_ship_size = starbase_deep_space_citadel_1
		is_ship_size = starbase_deep_space_citadel_2
		is_ship_size = starbase_deep_space_citadel_3
		# special case for the fallen hive empire
		AND = {
			is_ship_class = shipclass_starbase
			from = { is_fallen_empire_hive = yes }
		}
		# NSC starbases
		is_ship_size = @NSC_GrandCitadel
		is_ship_size = @NSC_SolarStronghold
		# NSC ships
		is_ship_size = @NSC_Headquarters
		# other starbases
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_Bastion
	}
}
ESC_ship_uses_big_starbase_reactors = {
	ESC_ship_uses_big_starbase_components = yes
}

# ESC overwrite for ship_sizes that use corvette components
ESC_ship_uses_corvette_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_corvette_components = yes
		# WACO ships
		is_ship_size = @WACO_FlotillaShip
		is_ship_size = @WACO_EmergencyShip
		# EAC ships
		is_ship_size = @EAC_PatrolCraft_1
		is_ship_size = @EAC_PatrolCraft_2
	}
}
ESC_ship_uses_corvette_reactors = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_corvette_reactors = yes
		# WACO ships
		is_ship_size = @WACO_FlotillaShip
		is_ship_size = @WACO_EmergencyShip
		# EAC ships
		is_ship_size = @EAC_PatrolCraft_1
		is_ship_size = @EAC_PatrolCraft_2
	}
}

# ESC overwrite for ship_sizes that use destroyer components
ESC_ship_uses_destroyer_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_destroyer_components = yes
		# VSE ships
		is_ship_size = @VSE_Artemis
		# other ships
		is_ship_size = @MISC_PirateCorvette
	}
}
ESC_ship_uses_destroyer_reactors = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_destroyer_reactors = yes
		# VSE ships
		is_ship_size = @VSE_Artemis
		# other ships
		is_ship_size = @MISC_PirateCorvette
	}
}

# ESC overwrite for ship_sizes that use cruiser components
ESC_ship_uses_cruiser_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_cruiser_components = yes
		# VSE ships
		is_ship_size = @VSE_ATT
		is_ship_size = @VSE_Conquistador
		# Deadly tempest
		is_ship_size = graygoo_interdictor
	}
}
ESC_ship_uses_cruiser_reactors = {
	ESC_ship_uses_cruiser_components = yes
}
# special overwrite for the purposes of inline-scripting
ESC_ship_uses_cruiser_nsc_components = {
	OR = {
		ESC_ship_uses_cruiser_components = yes
	}
}
ESC_ship_uses_cruiser_nsc_reactors = {
	ESC_ship_uses_cruiser_nsc_components = yes
}

# ESC overwrite for ship_sizes that use battleship components
ESC_ship_uses_battleship_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_battleship_reactors = yes
		is_ship_size = nanite_interdictor
		# NSC ships
		is_ship_size = @NSC_EscortCarrier
		# SCX ships
		is_ship_size = @SCX_Carrier
		# Realsitic ships : dreadnoughts
		is_ship_size = @RS_Dreadnought
		is_ship_size = @RS_HeavyDreadnought
		is_ship_size = @RS_HDreadnought_ART
		is_ship_size = @RS_HDreadnought_MAM
		is_ship_size = @RS_HDreadnought_MOL
		is_ship_size = @RS_HDreadnought_AVI
		is_ship_size = @RS_HDreadnought_REP
		is_ship_size = @RS_HDreadnought_FUN
		is_ship_size = @RS_HDreadnought_PLA
		is_ship_size = @RS_HDreadnought_HUM
		is_ship_size = @RS_HDreadnought_LIT
		is_ship_size = @RS_HDreadnought_NEC
		is_ship_size = @RS_HDreadnought_NEM
		is_ship_size = @RS_HDreadnought_AQU
		is_ship_size = @RS_HDreadnought_TOX
		is_ship_size = @RS_HDreadnought_MCH
		is_ship_size = @RS_HDreadnought_CYB
		is_ship_size = @RS_HDreadnought_PSI
		is_ship_size = @RS_HDreadnought_MWD
		is_ship_size = @RS_HDreadnought_INF
		is_ship_size = @RS_HDreadnought_STRG
		is_ship_size = @RS_HDreadnought_TW
		is_ship_size = @RS_HDreadnought_FE
		is_ship_size = @RS_HDreadnought_FE1
		is_ship_size = @RS_HDreadnought_FE2
		is_ship_size = @RS_HDreadnought_FE3
		# Playable fallen empire ships
		is_ship_size = @PFE_Battlecruiser
	}
}
ESC_ship_uses_battleship_reactors = {
	ESC_ship_uses_battleship_components = yes
}
# special overwrite for the purposes of inline-scripting
ESC_ship_uses_battleship_nsc_components = {
	OR = {
		ESC_ship_uses_battleship_components = yes
	}
}
ESC_ship_uses_battleship_nsc_reactors = {
	ESC_ship_uses_battleship_nsc_components = yes
}

# ESC overwrite for ship_sizes that use titan components
ESC_ship_uses_titan_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_titan_reactors = yes
		# Deadly tempest
		is_ship_size = graygoo_mothership
		# Playable fallen empire ships
		is_ship_size = @PFE_Titan
		# VSE ships
		is_ship_size = @VSE_Ironclad
		# Great Khan Expanded
		is_ship_size = @MISC_PirateGalleon
		is_ship_size = @MISC_MarauderGalleon
	}
}
ESC_ship_uses_titan_reactors = {
	ESC_ship_uses_titan_components = yes
}
# special overwrite for the purposes of inline-scripting
ESC_ship_uses_titan_nsc_components = {
	OR = {
		ESC_ship_uses_titan_components = yes
	}
}
ESC_ship_uses_titan_nsc_reactors = {
	ESC_ship_uses_titan_nsc_components = yes
}

# ESC overwrite for ship_sizes that use juggernaut components
ESC_ship_uses_juggernaut_components = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_juggernaut_reactors = yes
		ship_uses_colossus_components = yes
		# other juggernauts
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_WarJuggernaut
	}
}
ESC_ship_uses_juggernaut_reactors = {
	ESC_ship_uses_juggernaut_components = yes
}
ESC_ship_uses_colossus_components = {
	ESC_ship_uses_juggernaut_components = yes
}
ESC_ship_uses_colossus_reactors = {
	ESC_ship_uses_colossus_components = yes
}

###
### ESC gives different reactors to different size of platforms...
###

# ESC custom trigger for ship_sizes equivalent to small defense platform
ESC_ship_uses_platform_components = {
	OR = {
		# vanilla platforms
		is_ship_size = military_station_small
	}
}
ESC_ship_uses_platform_reactors = {
	ESC_ship_uses_platform_components = yes
}

# ESC custom trigger for ship_sizes equivalent to medium defense platform
ESC_ship_uses_platform2_components = {
	OR = {
		# vanilla platforms
		is_ship_size = military_station_medium
		# NSC ships
		is_ship_size = @NSC_AnnihilatorCannon
		# other platforms...
		is_ship_size = @MISC_DF_Medium
	}
}
ESC_ship_uses_platform2_reactors = {
	ESC_ship_uses_platform2_components = yes
}

# ESC custom trigger for ship_sizes equivalent to large defense platform
ESC_ship_uses_platform3_components = {
	OR = {
		# vanilla platforms
		is_ship_size = military_station_large
		# other platforms...
		is_ship_size = @EAC_Platform
		is_ship_size = @MISC_DF_Large
	}
}
ESC_ship_uses_platform3_reactors = {
	ESC_ship_uses_platform3_components = yes
}

# ESC custom trigger for ship_sizes equivalent to the ion cannon
ESC_ship_uses_ion_cannon_components = {
	OR = {
		# vanilla platforms
		is_ship_size = ion_cannon
	}
}
ESC_ship_uses_ion_cannon_reactors = {
	ESC_ship_uses_ion_cannon_components = yes
}

###
### mod-only ship_sizes
###

# ESC custom trigger for ship_sizes that use strikecruiser components
ESC_ship_uses_strikecruiser_components = {
	OR = {
		# NSC ships
		#is_ship_size = @NSC_StrikeCruiser
		# Realistic ships : cruisers
		is_ship_size = @RS_SupportCruiser
		is_ship_size = @RS_ElectronicCruiser
		is_ship_size = @RS_BattleCruiser
		# Playable fallen empire ships
		is_ship_size = @PFE_Escort
		# Great Khan Expanded
		is_ship_size = @MISC_MarauderCorvette
	}
}
ESC_ship_uses_strikecruiser_reactors = {
	ESC_ship_uses_strikecruiser_components = yes
}

# ESC custom trigger for ship_sizes that use battlecruiser components
ESC_ship_uses_battlecruiser_components = {
	OR = {
		# NSC ships
		is_ship_size = @NSC_BattleCruiser
		#is_ship_size = @NSC_ExplorationShip
		# Realistic ships : cruisers
		is_ship_size = @RS_SupportCruiser
		is_ship_size = @RS_ElectronicCruiser
		is_ship_size = @RS_BattleCruiser
		# Playable fallen empire ships
		is_ship_size = @PFE_Escort
		# Great Khan Expanded
		is_ship_size = @MISC_MarauderCorvette
	}
}
ESC_ship_uses_battlecruiser_reactors = {
	ESC_ship_uses_battlecruiser_components = yes
}

# ESC custom trigger for ship_sizes that use carrier components
ESC_ship_uses_carrier_components = {
	always = no
	# OR = {
	# 	# NSC ships
	# 	#is_ship_size = @NSC_Carrier
	# }
}
ESC_ship_uses_carrier_reactors = {
	ESC_ship_uses_carrier_components = yes
}

# ESC custom trigger for ship_sizes that use dreadnought components
ESC_ship_uses_dreadnought_components = {
	OR = {
		# NSC ships
		is_ship_size = @NSC_Dreadnought
		# SCX ships
		is_ship_size = @SCX_Dreadnought
		# other...
		is_ship_size = @MISC_Dreadnought_A
		is_ship_size = @MISC_Dreadnought_PLR
	}
}
ESC_ship_uses_dreadnought_reactors = {
	ESC_ship_uses_dreadnought_components = yes
}

# ESC custom trigger for ship_sizes that use flagship components
ESC_ship_uses_flagship_components = {
	OR = {
		# NSC ships
		is_ship_size = @NSC_Flagship
		is_ship_size = @Freebooters_Flagship
		# other...
		is_ship_size = @MISC_Ultrajuggernaut
	}
}
ESC_ship_uses_flagship_reactors = {
	ESC_ship_uses_flagship_components = yes
}

###
### Extra triggers for NSC overwrites
###

# ESC custom trigger for ship_sizes that use dreadnought or carrer components (NSC overwrites)
ESC_ship_uses_dreadnought_carrier_components = {
	OR = {
		ESC_ship_uses_dreadnought_components = yes
		ESC_ship_uses_carrier_components = yes
	}
}
ESC_ship_uses_dreadnought_carrier_reactors = {
	ESC_ship_uses_dreadnought_carrier_components = yes
}

# ESC custom trigger for afterburners
ESC_ship_uses_afterburners = {
	OR = {
		is_ship_class = shipclass_military
		is_ship_size = @NSC_ExplorationShip
	}
}

###
### Combat computer triggers
###

# ESC custom trigger for starbase computers
ESC_ship_uses_starbase_computers = {
	OR = {
		# vanilla or direct vanilla overwrites
		ship_uses_starbase_components = yes
		is_ship_size = starbase_deep_space_citadel_1
		is_ship_size = starbase_deep_space_citadel_2
		is_ship_size = starbase_deep_space_citadel_3
		# NSC starbases
		is_ship_size = @NSC_GrandCitadel
		is_ship_size = @NSC_SolarStronghold
		# other starbases
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_Bastion
	}
}

# ESC custom triggers for platform computers
ESC_ship_uses_platform_computers = {
	OR = {
		ESC_ship_uses_platform_components = yes
		ESC_ship_uses_platform2_components = yes
		ESC_ship_uses_platform3_components = yes
		ESC_ship_uses_ion_cannon_components = yes
	}
}

# ESC custom trigger for the NSC HQ station
ESC_ship_uses_NSC_headquarters_computers = {
	OR = {
		# NSC ships
		is_ship_size = @NSC_Headquarters
	}
}

# ESC custom trigger for carrier combat computers
ESC_ship_uses_carrier_computers = {
	OR = {
		ESC_ship_uses_cruiser_components = yes
		ESC_ship_uses_battleship_components = yes
		ESC_ship_uses_flagship_components = yes
		is_ship_size = cosmo_crisis_battlecruiser
		is_ship_size = cosmo_crisis_harbinger
		is_ship_size = cosmo_crisis_titan
		# also...
		is_ship_size = @NSC_EscortCarrier
		# Realistic ships : cruisers
		is_ship_size = @RS_SupportCruiser
		is_ship_size = @RS_ElectronicCruiser
		is_ship_size = @RS_BattleCruiser
		# Great Khan Expanded
		is_ship_size = @MISC_PirateGalleon
		is_ship_size = @MISC_MarauderGalleon
		# VSE ships
		is_ship_size = @VSE_Ironclad
		# other...
		is_ship_size = @MISC_Ultrajuggernaut
	}
}

# ESC custom trigger for artillery combat computers
ESC_ship_uses_artillery_adc_computers = {
	OR = {
		ESC_ship_uses_cruiser_components = yes
		ESC_ship_uses_strikecruiser_components = yes
		ESC_ship_uses_battlecruiser_components = yes
		ESC_ship_uses_battleship_components = yes
		ESC_ship_uses_carrier_components = yes
		ESC_ship_uses_dreadnought_carrier_components = yes
		ESC_ship_uses_titan_components = yes
		ESC_ship_uses_flagship_components = yes
		ship_uses_juggernaut_reactors = yes
		# other juggernauts
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_WarJuggernaut
	}
}
ESC_ship_uses_artillery_computers = {
	OR = {
		ESC_ship_uses_destroyer_components = yes
		ESC_ship_uses_artillery_adc_computers = yes
	}
}

# ESC custom trigger for line combat computers
ESC_ship_uses_line_adc_computers = {
	OR = {
		ESC_ship_uses_cruiser_components = yes
		ESC_ship_uses_strikecruiser_components = yes
		ESC_ship_uses_battlecruiser_components = yes
		ESC_ship_uses_battleship_components = yes
		ESC_ship_uses_carrier_components = yes
		ESC_ship_uses_dreadnought_carrier_components = yes
		ESC_ship_uses_titan_components = yes
		ESC_ship_uses_flagship_components = yes
		ship_uses_juggernaut_reactors = yes
		# other juggernauts
		is_ship_size = @MISC_Battlefortress
		is_ship_size = @MISC_WarJuggernaut
	}
}
ESC_ship_uses_line_computers = {
	OR = {
		ESC_ship_uses_destroyer_components = yes
		ESC_ship_uses_line_adc_computers = yes
	}
}

# ESC custom trigger for picket combat computers
ESC_ship_uses_picket_adc_computers = {
	OR = {
		ESC_ship_uses_cruiser_components = yes
		ESC_ship_uses_strikecruiser_components = yes
		ESC_ship_uses_battlecruiser_components = yes
	}
}
ESC_ship_uses_picket_computers = {
	OR = {
		ESC_ship_uses_destroyer_components = yes
		ESC_ship_uses_picket_adc_computers = yes
	}
}

# ESC custom trigger for torpedo combat computers
ESC_ship_uses_torpedo_computers = {
	OR = {
		ESC_ship_uses_destroyer_components = yes
		ESC_ship_uses_cruiser_components = yes
		is_ship_size = frigate
	}
}

# ESC custom trigger for swarm combat computers
ESC_ship_uses_swarm_computers = {
	OR = {
		ESC_ship_uses_corvette_components = yes
		ESC_ship_uses_cruiser_components = yes
		ESC_ship_uses_strikecruiser_components = yes
		ESC_ship_uses_battlecruiser_components = yes
	}
}

# ESC custom trigger for buffer combat computers
ESC_ship_uses_buffer_computers = {
	OR = {
		ship_uses_buffer_role = yes
	}
}

# ESC custom trigger for debuffer combat computers
ESC_ship_uses_debuffer_computers = {
	OR = {
		ship_uses_debuffer_role = yes
	}
}
