diff --git a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionTypeViewController.java b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionTypeViewController.java
index da08e59d72a87d0213f66478b116bb28ebba7972..ee1dda9212e66fe9acc5ab4a1916a74445d94ab1 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionTypeViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionTypeViewController.java
@@ -17,7 +17,9 @@ import javafx.scene.control.ToggleGroup;
 import javafx.scene.layout.*;
 import org.controlsfx.control.SegmentedButton;
 
+import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * Diese View ist die Basis für die Einstellunge für eine CartAction. Dabei enthällt diese View ein Grid aus Buttons (Carts), eine
@@ -44,7 +46,7 @@ public class CartActionTypeViewController extends NVC {
 
 
 	public CartActionTypeViewController(Mapping mapping, IMappingTabViewController parentController, String actionType) {
-		this(mapping, parentController, actionType,null);
+		this(mapping, parentController, actionType, null);
 	}
 
 	public CartActionTypeViewController(Mapping mapping, IMappingTabViewController parentController, String actionType, AbstractActionViewController actionViewController) {
@@ -113,17 +115,21 @@ public class CartActionTypeViewController extends NVC {
 			int currentY = data[1];
 
 			try {
-				List<Action> cartActions = mapping.getActionsForType(actionType);
-				for (Action action : cartActions) {
-					if (CartAction.getX(action) == currentX && CartAction.getY(action) == currentY) {
-						if (actionViewController != null) {
-							cartActionContainer.getChildren().setAll(actionViewController.getParent());
-							cartActionContainer.setVisible(true);
-							actionViewController.setCartAction(action);
-						}
-						parentController.showMapperFor(action);
-					}
+				final List<Action> cartActions = mapping.getActionsForType(actionType).stream()
+						.filter(action -> CartAction.getX(action) == currentX && CartAction.getY(action) == currentY)
+						.collect(Collectors.toList());
+
+				if (cartActions.size() > 1) {
+					throw new IllegalArgumentException("Only one action allowed per pad. Currently " + cartActions.size() + " are registered for pad coordinate " + Arrays.toString(data));
+				}
+
+				final Action action = cartActions.get(0);
+				if (actionViewController != null) {
+					cartActionContainer.getChildren().setAll(actionViewController.getParent());
+					cartActionContainer.setVisible(true);
+					actionViewController.setCartAction(action);
 				}
+				parentController.showMapperFor(action);
 			} catch (NoSuchComponentException e) {
 				Logger.error(e);
 			}
diff --git a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionViewController.java b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionViewController.java
index 737251c6fe259d64d4d058ba20ec9727d250a8cb..e3fe4664112f86babef0a24a3ce16e1f4c1c2159 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/actions/CartActionViewController.java
@@ -1,7 +1,6 @@
 package de.tobias.playpad.viewcontroller.actions;
 
 import de.thecodelabs.midi.action.Action;
-import de.thecodelabs.utils.ui.NVC;
 import de.thecodelabs.utils.util.Localization;
 import de.tobias.playpad.Strings;
 import de.tobias.playpad.action.actions.CartAction;