
ReturnGraph is a graph-based inspector tool for dynamically returning values at runtime, eliminating endlessly nested "if" statements or hardcoded logic.Requires Unity's experimental Graph Toolkit package.ReturnGraph is a node-based plugin for Unity that lets you visualize logic to return values at runtime, without the need for endlessly nested If statements, Switch expressions, or other complicated coding logic. Think of it like a flowchart with dynamic variables for any type of value you need, right in your editor! ReturnGraph allows teams of all sizes, from the solo developer to a AAA studio, to create complex branching logic with a designer-friendly system, right in the inspector.Combining the power of blackboard architecture and Unity's new Graph Toolkit API, ReturnGraph takes the confusion and tim sink out of creating large If statements with many branching pathways and variables, letting you spend more time designing (and finishing) your game!ReturnGraph comes ready to go right out of the box with no additional dependencies or assets, and is preloaded with a suite of Nodes and Conditions to get you started. All you need to do is create a ReturnNode for the type of ScriptableObject you'd like to return, and then you're ready to start building your graph!If your project requires custom Nodes or Conditions, don't worry! The C# source code is included, so ReturnGraph is easy to extend for your project's needs. Also detailed documentation and tutorials can be found both in the code and online.PREMADE NODES-------------------Start Node: tells the graph where to startReturn Node: tells the graph to stop executing and return the node's referenced valueCondition Node: evaluates a condition using dynamic or static values to select the next node in the graphConditional Return Node: evaluates a condition using dynamic or static values; if the condition returns true, tells the graph to stop executing and returns the node's referenced value; otherwise selects the next node in the graphSwitch Node: evaluates an enum value to select the next nodeRandom Node: Randomly selects the next nodeSequence Node: evaluates a series of conditions and selects the next node based on the first condition to return trueCompound Condition Node: evaluates a series of conditions and selects the next node based on if every condition returns true, or if any condition returns truePREMADE CONDITIONS------------------------Bool Condition: evaluates a boolean value provided at runtimeInteger Condition: evaluates an integer value (either provided at runtime or generated randomly) by comparing it to another integerFloat Condition: evaluates a float value (either provided at runtime or generated randomly) provided at runtime by comparing it to another floatString Condition: evaluates a string value provided at runtime by comparing it to another string valueHas Component Condition: evaluates a GameObject value provided at runtime by checking if it has a specified ComponentAs Unity's Graph Toolkit API evolves over time, so too will ReturnGraph, and it will continually be updated with new features and premade tools to make creating graphs even easier. If you have any questions or issues regarding the asset, don't hesitate to get in contact here. Additionally, if you have suggestions for ways to improve ReturnGraph, or you'd like to share your implementations of it, I'd love it hear it!Documentation: Learn how ReturnGraph worksTutorials: Watch videos on how to use ReturnGraphSupport: Get help or report bugsDependencies:SerializeReference Extensions - MackySoft (FREE)