Пример #1
0
 // 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);
 }
Пример #2
0
 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);
 }
Пример #3
0
    void Start()
    {
        canAttack = true;

        targetpos = new Vector2Int(-1, -1);

        Pathfinding.node currentnode = Pathfinding.instance.GetNode(transform.position);
        currentnode.occupied = true;
        checkplayerinfo();
    }
Пример #4
0
 bool checknexttile(Pathfinding.node tile)
 {
     if (tile.occupied)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Пример #5
0
 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));
             }
         }
     }
 }
Пример #6
0
 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");
     }
 }