Some dialogues might need more or less agents than others. Make sure that we actually only load those agents that have a role after initiation of the DAF dialogue.
This was implemented in ecb5a8cf50205bbc3df7dcf06d1f2072412daa2c
What I ended up doing:
In the unity scene we have various UMA agents with a certain bml_name/identifier (e.g. COUCH_M_1).
In Flipper, we configure which identifiers are mapped 1:1 to DAF actors (e.g. Francois), this is configured globally for all dialogues.
Unity gets periodic status messages telling us which actors are in the ongoing dialogue, so we simply hide UMA agents that are not mentioned and show those that are.
I quickly tested this by just adding some unused UMA agents in the scene -> they get hidden.
To test this for real, we need the following:
two different dialogues in DAF, each with a different set of actors (@marksnaith )
the topic selection engine switches between these two dialogues (@tbeinema )
check whether flipper correctly deals with un-initialised actors when loading a new, second dialogue (it works at least with the first dialogue) (@DanielPD )
Some dialogues might need more or less agents than others. Make sure that we actually only load those agents that have a role after initiation of the DAF dialogue.