# InvalidOperationException: Cannot enable action map 'Gameplay' because it is already enabled

- **ID:** `unity/input-system-action-map-conflict`
- **Domain:** unity
- **Category:** runtime_error
- **Verification:** ai_generated
- **Fix Rate:** 93%

## Root Cause

Calling Enable() on an InputActionMap that is already enabled without first disabling it, causing a state conflict.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 1.5.0 | active | — | — |
| 1.6.0 | active | — | — |
| 1.4.4 | active | — | — |

## Workarounds

1. **Check if action map is already enabled before enabling: if (!inputActionAsset.FindActionMap("Gameplay").enabled) { inputActionAsset.FindActionMap("Gameplay").Enable(); }** (95% success)
   ```
   Check if action map is already enabled before enabling: if (!inputActionAsset.FindActionMap("Gameplay").enabled) { inputActionAsset.FindActionMap("Gameplay").Enable(); }
   ```
2. **Use a flag to track state: private bool gameplayEnabled; void EnableGameplay() { if (!gameplayEnabled) { inputActionAsset.FindActionMap("Gameplay").Enable(); gameplayEnabled = true; } }** (90% success)
   ```
   Use a flag to track state: private bool gameplayEnabled; void EnableGameplay() { if (!gameplayEnabled) { inputActionAsset.FindActionMap("Gameplay").Enable(); gameplayEnabled = true; } }
   ```

## Dead Ends

- **Calling Enable() multiple times in Update() without check** — Repeats the same error; no guard against double-enable. (90% fail)
- **Disabling and re-enabling in same frame** — If not properly sequenced, still throws error; better to check enabled state. (50% fail)
