summaryrefslogtreecommitdiffstats
path: root/libtastt.py
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2022-10-24 23:08:11 -0700
committeryum <yum.food.vr@gmail.com>2022-10-24 23:13:47 -0700
commit0102b725f60c91ca6d095c2b04de71db6d5b1fda (patch)
treec87c84ad4f48577e90307ca2f2bf40baa18b6950 /libtastt.py
parent08655f96dc798e3e129058a5e97c5aa7ff96e798 (diff)
Saying the word "clear" clears the board
While the board is clearing, you can keep talking, and it will be rendered when the board finishes clearing. * bugfix: STT only beeps when it's out
Diffstat (limited to 'libtastt.py')
-rw-r--r--libtastt.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/libtastt.py b/libtastt.py
index 12c95f0..e12f93f 100644
--- a/libtastt.py
+++ b/libtastt.py
@@ -337,11 +337,14 @@ def generateFXLayer(which_layer: int, anim: libunity.UnityAnimator, layer:
# Generic toggle adding utility.
# Generates the layer and parameter.
+# Returns a map containing the off and on states, as well as the
+# transitions between them.
def generateToggle(layer_name: str,
gen_anim_dir: str,
off_anim_basename: str,
on_anim_basename: str,
- anim: libunity.UnityAnimator):
+ anim: libunity.UnityAnimator) -> typing.Dict[str,
+ libunity.UnityDocument]:
layer = anim.addLayer(layer_name)
# For simplicity, use the layer name as the parameter name.
@@ -370,7 +373,13 @@ def generateToggle(layer_name: str,
anim.addTransitionBooleanCondition(on_state,
on_to_off_trans, parameter_name, False)
- pass
+ result = {}
+ result["off"] = off_state
+ result["on"] = on_state
+ result["off_to_on"] = off_to_on_trans
+ result["on_to_off"] = on_to_off_trans
+
+ return result
def generateFX(guid_map, gen_anim_dir):
anim = libunity.UnityAnimator()
@@ -382,11 +391,16 @@ def generateFX(guid_map, gen_anim_dir):
print("Generating layer {}/{}".format(which_layer, len(layers.items())), file=sys.stderr)
generateFXLayer(which_layer, anim, layer, gen_anim_dir)
- generateToggle(generate_utils.getSpeechNoiseToggleParam(),
+ states = generateToggle(
+ generate_utils.getSpeechNoiseToggleParam(),
"Animations/",
"TaSTT_Speech_Noise_Off.anim",
"TaSTT_Speech_Noise_On.anim",
anim)
+ # Enable beeping only if board is out.
+ anim.addTransitionBooleanCondition(states["off"],
+ states["off_to_on"], generate_utils.getToggleParam(), True)
+
generateToggle(generate_utils.getToggleParam(),
"Animations/",
"TaSTT_Toggle_Off.anim",