planilo
planilo copied to clipboard
Errors when doing a build - solution proposal
Problem: when I wanted to do a build, I kept getting Planilo related errors popping up.
My investigation: it looks like Assembly Definition is not done correctly. The editor code is also called when the build is created. The XNodeEditor
that Planino uses is only visible to the editor, so its functions "just don't exist" during the building process.
Suggestions for a fix:
- Fix Assembly Definition file or
- Add this in the editor related files:
#if UNITY_EDITOR
//editor related code
#endif
I personally used the second method and the build was successful. The files I have changed are:
BehaviourTree\Editor\BehaviourTreeGraphEditor.cs
BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs
BehaviourTree\Editor\BehaviourTreeSubGraphNodeEditor.cs
FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs
FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs
FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs
FiniteStateMachine\Editor\FiniteStateMachineSubGraphNodeEditor.cs
Example:
I would post a pull request, but I don't have write permissions.
Full log:
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeSubGraphNodeEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(4,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineSubGraphNodeEditor.cs(5,7): error CS0246: The type or namespace name 'XNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(9,45): error CS0246: The type or namespace name 'NodeGraphEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(9,50): error CS0246: The type or namespace name 'NodeGraphEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeGraphEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeGraphEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeGraphEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeGraphEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(11,32): error CS0115: 'BehaviourTreeGraphEditor.GetNodeMenuName(Type)': no suitable method found to override
\BehaviourTree\Editor\BehaviourTreeGraphEditor.cs(17,30): error CS0115: 'BehaviourTreeGraphEditor.OnGUI()': no suitable method found to override
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(11,32): error CS0115: 'FiniteStateMachineGraphEditor.GetNodeMenuName(Type)': no suitable method found to override
\FiniteStateMachine\Editor\FiniteStateMachineGraphEditor.cs(21,30): error CS0115: 'FiniteStateMachineGraphEditor.OnGUI()': no suitable method found to override
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(9,49): error CS0246: The type or namespace name 'NodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs(9,54): error CS0246: The type or namespace name 'NodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(9,59): error CS0246: The type or namespace name 'NodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeSubGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeSubGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs(8,6): error CS0246: The type or namespace name 'CustomNodeEditor' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineGraphNodeEditor.cs(11,30): error CS0115: 'FiniteStateMachineGraphNodeEditor.OnHeaderGUI()': no suitable method found to override
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(15,30): error CS0115: 'BehaviourTreeGraphNodeEditor.OnHeaderGUI()': no suitable method found to override
\BehaviourTree\Editor\BehaviourTreeGraphNodeEditor.cs(21,31): error CS0115: 'BehaviourTreeGraphNodeEditor.GetTint()': no suitable method found to override
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(17,30): error CS0115: 'FiniteStateMachineStateGraphNodeEditor.OnHeaderGUI()': no suitable method found to override
\FiniteStateMachine\Editor\FiniteStateMachineStateGraphNodeEditor.cs(25,31): error CS0115: 'FiniteStateMachineStateGraphNodeEditor.GetTint()': no suitable method found to override
\FiniteStateMachine\Editor\FiniteStateMachineSubGraphNodeEditor.cs(9,6): error CS0246: The type or namespace name 'CustomNodeEditorAttribute' could not be found (are you missing a using directive or an assembly reference?)
\FiniteStateMachine\Editor\FiniteStateMachineSubGraphNodeEditor.cs(9,6): error CS0246: The type or namespace name 'CustomNodeEditor' could not be found (are you missing a using directive or an assembly reference?)