public bool lockMovement; // wird gelockt solange unit sich von einem zum anderen feld bewegt // Start is called before the first frame update void Start() { evaluate = false; //werte übernehmen von myUnit maxhealth = myUnit.health; health = maxhealth; damage = myUnit.attack; speed = myUnit.speed; range = myUnit.range; timeLeft = 10 - myUnit.attackspeed; cooldown = timeLeft; //je nachdem wem die einheit gehört in liste einordnen if (isenemy) { enemielist.enemielist.Add(this); } else { teamlist.teamlist.Add(this); } updateOpponentList(); healthbar1.updateText(); doesattack = false; schachbrett = feld.brett; targetFeld = feld; }
// Update is called once per frame void Update() { //wenn karte ausgewählt ist soll geprüft werden über welches feld man mit der maus fährt if (cardSelected) { RaycastHit hit; int layer_mask = LayerMask.GetMask("Field"); Ray ray = cam.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit, 1000, layer_mask)) { if (hit.collider.tag == "chessfield") { if (hit.collider.GetComponent <schachfeld>().Equals(selectedfield)) { } else { if (selectedfield != null) { selectedfield.selected = false; } selectedfield = hit.collider.GetComponent <schachfeld>(); selectedfield.selected = true; } } else { if (selectedfield != null) { selectedfield.selected = false; } selectedfield = null; } } } }
// Start is called before the first frame update void Start() { brettArray = new schachfeld[size, size]; units = new GameObject[size, size]; for (int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { GameObject feld = Instantiate(chessfieldPrefab, new Vector3(i * 10, 0, j * 10), Quaternion.identity); schachfeld feld1 = feld.GetComponent <schachfeld>(); Node node1 = feld.GetComponent <Node>(); node1.gameObject.transform.SetParent(graphNode.gameObject.transform); feld1.brett = this; brettArray[i, j] = feld1; feld1.x = i; feld1.y = j; } } for (int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { Node node1 = brettArray[i, j].GetComponent <Node>(); if (i > 0) { node1.connections.Add(brettArray[i - 1, j].gameObject.GetComponent <Node>()); if (j > 0) { node1.connections.Add(brettArray[i - 1, j - 1].gameObject.GetComponent <Node>()); } if (j < size - 1) { node1.connections.Add(brettArray[i - 1, j + 1].gameObject.GetComponent <Node>()); } } if (j > 0) { node1.connections.Add(brettArray[i, j - 1].gameObject.GetComponent <Node>()); } if (i < size - 1) { node1.connections.Add(brettArray[i + 1, j].gameObject.GetComponent <Node>()); if (j < size - 1) { node1.connections.Add(brettArray[i + 1, j + 1].gameObject.GetComponent <Node>()); } if (j > 0) { node1.connections.Add(brettArray[i + 1, j - 1].gameObject.GetComponent <Node>()); } } if (j < size - 1) { node1.connections.Add(brettArray[i, j + 1].gameObject.GetComponent <Node>()); } } } //add all chessfields to the graph graphNode.AddFields(); }