"Plays a usfxr synth sound. Use the usfxr editor [Tools > Fungus > Utilities > Generate usfxr Sound Effects] to create the SettingsString. Set a ParentTransform if using positional sound. See https://github.com/zeh/usfxr for more information about usfxr.")]
[AddComponentMenu("")]
[ExecuteInEditMode]
publicclassPlayUsfxrSound:Command
{
"Play Usfxr Sound",
"Plays a usfxr synth sound. Use the usfxr editor [Tools > Fungus > Utilities > Generate usfxr Sound Effects] to create the SettingsString. Set a ParentTransform if using positional sound. See https://github.com/zeh/usfxr for more information about usfxr.")]
[AddComponentMenu("")]
[ExecuteInEditMode]
publicclassPlayUsfxrSound:Command
{
protectedSfxrSynth_synth=newSfxrSynth();
[Tooltip("Transform to use for positional audio")]
[Tooltip("Transform to use for positional audio")]
publicTransformParentTransform=null;
[Tooltip("Settings string which describes the audio")]
EditorGUILayout.PropertyField(primaryAspectRatioProp,newGUIContent("Primary Aspect Ratio","Width and height values that define the primary aspect ratio (e.g. 4:3)"));
EditorGUILayout.PropertyField(secondaryAspectRatioProp,newGUIContent("Secondary Aspect Ratio","Width and height values that define the primary aspect ratio (e.g. 4:3)"));
EditorGUILayout.PropertyField(primaryAspectRatioProp,newGUIContent("Primary Aspect Ratio","Width and height values that define the primary aspect ratio (e.g. 4:3)"));
EditorGUILayout.PropertyField(secondaryAspectRatioProp,newGUIContent("Secondary Aspect Ratio","Width and height values that define the primary aspect ratio (e.g. 4:3)"));
"Draws a fullscreen texture over the scene to give a fade effect. Setting Target Alpha to 1 will obscure the screen, alpha 0 will reveal the screen. "+
"If no Fade Texture is provided then a default flat color texture is used.")]
[AddComponentMenu("")]
publicclassFadeScreen:Command
{
[Tooltip("Time for fade effect to complete")]
publicfloatduration=1f;
[CommandInfo("Camera",
"Fade Screen",
"Draws a fullscreen texture over the scene to give a fade effect. Setting Target Alpha to 1 will obscure the screen, alpha 0 will reveal the screen. "+
"If no Fade Texture is provided then a default flat color texture is used.")]
[AddComponentMenu("")]
publicclassFadeScreen:Command
{
[Tooltip("Time for fade effect to complete")]
publicfloatduration=1f;
[Tooltip("Current target alpha transparency value. The fade gradually adjusts the alpha to approach this target value.")]
publicfloattargetAlpha=1f;
[Tooltip("Current target alpha transparency value. The fade gradually adjusts the alpha to approach this target value.")]
publicfloattargetAlpha=1f;
[Tooltip("Wait until the fade has finished before executing next command")]
publicboolwaitUntilFinished=true;
[Tooltip("Wait until the fade has finished before executing next command")]
publicboolwaitUntilFinished=true;
[Tooltip("Color to render fullscreen fade texture with when screen is obscured.")]
publicColorfadeColor=Color.black;
[Tooltip("Color to render fullscreen fade texture with when screen is obscured.")]
publicColorfadeColor=Color.black;
[Tooltip("Optional texture to use when rendering the fullscreen fade effect.")]
/// FindDerivedTypesFromAssembly allows a user to query all of types derived from a
/// particular Type at runtime.
/// Example usage:
/// foreach (System.Type st in EditorUtility.FindDerivedTypesFromAssembly(System.Reflection.Assembly.GetAssembly(typeof(BaseTimelineEvent)), typeof(BaseTimelineEvent), true))
/// </summary>
/// <param name="assembly">The assembly to search in</param>
/// <param name="baseType">The base Type from which all returned Types derive</param>
/// <param name="classOnly">If true, only class Types will be returned</param>
/// FindDerivedTypesFromAssembly allows a user to query all of types derived from a
/// particular Type at runtime.
/// Example usage:
/// foreach (System.Type st in EditorUtility.FindDerivedTypesFromAssembly(System.Reflection.Assembly.GetAssembly(typeof(BaseTimelineEvent)), typeof(BaseTimelineEvent), true))
/// </summary>
/// <param name="assembly">The assembly to search in</param>
/// <param name="baseType">The base Type from which all returned Types derive</param>
/// <param name="classOnly">If true, only class Types will be returned</param>
GUI.EndGroup();// End the group Unity begins automatically for an EditorWindow to clip out the window tab. This allows us to draw outside of the size of the EditorWindow.
GUI.EndGroup();// End the group Unity begins automatically for an EditorWindow to clip out the window tab. This allows us to draw outside of the size of the EditorWindow.
"Sends a message to either the owner Flowchart or all Flowcharts in the scene. Blocks can listen for this message using a Message Received event handler.")]
[AddComponentMenu("")]
[ExecuteInEditMode]
publicclassSendMessage:Command
{
publicenumMessageTarget
{
SameFlowchart,
AllFlowcharts
}
[CommandInfo("Flow",
"Send Message",
"Sends a message to either the owner Flowchart or all Flowcharts in the scene. Blocks can listen for this message using a Message Received event handler.")]
[AddComponentMenu("")]
[ExecuteInEditMode]
publicclassSendMessage:Command
{
publicenumMessageTarget
{
SameFlowchart,
AllFlowcharts
}
[Tooltip("Target flowchart(s) to send the message to")]
publicMessageTargetmessageTarget;
[Tooltip("Target flowchart(s) to send the message to")]
"Sets the active profile that the Save Variable and Load Variable commands will use. This is useful to crete multiple player save games. Once set, the profile applies across all Flowcharts and will also persist across scene loads.")]
"Sets the active profile that the Save Variable and Load Variable commands will use. This is useful to crete multiple player save games. Once set, the profile applies across all Flowcharts and will also persist across scene loads.")]
"Sets a Boolean, Integer, Float or String variable to a new value using a simple arithmetic operation. The value can be a constant or reference another variable of the same type.")]
[AddComponentMenu("")]
publicclassSetVariable:Command
{
publicenumSetOperator
{
Assign,// =
Negate,// =!
Add,// +=
Subtract,// -=
Multiply,// *=
Divide// /=
}
[Tooltip("The variable whos value will be set")]
[VariableProperty(typeof(BooleanVariable),
typeof(IntegerVariable),
typeof(FloatVariable),
typeof(StringVariable))]
publicVariablevariable;
[Tooltip("The type of math operation to be performed")]
"Sets a Boolean, Integer, Float or String variable to a new value using a simple arithmetic operation. The value can be a constant or reference another variable of the same type.")]
[AddComponentMenu("")]
publicclassSetVariable:Command
{
publicenumSetOperator
{
Assign,// =
Negate,// =!
Add,// +=
Subtract,// -=
Multiply,// *=
Divide// /=
}
[Tooltip("The variable whos value will be set")]
[VariableProperty(typeof(BooleanVariable),
typeof(IntegerVariable),
typeof(FloatVariable),
typeof(StringVariable))]
publicVariablevariable;
[Tooltip("The type of math operation to be performed")]