summaryrefslogtreecommitdiff
path: root/Pathfinding Visualizer/Assets/Scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Pathfinding Visualizer/Assets/Scripts')
-rw-r--r--Pathfinding Visualizer/Assets/Scripts/CellMesh.cs21
1 files changed, 16 insertions, 5 deletions
diff --git a/Pathfinding Visualizer/Assets/Scripts/CellMesh.cs b/Pathfinding Visualizer/Assets/Scripts/CellMesh.cs
index e6802c4..6efc602 100644
--- a/Pathfinding Visualizer/Assets/Scripts/CellMesh.cs
+++ b/Pathfinding Visualizer/Assets/Scripts/CellMesh.cs
@@ -1,6 +1,7 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
+using System;
public class CellMesh : MonoBehaviour
{
@@ -11,6 +12,8 @@ public class CellMesh : MonoBehaviour
Vector2[] m_uv;
int[] m_triangles;
+ Stack<Node> animateData;
+
private void Awake()
{
mesh = new Mesh();
@@ -78,24 +81,32 @@ public class CellMesh : MonoBehaviour
mesh.triangles = triangles;
}
+
public void Animate(Stack<Node> result)
{
- int count = result.Count;
+ animateData = result;
+ StartCoroutine("AnimateGrid");
+ }
+
+
+ IEnumerator AnimateGrid()
+ {
+ int count = animateData.Count;
for (int i = 0; i < count; i++)
{
- Node n = result.Pop();
+ Node n = animateData.Pop();
//Debug.Log("Agent at: " + n.agent.x + ", " + n.agent.y);
Debug.Log(n.lastMove);
grid.SetValue(n.agent.x, n.agent.y, 3);
- //grid.SetValue(n.parent.agent.x, n.parent.agent.y, 0);
+ grid.SetValue(n.parent.agent.x, n.parent.agent.y, 0);
- UpdateCellVisual();
+ yield return new WaitForSeconds(nMain.speed);
+ UpdateCellVisual();
}
}
-
void Start()
{