From 8181a3426aad23fca4449ff3f0858ba58733bd21 Mon Sep 17 00:00:00 2001 From: Simon O'Shea Date: Wed, 9 Aug 2023 14:23:24 -0400 Subject: animation is linked to speed slider --- Pathfinding Visualizer/Assets/Scripts/CellMesh.cs | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'Pathfinding Visualizer/Assets/Scripts') 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 animateData; + private void Awake() { mesh = new Mesh(); @@ -78,24 +81,32 @@ public class CellMesh : MonoBehaviour mesh.triangles = triangles; } + public void Animate(Stack 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() { -- cgit v1.3.1-4-g156e