> For the complete documentation index, see [llms.txt](https://docs.yarnspinner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yarnspinner.dev/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition.md).

# Condition

Enum in [BasicBlock](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock.md)

Inherits from `System.Enum`

## Summary

The conditions under which a [Destination](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.destination.md) may be reached at the end of a BasicBlock.

```csharp
public enum Condition
{
    Fallthrough,
    DirectJump,
    ExpressionIsTrue,
    ExpressionIsFalse,
    Option
}
```

## Members

| Name                                                                                                                                                                   | Description                                                                                                                                                    |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [DirectJump](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition/yarn.compiler.basicblock.condition.directjump.md)               | The Destination is reached beacuse of an explicit instruction to go to this block.                                                                             |
| [ExpressionIsFalse](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition/yarn.compiler.basicblock.condition.expressionisfalse.md) | The Destination is reached because an expression evaluated to false.                                                                                           |
| [ExpressionIsTrue](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition/yarn.compiler.basicblock.condition.expressionistrue.md)   | The Destination is reached because an expression evaluated to true.                                                                                            |
| [Fallthrough](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition/yarn.compiler.basicblock.condition.fallthrough.md)             | The Destination is reached because the preceding BasicBlock reached the end of its execution, and the Destination's target is the block immediately following. |
| [Option](/2.3/api/csharp/yarn.compiler/yarn.compiler.basicblock/yarn.compiler.basicblock.condition/yarn.compiler.basicblock.condition.option.md)                       | The Destination is reached because the player made an in-game choice to go to it.                                                                              |
