@Override
	public void onUnitCreate(Unit unit) {

		// Find the request the unit fulfills.
		StartedBuildRequest started = null;
		for (StartedBuildRequest request : startedRequests) {
			if (request.getRequest().getUnit().equals(unit.getType())) {
				started = request;
				break;
			}
		}

		// Remove the request
		if (started != null) {
			startedRequests.remove(started);

			finishedRequests.add(started);

			startedMinerals -= started.getRequest().getUnit().mineralPrice();
			startedGas -= started.getRequest().getUnit().gasPrice();
		} else if (self.getUnits().contains(unit)) {
			startedMinerals -= unit.getType().mineralPrice();
			startedGas -= unit.getType().gasPrice();
		}
	}