bool ongoing = false; // Are there any orders related to this behavior currently running ? public MineAndSellAutomaticallyBehavior(GameObject ship, AIOrderQueue orderQueue) : base(ship, orderQueue) { mineNearestOrder = new MineNearest(ship); dockAtNearestOrder = new DockAtNearestOrder(ship); sellToDockedStationOrder = new SellCargoToDockedStation(ship); undockOrder = new UndockOrder(ship); mineNearestOrder.OnStateSucceeded += OnOrderFinished; mineNearestOrder.OnStateFailed += (str) => OnOrderFinished(); sellToDockedStationOrder.OnStateSucceeded += OnOrderFinished; }
public DefendAreaBehavior(Vector2 area, float areaRadius, GameObject ship, AIOrderQueue orderQueue) : base(ship, orderQueue) { areaCenter = area; radius = areaRadius; goToAreaCenterOrder = new GoToOrder(ship, area, areaRadius); goToAreaCenterOrder.OnStateSucceeded += GoToAreaCenterOrder_OnStateSucceeded; controlledEncounterAgent = controlledShip.GetComponent <EncounterAgent>(); controlledEncounterAgent.OnEncounterJoined += ControlledEncounterAgent_OnEncounterJoined; controlledEncounterAgent.OnEncounterLeft += ControlledEncounterAgent_OnEncounterLeft; resolveEncounterOrder = new ResolveEncounterOrder(ship, controlledEncounterAgent); findTargetOrder = new LookForTargetOrder(ship, OnTargetFound, areaRadius); }
public AIBehavior(GameObject ship, AIOrderQueue orderQueue) { controlledShip = ship; this.orderQueue = orderQueue; }