summaryrefslogtreecommitdiffstats
path: root/generate_fx.py
diff options
context:
space:
mode:
Diffstat (limited to 'generate_fx.py')
-rw-r--r--generate_fx.py922
1 files changed, 0 insertions, 922 deletions
diff --git a/generate_fx.py b/generate_fx.py
deleted file mode 100644
index e6d72c7..0000000
--- a/generate_fx.py
+++ /dev/null
@@ -1,922 +0,0 @@
-#!/usr/bin/env python3
-
-# Template parameters:
-# 1. %*_U% - the !u! identifier for a block.
-# 2. %*_U2% - the & identifier for a block.
-# 3. %ANIMATOR_PARAMETER_NAME% - the name of an animator parameter.
-# 4. %SET_LETTERS_GUID% - the GUID from SetLetters.cs.meta
-# 5. %SERIALIZED_VERSION% - the value of serializedVersion (usually a small int
-# like 0-5)
-# 6. %DEFAULT_GROUP_VAL% - the default value of the group parameters.
-# 8. %DEFAULT_CELL_VAL% - the default value of the cell parameters.
-# 9. %LAYER_NAME% - the name to use for the current animator layer.
-# 10. %LAYER_STATE_MACHINE_U2% - the U2 to use for the current layer's state machine.
-# 11. %TRANSITION_DST_STATE_U2% - in an animatorstatetransition, this specifies
-# where we're transitioning to.
-# 12. %TRANSITION_THRESHOLD% - the threshold to use when transitioning.
-
-from generate_utils import replaceMacros
-from generate_utils import getDummyParam
-from generate_utils import getResize0Param
-from generate_utils import getResize1Param
-from generate_utils import getLayerParam
-from generate_utils import getSelectParam
-from generate_utils import getEnableParam
-from generate_utils import getShaderParam
-from generate_utils import getAnimationPath
-from generate_utils import NUM_LAYERS
-from generate_utils import CHARS_PER_CELL
-
-import generate_utils
-
-# To debug, I recommend setting these values low and manually moving things
-# around in the animator. Then run using Lyuma's avatar 3.0 emulator.
-NUM_LETTERS=80
-
-params = {}
-
-class EvilGlobalState:
- u2_ticker = 0
-state = EvilGlobalState()
-
-def get_u2(class_id, state):
- state.u2_ticker += 1
- return class_id + ("%05d" % (state.u2_ticker))
-
-# These !u! and & numbers are, respectively, a class ID and an instance ID.
-# The instance ID begins with the class ID then has a 5-digit suffix.
-params["ANIMATOR_CONTROLLER_U"] = "91"
-params["ANIMATOR_HEADER_U2"] = "9100000"
-
-params["ANIMATOR_STATE_MACHINE_U"] = "1107"
-
-params["MONO_BEHAVIOUR_U"] = "114"
-
-params["ANIMATOR_STATE_U"] = "1102"
-
-params["ANIMATOR_STATE_TRANSITION_U"] = "1101"
-
-HEADER="""
-%YAML 1.1
-%TAG !u! tag:unity3d.com,2011:
-"""[1:][:-1]
-
-def genHeader():
- return replaceMacros(HEADER, params)
-print(genHeader())
-
-ANIMATOR_HEADER = """
---- !u!%ANIMATOR_CONTROLLER_U% &%ANIMATOR_HEADER_U2%
-AnimatorController:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: TaSTT_fx
- serializedVersion: 5
-"""[1:][:-1]
-
-ANIMATOR_PARAMETER_HEADER = """
- m_AnimatorParameters:
-"""[1:][:-1]
-
-ANIMATOR_PARAMETER_INT = """
- - m_Name: %ANIMATOR_PARAMETER_NAME%
- m_Type: 3
- m_DefaultFloat: 0
- m_DefaultInt: 64
- m_DefaultBool: 0
- m_Controller: {fileID: %ANIMATOR_HEADER_U2%}
-"""[1:][:-1]
-
-ANIMATOR_PARAMETER_BOOL = """
- - m_Name: %ANIMATOR_PARAMETER_NAME%
- m_Type: 4
- m_DefaultFloat: 0
- m_DefaultInt: 0
- m_DefaultBool: 0
- m_Controller: {fileID: %ANIMATOR_HEADER_U2%}
-"""[1:][:-1]
-
-ANIMATOR_LAYER_HEADER = """
- m_AnimatorLayers:
-"""[1:][:-1]
-
-ANIMATOR_LAYER_TASTT = """
- - serializedVersion: 5
- m_Name: %TASTT_LAYER_NAME%
- m_StateMachine: {fileID: %TASTT_LAYER_U2%}
- m_Mask: {fileID: 0}
- m_Motions: []
- m_Behaviours: []
- m_BlendingMode: 0
- m_SyncedLayerIndex: -1
- m_DefaultWeight: 1
- m_IKPass: 0
- m_SyncedLayerAffectsTiming: 0
- m_Controller: {fileID: %ANIMATOR_HEADER_U2%}
-"""[1:][:-1]
-
-def genAnimator(state):
- print(replaceMacros(ANIMATOR_HEADER, params))
- print(ANIMATOR_PARAMETER_HEADER)
-
- params["ANIMATOR_PARAMETER_NAME"] = getDummyParam()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = generate_utils.getResizeEnableParam()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = generate_utils.getResize0Param()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = generate_utils.getResize1Param()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = getEnableParam()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = generate_utils.getHandToggleParam()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = generate_utils.getHipToggleParam()
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- for i in range(0, NUM_LAYERS):
- params["ANIMATOR_PARAMETER_NAME"] = getLayerParam(i)
- print(replaceMacros(ANIMATOR_PARAMETER_INT, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 0)
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 1)
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 2)
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 3)
- print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params))
-
- print(replaceMacros(ANIMATOR_LAYER_HEADER, params))
-
- for i in range(0, NUM_LAYERS):
- params[getLayerParam(i) + "_LAYER_U2"] = get_u2("1107", state)
- params["TASTT_LAYER_U2"] = params[getLayerParam(i) + "_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = getLayerParam(i)
- print(replaceMacros(ANIMATOR_LAYER_TASTT, params))
-
- params["TASTT_HAND_TOGGLE_LAYER_U2"] = get_u2("1107", state)
- params["TASTT_LAYER_U2"] = params["TASTT_HAND_TOGGLE_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = generate_utils.getHandToggleParam()
- print(replaceMacros(ANIMATOR_LAYER_TASTT, params))
-
- params["TASTT_HIP_TOGGLE_LAYER_U2"] = get_u2("1107", state)
- params["TASTT_LAYER_U2"] = params["TASTT_HIP_TOGGLE_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = generate_utils.getHipToggleParam()
- print(replaceMacros(ANIMATOR_LAYER_TASTT, params))
-
- params["TASTT_RESIZE_LAYER_U2"] = get_u2("1107", state)
- params["TASTT_LAYER_U2"] = params["TASTT_RESIZE_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = "TaSTT_Resize"
- print(replaceMacros(ANIMATOR_LAYER_TASTT, params))
-genAnimator(state)
-
-TASTT_LAYER_HEADER = """
---- !u!%ANIMATOR_STATE_MACHINE_U% &%TASTT_LAYER_U2%
-AnimatorStateMachine:
- serializedVersion: 6
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: %TASTT_LAYER_NAME%
- m_ChildStates:
-"""[1:][:-1]
-
-TASTT_LAYER_HEADER_CHILD_STATE = """
- - serializedVersion: 1
- m_State: {fileID: %TASTT_STATE_U2%}
- m_Position: {x: 330, y: -60, z: 0}
-"""[1:][:-1]
-
-TASTT_LAYER_FOOTER = """
- m_ChildStateMachines: []
- m_AnyStateTransitions: []
- m_EntryTransitions: []
- m_StateMachineTransitions: {}
- m_StateMachineBehaviours: []
- m_AnyStatePosition: {x: 50, y: 20, z: 0}
- m_EntryPosition: {x: 50, y: 120, z: 0}
- m_ExitPosition: {x: 800, y: 120, z: 0}
- m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
- m_DefaultState: {fileID: %TASTT_DEFAULT_STATE_U2%}
-"""[1:][:-1]
-
-# State with one transition.
-# Params:
-# %TASTT_STATE_NAME%: the name of this state
-# %TASTT_STATE_TRANSITION_U2%: the U2 of the transition to the next state
-# %TASTT_STATE_TRANSITION_U2%
-TASTT_UNARY_STATE = """
---- !u!%ANIMATOR_STATE_U% &%TASTT_STATE_U2%
-AnimatorState:
- serializedVersion: 6
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: %TASTT_STATE_NAME%
- m_Speed: 1
- m_CycleOffset: 0
- m_Transitions:
- - {fileID: %TASTT_STATE_TRANSITION_U2%}
- m_StateMachineBehaviours: []
- m_Position: {x: 50, y: 50, z: 0}
- m_IKOnFeet: 0
- m_WriteDefaultValues: 0
- m_Mirror: 0
- m_SpeedParameterActive: 0
- m_MirrorParameterActive: 0
- m_CycleOffsetParameterActive: 0
- m_TimeParameterActive: 0
- m_Motion: {fileID: 0}
- m_Tag:
- m_SpeedParameter:
- m_MirrorParameter:
- m_CycleOffsetParameter:
- m_TimeParameter:
-"""[1:][:-1]
-
-# State with two transitions.
-# Params:
-# %TASTT_STATE_NAME%: the name of this state
-# %TASTT_STATE_TRANSITION_0_U2%
-# %TASTT_STATE_TRANSITION_1_U2%
-# %TASTT_STATE_TRANSITION_U2%
-TASTT_BINARY_STATE = """
---- !u!%ANIMATOR_STATE_U% &%TASTT_STATE_U2%
-AnimatorState:
- serializedVersion: 6
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: %TASTT_STATE_NAME%
- m_Speed: 1
- m_CycleOffset: 0
- m_Transitions:
- - {fileID: %TASTT_STATE_TRANSITION_0_U2%}
- - {fileID: %TASTT_STATE_TRANSITION_1_U2%}
- m_StateMachineBehaviours: []
- m_Position: {x: 50, y: 50, z: 0}
- m_IKOnFeet: 0
- m_WriteDefaultValues: 0
- m_Mirror: 0
- m_SpeedParameterActive: 0
- m_MirrorParameterActive: 0
- m_CycleOffsetParameterActive: 0
- m_TimeParameterActive: 0
- m_Motion: {fileID: 0}
- m_Tag:
- m_SpeedParameter:
- m_MirrorParameter:
- m_CycleOffsetParameter:
- m_TimeParameter:
-"""[1:][:-1]
-
-TASTT_NARY_STATE_HEADER = """
---- !u!%ANIMATOR_STATE_U% &%TASTT_STATE_U2%
-AnimatorState:
- serializedVersion: 6
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: %TASTT_STATE_NAME%
- m_Speed: 1
- m_CycleOffset: 0
- m_Transitions:
-"""[1:][:-1]
-
-TASTT_NARY_STATE_HEADER_TRANSITION = """
- - {fileID: %TASTT_STATE_TRANSITION_U2%}
-"""[1:][:-1]
-
-TASTT_NARY_STATE_FOOTER = """
- m_StateMachineBehaviours: []
- m_Position: {x: 50, y: 50, z: 0}
- m_IKOnFeet: 0
- m_WriteDefaultValues: 0
- m_Mirror: 0
- m_SpeedParameterActive: 0
- m_MirrorParameterActive: 0
- m_CycleOffsetParameterActive: 0
- m_TimeParameterActive: 0
- m_Motion: {fileID: 0}
- m_Tag:
- m_SpeedParameter:
- m_MirrorParameter:
- m_CycleOffsetParameter:
- m_TimeParameter:
-"""[1:][:-1]
-
-# Transition from TaSTT_Do_nothing. to TaSTT_Active.
-# Params:
-# %BOOL_PARAM% - the name of the parameter to branch on
-# %THRESHOLD% - the condition to branch on (1 == true)
-# %TASTT_ACTIVE_STATE_TRANSITION_U2%
-# %TASTT_ROW_STATE_U2% - address of row state we're transitioning to
-# A bizarre quirk: when branching false, m_ConditionMode = 2; else
-# m_ConditionMode = 1.
-TASTT_BOOL_STATE_UNARY_TRANSITION = """
---- !u!1101 &%TASTT_STATE_TRANSITION_U2%
-AnimatorStateTransition:
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name:
- m_Conditions:
- - m_ConditionMode: %MODE%
- m_ConditionEvent: %BOOL_PARAM%
- m_EventTreshold: %THRESHOLD%
- m_DstStateMachine: {fileID: 0}
- m_DstState: {fileID: %DST_STATE_U2%}
- m_Solo: 0
- m_Mute: 0
- m_IsExit: 0
- serializedVersion: 3
- m_TransitionDuration: 0
- m_TransitionOffset: 0
- m_ExitTime: 1
- m_HasExitTime: 0
- m_HasFixedDuration: 1
- m_InterruptionSource: 0
- m_OrderedInterruption: 1
- m_CanTransitionToSelf: 1
-"""[1:][:-1]
-
-TASTT_BOOL_STATE_BINARY_TRANSITION = """
---- !u!1101 &%TASTT_STATE_TRANSITION_U2%
-AnimatorStateTransition:
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name:
- m_Conditions:
- - m_ConditionMode: %MODE0%
- m_ConditionEvent: %BOOL_PARAM0%
- m_EventTreshold: %THRESHOLD0%
- - m_ConditionMode: %MODE1%
- m_ConditionEvent: %BOOL_PARAM1%
- m_EventTreshold: %THRESHOLD1%
- m_DstStateMachine: {fileID: 0}
- m_DstState: {fileID: %DST_STATE_U2%}
- m_Solo: 0
- m_Mute: 0
- m_IsExit: 0
- serializedVersion: 3
- m_TransitionDuration: 0.5
- m_TransitionOffset: 0
- m_ExitTime: 1
- m_HasExitTime: 0
- m_HasFixedDuration: 1
- m_InterruptionSource: 0
- m_OrderedInterruption: 1
- m_CanTransitionToSelf: 1
-"""[1:][:-1]
-
-TASTT_INT_STATE_TRANSITION = """
---- !u!1101 &%TASTT_STATE_TRANSITION_U2%
-AnimatorStateTransition:
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name:
- m_Conditions:
- - m_ConditionMode: 6
- m_ConditionEvent: %INT_PARAM%
- m_EventTreshold: %TRANSITION_THRESHOLD%
- m_DstStateMachine: {fileID: 0}
- m_DstState: {fileID: %DST_STATE_U2%}
- m_Solo: 0
- m_Mute: 0
- m_IsExit: 0
- serializedVersion: 3
- m_TransitionDuration: 0
- m_TransitionOffset: 0
- m_ExitTime: 1
- m_HasExitTime: 0
- m_HasFixedDuration: 1
- m_InterruptionSource: 0
- m_OrderedInterruption: 1
- m_CanTransitionToSelf: 1
-"""[1:][:-1]
-
-# State reached after TaSTT_Row*_Col*.
-# One transition back up to TaSTT_Do_Nothing.
-# Params:
-# %TASTT_STATE_NAME%: TaSTT_Row[0-9][0-9]_Col[0-9][0-9]_Letter[0-9][0-9][0-9]
-# %TASTT_ANIM_GUID%: GUID of the animation to play
-# %TASTT_RESTART_TRANSITION_U2%: U2 of transition back to
-# TaSTT_Do_Nothing.
-TASTT_ANIM_STATE = """
---- !u!1102 &%TASTT_STATE_U2%
-AnimatorState:
- serializedVersion: 6
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name: %TASTT_STATE_NAME%
- m_Speed: 1
- m_CycleOffset: 0
- m_Transitions:
- - {fileID: %TASTT_STATE_TRANSITION_U2%}
- m_StateMachineBehaviours: []
- m_Position: {x: 50, y: 50, z: 0}
- m_IKOnFeet: 0
- m_WriteDefaultValues: 0
- m_Mirror: 0
- m_SpeedParameterActive: 0
- m_MirrorParameterActive: 0
- m_CycleOffsetParameterActive: 0
- m_TimeParameterActive: 0
- m_Motion: {fileID: 7400000, guid: %TASTT_ANIM_GUID%, type: 2}
- m_Tag:
- m_SpeedParameter:
- m_MirrorParameter:
- m_CycleOffsetParameter:
- m_TimeParameter:
-"""[1:][:-1]
-
-TASTT_RESTART_TRANSITION = """
---- !u!1101 &%TASTT_RESTART_TRANSITION_U2%
-AnimatorStateTransition:
- m_ObjectHideFlags: 1
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_Name:
- m_Conditions:
- - m_ConditionMode: 2
- m_ConditionEvent: TaSTT_Dummy
- m_EventTreshold: 0
- m_DstStateMachine: {fileID: 0}
- m_DstState: {fileID: %TASTT_DEFAULT_STATE_U2%}
- m_Solo: 0
- m_Mute: 0
- m_IsExit: 0
- serializedVersion: 3
- m_TransitionDuration: 0
- m_TransitionOffset: 0
- m_ExitTime: 1
- m_HasExitTime: 0
- m_HasFixedDuration: 1
- m_InterruptionSource: 0
- m_OrderedInterruption: 1
- m_CanTransitionToSelf: 1
-"""[1:][:-1]
-
-def getAnimationGuid(anim_meta_filename):
- with open(anim_meta_filename, 'r') as f:
- for line in f:
- if "guid" in line:
- return line.split()[1]
-
-def getDefaultStateName(which_layer):
- return "TaSTT_L%02d_Do_Nothing" % which_layer
-
-def getDefaultStateNameResizeLayer():
- return "TaSTT_Resize_Do_Nothing"
-
-def getActiveStateName(which_layer):
- return "TaSTT_L%02d_Active" % which_layer
-
-def getS0StateName(which_layer, s0):
- return "TaSTT_L%02d_S%02d" % (which_layer, s0)
-
-def getS1StateName(which_layer, s0, s1):
- return "TaSTT_L%02d_S%02d_S%02d" % (which_layer, s0, s1)
-
-def getS2StateName(which_layer, s0, s1, s2):
- return "TaSTT_L%02d_S%02d_S%02d_S%02d" % (which_layer, s0, s1, s2)
-
-def getS3StateName(which_layer, s0, s1, s2, s3):
- return "TaSTT_L%02d_S%02d_S%02d_S%02d_S%02d" % (which_layer, s0, s1, s2, s3)
-
-def getLetterStateName(which_layer, s0, s1, s2, s3, letter):
- return "TaSTT_L%02d_S%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, s3, letter)
-
-def getResizeStateName(e0, e1):
- return "TaSTT_Resize_E%d_E%d" % (e0, e1)
-
-def getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter):
- return "TASTT_RETURN_HOME_TRANSITION_L%02d_S%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, s3, letter)
-
-def getReturnHomeTransitionNameResizeLayer(e0, e1):
- return "TASTT_RETURN_HOME_TRANSITION_E%d_E%d" % (e0, e1)
-
-def genTasttLayer(state, which_layer):
- # Default state.
- params["TASTT_DEFAULT_STATE_U2"] = get_u2("1102", state)
- params["TASTT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- params["TASTT_STATE_NAME"] = getDefaultStateName(which_layer)
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- anim_meta_filename = "Animations/TaSTT_Do_Nothing.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Active state transition.
- params["BOOL_PARAM"] = getEnableParam()
- params["THRESHOLD"] = str(1)
- params["MODE"] = str(1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["ACTIVE_STATE_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params["ACTIVE_STATE_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Active state.
- params["TASTT_STATE_U2"] = params["ACTIVE_STATE_U2"]
- params["TASTT_STATE_NAME"] = getActiveStateName(which_layer)
- params[getS0StateName(which_layer, 0) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_0_U2"] = params[getS0StateName(which_layer, 0) + "_TRANSITION_U2"]
- params[getS0StateName(which_layer, 1) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_1_U2"] = params[getS0StateName(which_layer, 1) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_BINARY_STATE, params))
-
- # S0 state transition.
- for s0 in range(0,2):
- params["TASTT_STATE_TRANSITION_U2"] = params[getS0StateName(which_layer, s0) + "_TRANSITION_U2"]
- params["BOOL_PARAM"] = getSelectParam(which_layer, 0)
- params["THRESHOLD"] = str(s0)
- params["MODE"] = str(2 - s0) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params[getS0StateName(which_layer, s0) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getS0StateName(which_layer, s0) + "_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # S0 state.
- for s0 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS0StateName(which_layer, s0) + "_U2"]
- params["TASTT_STATE_NAME"] = getS0StateName(which_layer, s0)
- params[getS1StateName(which_layer, s0, 0) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_0_U2"] = params[getS1StateName(which_layer, s0, 0) + "_TRANSITION_U2"]
- params[getS1StateName(which_layer, s0, 1) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_1_U2"] = params[getS1StateName(which_layer, s0, 1) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_BINARY_STATE, params))
-
- # S1 state transition.
- for s0 in range(0,2):
- for s1 in range(0,2):
- params["TASTT_STATE_TRANSITION_U2"] = params[getS1StateName(which_layer, s0, s1) + "_TRANSITION_U2"]
- params["BOOL_PARAM"] = getSelectParam(which_layer, 1)
- params["THRESHOLD"] = str(s1)
- params["MODE"] = str(2 - s1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params[getS1StateName(which_layer, s0, s1) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getS1StateName(which_layer, s0, s1) + "_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # S1 state.
- for s0 in range(0,2):
- for s1 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS1StateName(which_layer, s0, s1) + "_U2"]
- params["TASTT_STATE_NAME"] = getS1StateName(which_layer, s0, s1)
- params[getS2StateName(which_layer, s0, s1, 0) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_0_U2"] = params[getS2StateName(which_layer, s0, s1, 0) + "_TRANSITION_U2"]
- params[getS2StateName(which_layer, s0, s1, 1) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_1_U2"] = params[getS2StateName(which_layer, s0, s1, 1) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_BINARY_STATE, params))
-
- # S2 state transition.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- params["TASTT_STATE_TRANSITION_U2"] = params[getS2StateName(which_layer, s0, s1, s2) + "_TRANSITION_U2"]
- params["BOOL_PARAM"] = getSelectParam(which_layer, 2)
- params["THRESHOLD"] = str(s2)
- params["MODE"] = str(2 - s2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params[getS2StateName(which_layer, s0, s1, s2) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getS2StateName(which_layer, s0, s1, s2) + "_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # S2 state.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS2StateName(which_layer, s0, s1, s2) + "_U2"]
- params["TASTT_STATE_NAME"] = getS2StateName(which_layer, s0, s1, s2)
- params[getS3StateName(which_layer, s0, s1, s2, 0) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_0_U2"] = params[getS3StateName(which_layer, s0, s1, s2, 0) + "_TRANSITION_U2"]
- params[getS3StateName(which_layer, s0, s1, s2, 1) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_1_U2"] = params[getS3StateName(which_layer, s0, s1, s2, 1) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_BINARY_STATE, params))
-
- # S3 state transition.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- params["TASTT_STATE_TRANSITION_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_TRANSITION_U2"]
- params["BOOL_PARAM"] = getSelectParam(which_layer, 3)
- params["THRESHOLD"] = str(s3)
- params["MODE"] = str(2 - s3) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # S3 state.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"]
- params["TASTT_STATE_NAME"] = getS3StateName(which_layer, s0, s1, s2, s3)
- print(replaceMacros(TASTT_NARY_STATE_HEADER, params))
- for letter in range(0, CHARS_PER_CELL):
- params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_NARY_STATE_HEADER_TRANSITION, params))
- print(replaceMacros(TASTT_NARY_STATE_FOOTER, params))
-
- # Letter state transition.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- for letter in range(0, CHARS_PER_CELL):
- params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"]
- params["INT_PARAM"] = getLayerParam(which_layer)
- params["TRANSITION_THRESHOLD"] = str(letter)
- params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"]
- print(replaceMacros(TASTT_INT_STATE_TRANSITION, params))
-
- # Letter state.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- for letter in range(0, CHARS_PER_CELL):
- params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"]
- params["TASTT_STATE_NAME"] = getLetterStateName(which_layer, s0, s1, s2, s3, letter)
- transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter) + "_U2"
- params[transition_name] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_U2"] = params[transition_name]
- anim_meta_filename = getAnimationPath(getShaderParam(which_layer, s0, s1, s2, s3), letter) + ".meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Return-home transitions.
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- for letter in range(0, CHARS_PER_CELL):
- transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter) + "_U2"
- params["TASTT_STATE_TRANSITION_U2"] = params[transition_name]
- params["BOOL_PARAM"] = getDummyParam()
- params["THRESHOLD"] = str(0)
- params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["DST_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # TaSTT layer.
- params["TASTT_LAYER_U2"] = params[getLayerParam(which_layer) + "_LAYER_U2"]
-
- params["TASTT_LAYER_NAME"] = getLayerParam(which_layer)
- print(replaceMacros(TASTT_LAYER_HEADER, params))
-
- params["TASTT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- params["TASTT_STATE_U2"] = params["ACTIVE_STATE_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- for s0 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS0StateName(which_layer, s0) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- for s0 in range(0,2):
- for s1 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS1StateName(which_layer, s0, s1) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS2StateName(which_layer, s0, s1, s2) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- params["TASTT_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- for s0 in range(0,2):
- for s1 in range(0,2):
- for s2 in range(0,2):
- for s3 in range(0,2):
- for letter in range(0, CHARS_PER_CELL):
- params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- params["TASTT_DEFAULT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- print(replaceMacros(TASTT_LAYER_FOOTER, params))
-
-for i in range(0, NUM_LAYERS):
- genTasttLayer(state, i)
-
-def genTasttResizeLayer(state):
- # Default state.
- params["TASTT_DEFAULT_STATE_U2"] = get_u2("1102", state)
- params["TASTT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- params["TASTT_STATE_NAME"] = getDefaultStateNameResizeLayer()
- anim_meta_filename = "Animations/TaSTT_Do_Nothing.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Active state transition.
- params["BOOL_PARAM"] = generate_utils.getResizeEnableParam()
- params["THRESHOLD"] = str(1)
- params["MODE"] = str(1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["ACTIVE_STATE_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params["ACTIVE_STATE_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Active state.
- params["TASTT_STATE_U2"] = params["ACTIVE_STATE_U2"]
- params["TASTT_STATE_NAME"] = "TaSTT_Resize_Enabled"
- print(replaceMacros(TASTT_NARY_STATE_HEADER, params))
-
- for e0 in range(0, 2):
- for e1 in range(0, 2):
- params[getResizeStateName(e0, e1) + "_TRANSITION_U2"] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_U2"] = params[getResizeStateName(e0, e1) + "_TRANSITION_U2"]
- print(replaceMacros(TASTT_NARY_STATE_HEADER_TRANSITION, params))
-
- print(replaceMacros(TASTT_NARY_STATE_FOOTER, params))
-
- # Animation transitions.
- for e0 in range(0, 2):
- params["THRESHOLD0"] = str(e0)
- params["BOOL_PARAM0"] = generate_utils.getResize0Param()
- params["MODE0"] = str(2 - e0) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- for e1 in range(0, 2):
- params["THRESHOLD1"] = str(e1)
- params["BOOL_PARAM1"] = generate_utils.getResize1Param()
- params["MODE1"] = str(2 - e1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
-
- params["TASTT_STATE_TRANSITION_U2"] = params[getResizeStateName(e0, e1) + "_TRANSITION_U2"]
-
- params[getResizeStateName(e0, e1) + "_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params[getResizeStateName(e0, e1) + "_U2"]
-
- print(replaceMacros(TASTT_BOOL_STATE_BINARY_TRANSITION, params))
-
- # Animation states.
- for e0 in range(0, 2):
- for e1 in range(0, 2):
- params["TASTT_STATE_NAME"] = getResizeStateName(e0, e1)
- params["TASTT_STATE_U2"] = params[getResizeStateName(e0, e1) + "_U2"]
- transition_name = getReturnHomeTransitionNameResizeLayer(e0, e1) + "_U2"
- params[transition_name] = get_u2("1101", state)
- params["TASTT_STATE_TRANSITION_U2"] = params[transition_name]
- anim_meta_filename="Animations/"
- if e0 == 0 and e1 == 0:
- anim_meta_filename += "TaSTT_Backplate_Resize_00_to_50.anim.meta"
- elif e0 == 0 and e1 == 1:
- anim_meta_filename += "TaSTT_Backplate_Resize_50_to_100.anim.meta"
- elif e0 == 1 and e1 == 0:
- anim_meta_filename += "TaSTT_Backplate_Resize_100_to_50.anim.meta"
- elif e0 == 1 and e1 == 1:
- anim_meta_filename += "TaSTT_Backplate_Resize_50_to_00.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Generate return-home transitions
- for e0 in range(0, 2):
- for e1 in range(0, 2):
- transition_name = getReturnHomeTransitionNameResizeLayer(e0, e1) + "_U2"
- params["TASTT_STATE_TRANSITION_U2"] = params[transition_name]
- params["BOOL_PARAM"] = getDummyParam()
- params["THRESHOLD"] = str(0)
- params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["DST_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Layer
- params["TASTT_LAYER_U2"] = params["TASTT_RESIZE_LAYER_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER, params))
-
- params["TASTT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
- params["TASTT_STATE_U2"] = params["ACTIVE_STATE_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
- for e0 in range(0, 2):
- for e1 in range(0, 2):
- params["TASTT_STATE_U2"] = params[getResizeStateName(e0, e1) + "_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
- print(replaceMacros(TASTT_LAYER_FOOTER, params))
-
-genTasttResizeLayer(state)
-
-def genTasttHipToggleLayer(state):
- # Default state.
- params["TASTT_HIP_TOGGLE_ON_U2"] = get_u2("1102", state)
- params["TASTT_DEFAULT_STATE_U2"] = params["TASTT_HIP_TOGGLE_ON_U2"]
- params["TASTT_STATE_U2"] = params["TASTT_HIP_TOGGLE_ON_U2"]
- params["TASTT_STATE_NAME"] = generate_utils.getHipToggleParam() + "_ON"
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- anim_meta_filename = "Animations/TaSTT_Lock_World_Enable.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Active state transition.
- params["BOOL_PARAM"] = generate_utils.getHipToggleParam()
- params["THRESHOLD"] = str(0)
- params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["TASTT_HIP_TOGGLE_OFF_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params["TASTT_HIP_TOGGLE_OFF_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Active state.
- params["TASTT_STATE_U2"] = params["TASTT_HIP_TOGGLE_OFF_U2"]
- params["TASTT_STATE_NAME"] = generate_utils.getHipToggleParam() + "_OFF"
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- anim_meta_filename = "Animations/TaSTT_Lock_World_Disable.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Default state transition.
- params["BOOL_PARAM"] = generate_utils.getHipToggleParam()
- params["THRESHOLD"] = str(1)
- params["MODE"] = str(1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["DST_STATE_U2"] = params["TASTT_HIP_TOGGLE_ON_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Layer
- params["TASTT_LAYER_U2"] = params["TASTT_HIP_TOGGLE_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = generate_utils.getHipToggleParam()
- print(replaceMacros(TASTT_LAYER_HEADER, params))
-
- params["TASTT_STATE_U2"] = params["TASTT_HIP_TOGGLE_ON_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
- params["TASTT_STATE_U2"] = params["TASTT_HIP_TOGGLE_OFF_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- print(replaceMacros(TASTT_LAYER_FOOTER, params))
-
-genTasttHipToggleLayer(state)
-
-def genTasttHandToggleLayer(state):
- # Default state.
- params["TASTT_HAND_TOGGLE_ON_U2"] = get_u2("1102", state)
- params["TASTT_DEFAULT_STATE_U2"] = params["TASTT_HAND_TOGGLE_ON_U2"]
- params["TASTT_STATE_U2"] = params["TASTT_HAND_TOGGLE_ON_U2"]
- params["TASTT_STATE_NAME"] = generate_utils.getHandToggleParam() + "_ON"
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- anim_meta_filename = "Animations/TaSTT_Lock_Hand_Enable.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Active state transition.
- params["BOOL_PARAM"] = generate_utils.getHandToggleParam()
- params["THRESHOLD"] = str(0)
- params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["TASTT_HAND_TOGGLE_OFF_U2"] = get_u2("1102", state)
- params["DST_STATE_U2"] = params["TASTT_HAND_TOGGLE_OFF_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Active state.
- params["TASTT_STATE_U2"] = params["TASTT_HAND_TOGGLE_OFF_U2"]
- params["TASTT_STATE_NAME"] = generate_utils.getHandToggleParam() + "_OFF"
- params["TASTT_STATE_TRANSITION_U2"] = get_u2("1101", state)
- anim_meta_filename = "Animations/TaSTT_Lock_Hand_Disable.anim.meta"
- params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename)
- print(replaceMacros(TASTT_ANIM_STATE, params))
-
- # Default state transition.
- params["BOOL_PARAM"] = generate_utils.getHandToggleParam()
- params["THRESHOLD"] = str(1)
- params["MODE"] = str(1) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION.
- params["DST_STATE_U2"] = params["TASTT_HAND_TOGGLE_ON_U2"]
- print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params))
-
- # Layer
- params["TASTT_LAYER_U2"] = params["TASTT_HAND_TOGGLE_LAYER_U2"]
- params["TASTT_LAYER_NAME"] = generate_utils.getHandToggleParam()
- print(replaceMacros(TASTT_LAYER_HEADER, params))
-
- params["TASTT_STATE_U2"] = params["TASTT_HAND_TOGGLE_ON_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
- params["TASTT_STATE_U2"] = params["TASTT_HAND_TOGGLE_OFF_U2"]
- print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params))
-
- print(replaceMacros(TASTT_LAYER_FOOTER, params))
-
-genTasttHandToggleLayer(state)