protected override void Recruit(RecruitmentWorkOrder recruitmentWorkOrder) { var unit = Instantiate(recruitmentWorkOrder.unit, spawnPoint.position, Quaternion.identity).GetComponent <Unit>(); unit.Move(targetPosition.position); OnUnitRecruited?.Invoke(unit); }
public bool TryRecruit(RecruitmentWorkOrder recruitmentWorkOrder) { if (population.CanReqruit(recruitmentWorkOrder.Population)) { population.current += recruitmentWorkOrder.Population; OnPopulationUpdated?.Invoke(population); return(true); } return(false); }
protected abstract void Recruit(RecruitmentWorkOrder recruitmentWorkOrder);
public void Cancel(RecruitmentWorkOrder recruitmentWorkOrder) { population.current -= recruitmentWorkOrder.Population; OnPopulationUpdated?.Invoke(population); }