public static ShipFactory GetNearestFactionFactory(Faction faction) { ShipFactory[] allFactories = FindObjectsOfType <ShipFactory>(); foreach (ShipFactory factory in allFactories) { if (factory.alignment == faction) { return(factory); } } return(null); }
public ShipController RequestShip(Faction sourceFaction, Size requestedClass) { foreach (Ship ship in ships) { if (ship.size == requestedClass && (ship.sourceRestriction == Faction.NONE || ship.sourceRestriction == sourceFaction)) { //Animate the ship flying into the battlefield GameObject shipInstance = Instantiate(ship.prefab, transform.position, transform.rotation); shipInstance.transform.parent = shipsParentObject.transform; return(shipInstance.GetComponent <ShipController>()); } } return(null); }