The last adventure game we developed using the Wintermute Engine. For setting up my conversation options (called responses in Wintermute) I scripted something like this:
if(Auftrag_GarnHolen && !Fertig_GarnHolen && !Game.IsItemTaken("Garn")) Game.AddResponse(0, "/emma0021/Ich brauche etwas Garn.");
if(Auftrag_BootBauen && !Fertig_BootBauen && !Fertig_ReisszweckenHolen) Game.AddResponse(1, "/emma0022/Ich brauche Reißzwecken.");
if(!Game.IsItemTaken("Chili") && !Chili_InSuppe) Game.AddResponse(2, "/emma0023/Ich hätte gern etwas von dem Chili-Gewürz.");
if(!Game.IsItemTaken("Marmelade") && !Sprengstoff_Marmelade) Game.AddResponse(3, "/emma0024/Ich hätte gern ein Glas Marmelade.");
if(Komakelle_Gelesen && !Game.IsItemTaken("Vogelbet")) Game.AddResponse(4, "/emma0025/Ich brauche etwas von dem Vogelbetäubungsmittel.");
Game.AddResponse(5, "/emma0026/Ich glaube ich brauche eigentlich gar nichts.");
I rebuilt the same options setup using AC now and I came up with this:
I think that there is often a demand to set up dialogue options based on certain conditions that have to be met to be displayed. I'm thinking about an action, maybe called "Dialogue: Toggle option conditioned", that would let you choose a conversation and an option like the "Dialogue: Toggle option" action does, but additionaly let you define a number of conditions (variables) that all have to be in a defined state to toggle this option to on. If one condition is not met, the option would be toggled off by default.
I don't know if others would find this usefull too or if I just did a wrong approach on this. I would try to code a custom action for this, but that would take me some time to get myself into Unity and AC scripts.
Comments