# SetComponentEnabled

> Records a command to enable or disable a ComponentType on the specified Entity. This operation does not cause a structural change, or affect the value of the component. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule

## SetComponentEnabled\<T>(int, Entity, bool)

Records a command to enable or disable a [ComponentType](/engine/7000.0/script-reference/unity/entities/componenttype.md) on the specified [Entity](/engine/7000.0/script-reference/unity/entities/entity.md). This operation does not cause a structural change, or affect the value of the component. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component.

```csharp
public void SetComponentEnabled<T>(int sortKey, Entity e, bool value) where T : struct, IEnableableComponent
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): A unique index for each set of commands added to this EntityCommandBuffer across all parallel jobs writing commands to this buffer. The [ChunkIndexInQuery](/engine/7000.0/script-reference/unity/entities/chunkindexinquery.md) provided by [IJobEntity](/engine/7000.0/script-reference/unity/entities/ijobentity.md) is an appropriate value to use for this parameter. In an [IJobChunk](/engine/7000.0/script-reference/unity/entities/ijobchunk.md) pass the 'unfilteredChunkIndex' value from IJobChunk.Execute.**** (\[Entity]\(/engine/7000.0/script-reference/unity/entities/entity)): The entity whose component should be enabled or disabled.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): True if the specified component should be enabled, or false if it should be disabled.

### Remarks

At playback, this command throws an error if this entity is destroyed before playback, if the entity has the [Prefab](/engine/7000.0/script-reference/unity/entities/prefab.md) tag, or if the entity doesn't have the component type.

## SetComponentEnabled(int, Entity, ComponentType, bool)

Records a command to enable or disable a [ComponentType](/engine/7000.0/script-reference/unity/entities/componenttype.md) on the specified [Entity](/engine/7000.0/script-reference/unity/entities/entity.md). This operation does not cause a structural change, or affect the value of the component. For the purposes of EntityQuery matching, an entity with a disabled component will behave as if it does not have that component.

```csharp
public void SetComponentEnabled(int sortKey, Entity e, ComponentType componentType, bool value)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): A unique index for each set of commands added to this EntityCommandBuffer across all parallel jobs writing commands to this buffer. The [ChunkIndexInQuery](/engine/7000.0/script-reference/unity/entities/chunkindexinquery.md) provided by [IJobEntity](/engine/7000.0/script-reference/unity/entities/ijobentity.md) is an appropriate value to use for this parameter. In an [IJobChunk](/engine/7000.0/script-reference/unity/entities/ijobchunk.md) pass the 'unfilteredChunkIndex' value from IJobChunk.Execute.**** (\[Entity]\(/engine/7000.0/script-reference/unity/entities/entity)): The entity whose component should be enabled or disabled.**** (\[ComponentType]\(/engine/7000.0/script-reference/unity/entities/componenttype)): The component type to enable or disable. This type must implement the [IEnableableComponent](/engine/7000.0/script-reference/unity/entities/ienableablecomponent.md) interface.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): True if the specified component should be enabled, or false if it should be disabled.

### Remarks

At playback, this command throws an error if this entity is destroyed before playback, if the entity has the [Prefab](/engine/7000.0/script-reference/unity/entities/prefab.md) tag, or if the entity doesn't have the component type.
