package RTDB
using AIActionTarget

AISquadORCondition : AITicketCheck
{
	fk< AITicketCheck >[] OR = [];
}

AISquadANDCondition : AITicketCheck
{
	fk< AITicketCheck >[] AND = [];
}

AISquadMembersAmountCheck : AITicketCheck
{
	int minAmount = -1;
	int maxAmount = -1;
	bool countSelf = true;
}

AISquadContainsSelfCheck : AITicketCheck
{
}

AISquadClosestToTargetCheck : AISquadDistanceRelationToTargetCheck
{
}

AISquadFurthestToTargetCheck : AISquadDistanceRelationToTargetCheck
{
}

AISquadClosestToSectorCheck : AISquadDistanceRelationToSectorCheck
{
}

AISquadFurthestToSectorCheck : AISquadDistanceRelationToSectorCheck
{
}

AISquadJustSelfFilter : AITicketFilter
{
}

AISquadInSectorFilter : AITicketFilter
{
	fk< AISectorType >[] sectors = [];
}

AISquadAvoidLastFilter : AITicketFilter
{
}

AISquadFilterByAICondition : AITicketFilter
{
	fk< AIActionCondition > condition = "";
}

AISquadSpatialForOwnTarget : AITicketFilter
{
	fk< AISpatialCond > spatial = "";
}

AISquadFilterOwnTargetSpotted : AITicketFilter
{
	fk< AIActionTarget > target = "AIActionTarget.CombatTarget";
}

AISquadItemTypePriorityFilter : AISquadItemPriorityFilter
{
	fk< ItemType >[] types = [];
}

AISquadItemCategoryPriorityFilter : AISquadItemPriorityFilter
{
	fk< ItemCategory >[] categories = [];
}

