// Use this for initialization public virtual void Start() { player = GameObject.FindGameObjectWithTag("Player"); Pathfinding.node currentnode = Pathfinding.instance.GetNode(transform.position); currentnode.occupied = true; turnmanager.instance.enemies.Add(this.gameObject); }
public virtual void enemydead() { turnmanager.instance.enemies.Remove(this.gameObject); Instantiate(item, transform.GetChild(0).position, Quaternion.identity); Pathfinding.node currentnode = Pathfinding.instance.GetNode(transform.position); currentnode.occupied = false; player.GetComponent <PlayerController>().pinfo.experience += 2; Destroy(this.gameObject); }
void Start() { canAttack = true; targetpos = new Vector2Int(-1, -1); Pathfinding.node currentnode = Pathfinding.instance.GetNode(transform.position); currentnode.occupied = true; checkplayerinfo(); }
bool checknexttile(Pathfinding.node tile) { if (tile.occupied) { return(true); } else { return(false); } }
void checkpos12(Pathfinding.node pos1, Pathfinding.node pos2, bool end) { if (pos1.x == pos2.x) { if (!end) { if (pos1.x < pos2.x || pos1.y > pos2.y) { vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f), -1)); } else if (pos1.x > pos2.x || pos1.y < pos2.y) { vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f), -1)); } } else { if (pos1.x < pos2.x || pos1.y > pos2.y) { vertices.Add(new Vector3((pos2.x + 0.5f) - (linewidth / 2), (pos2.y + 0.5f), -1)); vertices.Add(new Vector3((pos2.x + 0.5f) + (linewidth / 2), (pos2.y + 0.5f), -1)); } else if (pos1.x > pos2.x || pos1.y < pos2.y) { vertices.Add(new Vector3((pos2.x + 0.5f) + (linewidth / 2), (pos2.y + 0.5f), -1)); vertices.Add(new Vector3((pos2.x + 0.5f) - (linewidth / 2), (pos2.y + 0.5f), -1)); } } } else if (pos1.y == pos2.y) { if (!end) { if (pos1.x < pos2.x || pos1.y > pos2.y) { vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) - (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) + (linewidth / 2), -1)); } else if (pos1.x > pos2.x || pos1.y < pos2.y) { vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) + (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) - (linewidth / 2), -1)); } } else { if (pos1.x < pos2.x || pos1.y > pos2.y) { vertices.Add(new Vector3((pos2.x + 0.5f), (pos2.y + 0.5f) - (linewidth / 2), -1)); vertices.Add(new Vector3((pos2.x + 0.5f), (pos2.y + 0.5f) + (linewidth / 2), -1)); } else if (pos1.x > pos2.x || pos1.y < pos2.y) { vertices.Add(new Vector3((pos2.x + 0.5f), (pos2.y + 0.5f) + (linewidth / 2), -1)); vertices.Add(new Vector3((pos2.x + 0.5f), (pos2.y + 0.5f) - (linewidth / 2), -1)); } } } }
void checkpos123(Pathfinding.node pos1, Pathfinding.node pos2, Pathfinding.node pos3) { if (pos1.x == pos2.x && pos1.x == pos3.x) { if (pos1.y > pos2.y || pos1.y < pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f), -1)); //print("normal"); } else if (pos1.y < pos2.y || pos1.y > pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f), -1)); //print("flipped"); } } else if (pos1.y == pos2.y && pos1.y == pos3.y) { if (pos1.x < pos2.x || pos1.x > pos3.x) { vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) - (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) + (linewidth / 2), -1)); //print("y same going right"); } else if (pos1.x > pos2.x || pos1.x < pos3.x) { vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) + (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f), (pos1.y + 0.5f) - (linewidth / 2), -1)); //print("y same going left"); } //print("y same"); } else { if (pos1.x < pos2.x || pos1.x > pos3.x) { if (pos1.y <pos2.y | pos1.y> pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f) - (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f) + (linewidth / 2), -1)); //print("x up y up"); } else if (pos1.y > pos2.y | pos1.y < pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f) - (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f) + (linewidth / 2), -1)); //print("x up y down"); } } else if (pos1.x > pos2.x || pos1.x < pos3.x) { if (pos1.y <pos2.y | pos1.y> pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f) + (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f) - (linewidth / 2), -1)); //print("x down y up"); } else if (pos1.y > pos2.y | pos1.y < pos3.y) { vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2), (pos1.y + 0.5f) + (linewidth / 2), -1)); vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2), (pos1.y + 0.5f) - (linewidth / 2), -1)); //print("x down y down"); } } //if (pos1.x < pos2.x || pos1.y > pos2.y) //{ // vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2) , (pos1.y + 0.5f) - (linewidth / 2) , -1)); // vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2) , (pos1.y + 0.5f) + (linewidth / 2) , -1)); // print("what"); //} //else if(pos1.x < pos2.x || pos1.y > pos2.y) //{ // vertices.Add(new Vector3((pos1.x + 0.5f) + (linewidth / 2) , (pos1.y + 0.5f) + (linewidth / 2) , -1)); // vertices.Add(new Vector3((pos1.x + 0.5f) - (linewidth / 2) , (pos1.y + 0.5f) - (linewidth / 2) , -1)); // print("huh"); //} //Debug.LogError("no vertices set"); } }