//public Color baseColor = Color.white; //public Color wallColor = Color.black; public void Init(Graph graph) { if (graph == null) { Debug.LogWarning("Graphiview no graph to initialize!"); return; } nodeViews = new NodeView[graph.Width, graph.Height]; foreach (Node n in graph.nodes) { GameObject instance = Instantiate(nodeViewPrefab, Vector3.zero, Quaternion.identity); NodeView nodeView = instance.GetComponent <NodeView>(); if (nodeView != null) { nodeView.Init(n); nodeViews[n.xIndex, n.yIndex] = nodeView; Color originalColor = MapData.GetColorFromNodeType(n.nodeType); nodeView.ColorNode(originalColor); } } }
public void ColorNodes(List <Node> nodes, Color color, bool lerpColor = false, float lerpValue = 0.5f) { foreach (Node n in nodes) { if (n != null) { NodeView nodeView = nodeViews[n.xIndex, n.yIndex]; Color newColor = color; if (lerpColor) { Color originalColor = MapData.GetColorFromNodeType(n.nodeType); newColor = Color.Lerp(originalColor, newColor, lerpValue); } if (nodeView != null) { nodeView.ColorNode(newColor); } } } }