﻿-- chunkname: @scripts/extension_systems/behavior/utility_considerations/chaos_plague_ogryn_utility_considerations.lua

local considerations = {
	chaos_plague_ogryn_catapult_attack = {
		distance_to_target = {
			blackboard_component = "perception",
			component_field = "target_distance",
			max_value = 5.2,
			spline = {
				0,
				1,
				0.75,
				1,
				0.77002,
				0,
				1,
				0,
			},
		},
		distance_to_target_z = {
			blackboard_component = "perception",
			component_field = "target_distance_z",
			max_value = 3.75,
			spline = {
				0,
				1,
				0.5,
				0,
				1,
				0,
			},
		},
		target_speed_away = {
			blackboard_component = "perception",
			component_field = "target_speed_away",
			max_value = 4.5,
			spline = {
				0,
				0.4,
				0.933,
				1,
				0.9331,
				1,
				1,
				1,
			},
		},
		has_line_of_sight = {
			blackboard_component = "perception",
			component_field = "has_line_of_sight",
			is_condition = true,
		},
		last_done_time = {
			component_field = "last_done_time",
			max_value = 10,
			time_diff = true,
			spline = {
				0,
				0,
				0.5,
				0,
				0.5001,
				1,
				1,
				1,
			},
		},
	},
	chaos_plague_ogryn_slam_attack = {
		distance_to_target = {
			blackboard_component = "perception",
			component_field = "target_distance",
			max_value = 4.75,
			spline = {
				0,
				1,
				0.75,
				1,
				0.77002,
				0,
				1,
				0,
			},
		},
		target_speed_away = {
			blackboard_component = "perception",
			component_field = "target_speed_away",
			max_value = 4,
			spline = {
				0,
				1,
				0.1,
				1,
				0.1001,
				0,
				1,
				0,
			},
		},
		distance_to_target_z = {
			blackboard_component = "perception",
			component_field = "target_distance_z",
			max_value = 4.75,
			spline = {
				0,
				1,
				0.5,
				0,
				1,
				0,
			},
		},
		has_line_of_sight = {
			blackboard_component = "perception",
			component_field = "has_line_of_sight",
			is_condition = true,
		},
	},
	chaos_plague_ogryn_charge = {
		distance_to_target = {
			blackboard_component = "perception",
			component_field = "target_distance",
			max_value = 15,
			spline = {
				0,
				0,
				0.4,
				0,
				0.7,
				1,
				1,
				1,
			},
		},
		has_line_of_sight = {
			blackboard_component = "perception",
			component_field = "has_line_of_sight",
			is_condition = true,
		},
		last_time = {
			component_field = "last_time",
			max_value = 30,
			time_diff = true,
			spline = {
				0,
				0,
				0.5,
				0,
				0.5001,
				1,
				1,
				1,
			},
		},
	},
	chaos_plague_ogryn_plague_stomp = {
		distance_to_target = {
			blackboard_component = "perception",
			component_field = "target_distance",
			max_value = 5.2,
			spline = {
				0,
				1,
				0.75,
				1,
				0.77002,
				0,
				1,
				0,
			},
		},
		distance_to_target_z = {
			blackboard_component = "perception",
			component_field = "target_distance_z",
			max_value = 2.25,
			spline = {
				0,
				1,
				0.5,
				0,
				1,
				0,
			},
		},
		last_done_time = {
			component_field = "last_done_time",
			max_value = 18,
			time_diff = true,
			spline = {
				0,
				0,
				0.5,
				0,
				0.5001,
				1,
				1,
				1,
			},
		},
		has_line_of_sight = {
			blackboard_component = "perception",
			component_field = "has_line_of_sight",
			is_condition = true,
		},
		has_slot = {
			blackboard_component = "slot",
			component_field = "has_slot",
			is_condition = true,
		},
	},
	chaos_plague_ogryn_combo_attack = {
		distance_to_target = {
			blackboard_component = "perception",
			component_field = "target_distance",
			max_value = 5.2,
			spline = {
				0,
				1,
				0.75,
				1,
				0.77002,
				0,
				1,
				0,
			},
		},
		distance_to_target_z = {
			blackboard_component = "perception",
			component_field = "target_distance_z",
			max_value = 4.75,
			spline = {
				0,
				1,
				0.75,
				1,
				1,
				0,
			},
		},
		target_speed_away = {
			blackboard_component = "perception",
			component_field = "target_speed_away",
			max_value = 4.5,
			spline = {
				0,
				0.4,
				0.25,
				0.65,
				0.933,
				1,
				0.9331,
				1,
				1,
				1,
			},
		},
		last_done_time = {
			component_field = "last_done_time",
			max_value = 14,
			time_diff = true,
			spline = {
				0,
				0,
				0.5,
				0,
				0.5001,
				1,
				1,
				1,
			},
		},
		has_line_of_sight = {
			blackboard_component = "perception",
			component_field = "has_line_of_sight",
			is_condition = true,
		},
		has_slot = {
			blackboard_component = "slot",
			component_field = "has_slot",
			is_condition = true,
		},
	},
}

return considerations
