public void execute(final State state) {
		//do something special if this is the first scan
		if (isPreInitialScan) {
			isPreInitialScan = false;
			doInitialScan(state);
		} else if (state.targetPosition != null) {
			// don't bother if we don't know where the enemy is yet
			doExecute(state);
		}
	}