public static void GenerateNodesClass(List <Node> nodes, string nodeNames, NodeEffects effect, int value, string nodeText, NodeEffectTypes notableEffectType) { foreach (Node n in nodes) { if (!n.notable) { n.Name = nodeNames; n.values.Add(new NodeValues() { effect = effect, value = value, text = nodeText }); } else { GetNotable(new NodeEffectTypes[] { notableEffectType }).Invoke(new ClusterGenerator(), new object[] { n }); } } }
private NodeMB CreateNode(NodeType type, int x, int y) { // Instantiate node prefab NodeMB node = Instantiate(nodePrefab).GetComponent <NodeMB>(); Assert.IsTrue(node != null); // Set the node variables node.type = type; node.effect = NodeEffects.GetEffect(type); node.NodeSprite = SpriteManagerMB.GetNodeSprite(type); // Set node position node.transform.parent = transform; node.transform.position = x * Vector3.right + y * Vector3.up; // Add node to array node.x = x; node.y = y; node.name = "Node X " + x + " Y " + y; return(node); }
public float GetNodes(NodeEffects effect) { return(takenNodeValues.Any(p => p.effect == effect) ? (float)takenNodeValues.Where(p => p.effect == effect).Sum(p => p.value) : 0); }