I am developing a Windows game engine that will let you create Ace Attorney games (Phoenix Wright style, not Investigations).
I have finished developing the data entry parts (Evidence, Profiles, Animations...), and now I am going to create the Scene Editor.
With this editor, you can create Courtroom scenes.
I am having a particular game-flow design problem here: "choice branches". Basically, the player can select an option from many, and something will happen depending on the choice.
How would you design such thing? I have no problems creating a linear flow (action,action,action...), but things like cross-examination or chatting involve branching from your choices (action, IF did something, do this, IF did something else, do that...)
What would be the most efficient mechanism to organize such branches for my design in the simplest way for the user to understand - I don't want to make it too complex for the user to make a game with the engine.

