public static InputActionMap AddActionMap(this InputActionAsset asset, string name) { if (asset == null) { throw new ArgumentNullException(nameof(asset)); } if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException(nameof(name)); } var map = new InputActionMap(name); map.GenerateId(); asset.AddActionMap(map); return(map); }
/// <summary> /// Create an action map with the given name and add it to the asset. /// </summary> /// <param name="asset">Asset to add the action map to</param> /// <param name="name">Name to assign to the </param> /// <returns>The newly added action map.</returns> /// <exception cref="ArgumentNullException"><paramref name="asset"/> is <c>null</c> or /// <exception cref="InvalidOperationException">An action map with the given <paramref name="name"/> /// already exists in <paramref name="asset"/>.</exception> /// <paramref name="name"/> is <c>null</c> or empty.</exception> public static InputActionMap AddActionMap(this InputActionAsset asset, string name) { if (asset == null) { throw new ArgumentNullException(nameof(asset)); } if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException(nameof(name)); } if (asset.FindActionMap(name) != null) { throw new InvalidOperationException( $"An action map called '{name}' already exists in the asset"); } var map = new InputActionMap(name); map.GenerateId(); asset.AddActionMap(map); return(map); }