public GameObject SpawnNetworkNode(int index, int detection, NetworkNode.NodeState state, Vector3 position) { var go = Instantiate(NetworkNodeTemplates[index]); go.transform.position = position; go.transform.Rotate(NodeSpawnRotation); var nn = go.GetComponent <NetworkNode>(); nn.BaseDetectionPercent = detection; if (nn.Type == NetworkNode.NodeType.NT_Input) { nn.CapPlayer = 100; nn.State = NetworkNode.NodeState.NS_Active; } else { nn.State = state; } if (nn.Type == NetworkNode.NodeType.NT_Firewall) { nn.CapFirewall = 100; } return(go); //var go = GameObject.Instantiate( }
private void LoadLevelNumber(int lvlnumber) { List <GameObject> thisLevelNodes = new List <GameObject>(); TextAsset lvl = (TextAsset)Resources.Load("lvl" + lvlnumber, typeof(TextAsset)); if (lvl == null) { throw new UnityException("LEVEL " + lvlnumber + "WAS NOT FOUND IN RESOURCES"); } PerkManager.MaxLevel.value = Mathf.Max(PerkManager.MaxLevel.value, lvlnumber); string[] lines = lvl.text.Replace("\r", "").Split('\n'); foreach (var l in lines) { string[] args = l.Split('\t'); if (args[0] == "NODE") { NetworkNode.NodeType type = (NetworkNode.NodeType)System.Enum.Parse(typeof(NetworkNode.NodeType), args[1]); int percent = Mathf.Clamp(int.Parse(args[2]), 0, 100); NetworkNode.NodeState state = (NetworkNode.NodeState)System.Enum.Parse(typeof(NetworkNode.NodeState), args[3]); int x = int.Parse(args[4]); int y = int.Parse(args[5]); thisLevelNodes.Add(fac.SpawnNetworkNode((int)type, percent, state, getPosition(x, y))); } else if (args[0] == "CONN") { int A = int.Parse(args[1]); int B = int.Parse(args[2]); fac.CreateConnection(thisLevelNodes[A], thisLevelNodes[B]); } } GameManager.listOfNodesAdd(thisLevelNodes.ToArray()); }