Exemplo n.º 1
0
        public static Ray Reset(Parameter.ParameterType type, Ray Value)
        {
            switch (type)
            {
            case Parameter.ParameterType.Value:
                return(Value);

            case Parameter.ParameterType.Word:
                return(Value.Set(Value.GetString()));

            case Parameter.ParameterType.Conditionals:
                return(Value.Set(Value.GetString()));

            case Parameter.ParameterType.Then:
                return(Value.Set(Value.GetString()));

            case Parameter.ParameterType.Else:
                return(Value.Set(Value.GetString()));

            case Parameter.ParameterType.NoteField:
                return(Value.Set(Value.GetString()));

            case Parameter.ParameterType.ReadOnlyValue:
                Value.Set(0);
                return(Value);

            case Parameter.ParameterType.ReadOnlyXValue:
                Value.Set("X");
                return(Value);

            case Parameter.ParameterType.ReadOnlyYValue:
                Value.Set("Y");
                return(Value);

            case Parameter.ParameterType.ReadOnlyZValue:
                Value.Set("Z");
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueR:
                Value.Set("R");
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueG:
                Value.Set("G");
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueB:
                Value.Set("B");
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueA:
                Value.Set("A");
                return(Value);

            default:
                return(Value);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        ///Return the attribute you created
        /// In most case this function should only be called inside the setup function of your node.
        /// </summary>
        /// <param name="value">the default value of the attribute</param>
        /// <param name="type">The attribute type displayed in editor</param>
        /// <param name="description">Description of the attribute (Not implemented)</param>
        public Parameter AddParameter(Ray value, Parameter.ParameterType type, string description)
        {
            if (NodeParameters == null)
            {
                NodeParameters = new List <Parameter> ();
            }

            var newParameter = new Parameter(type);

            newParameter.Value = value;
            NodeParameters.Add(newParameter);
            return(newParameter);
        }
Exemplo n.º 3
0
        public Parameter AddDiscreteParameter(Ray value, Parameter.ParameterType type, string description, Parameter.OnAttributeChanged onAttributeChanged)
        {
            if (DiscretParameters == null)
            {
                DiscretParameters = new List <Parameter>();
            }

            var newParameter = new Parameter(type);

            newParameter.Value = value;
            DiscretParameters.Add(newParameter);
            return(newParameter);
        }
Exemplo n.º 4
0
        public ParameterData(Parameter.ParameterType _type, Ray variable)
        {
            if (_type == Parameter.ParameterType.Value)
            {
                Value = new Ray().Set(variable.GetFloat());
            }
            else if (_type == Parameter.ParameterType.Word)
            {
                Value = new Ray().Set(variable.GetString());
            }
            else
            {
                Value = new Ray().Set(variable.GetString());
            }

            Type = _type;
        }
Exemplo n.º 5
0
 public ParameterData(Parameter.ParameterType _type)
 {
     Value = new Ray();
     Value.Set(0);
     Type = _type;
 }
Exemplo n.º 6
0
        public static Ray Draw(Parameter.ParameterType type, Rect size, Rect attributeArea, Ray Value, ConstellationEditorStyles editorStyles, out bool canBeFocused)
        {
            canBeFocused = false;
            switch (type)
            {
            case Parameter.ParameterType.Value:
                canBeFocused = true;
                var valueToReturn = Value.Set(EditorGUI.FloatField(size, " ", Value.GetFloat(), editorStyles.NodeValueParameterStyle));
                EditorGUI.LabelField(new Rect(size.x, size.y - 8, 30, 30), "<>", editorStyles.NodeValueParameterLabelStyle);
                return(valueToReturn);

            case Parameter.ParameterType.Word:
                canBeFocused = true;
                return(Value.Set(EditorGUI.TextField(size, "", Value.GetString(), editorStyles.NodeWordParameterStyle)));

            case Parameter.ParameterType.Conditionals:
                canBeFocused = true;
                return(IfCharacterFilter(size, Value, editorStyles));

            case Parameter.ParameterType.Then:
                canBeFocused = true;
                return(ThenCharacterFilter(size, Value, editorStyles));

            case Parameter.ParameterType.Else:
                canBeFocused = true;
                return(ElseCharacterFilter(size, Value, editorStyles));

            case Parameter.ParameterType.NoteField:
                canBeFocused = true;
                GUI.color    = new Color(0.9f, 0.85f, 0.25f);
                var textAreaValue = Value.Set(EditorGUI.TextArea(attributeArea, Value.GetString()));
                GUI.color = Color.white;
                //noteSkin.alignment = TextAnchor.UpperLeft;
                return(textAreaValue);

            case Parameter.ParameterType.ReadOnlyValue:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeReadOnlyParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyXValue:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeXParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyYValue:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeYParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyZValue:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeZParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueR:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeRParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueG:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeGParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueB:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeBParameterStyle);
                return(Value);

            case Parameter.ParameterType.ReadOnlyValueA:
                EditorGUI.LabelField(size, Value.GetString(), editorStyles.NodeAParameterStyle);
                return(Value);

            case Parameter.ParameterType.RenameNodeTitle:
                EditorGUI.LabelField(size, Value.GetString());
                return(Value);

            default:
                return(Value);
            }
        }