Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 5.42 KB | None | 0 0
  1. diff --git a/Assets/HoneyFramework/Scripts/CameraControler.cs b/HoneyFramework/Scripts/CameraControler.cs
  2. index 32ad0da..774baca 100644
  3. --- a/Assets/HoneyFramework/Scripts/CameraControler.cs
  4. +++ b/HoneyFramework/Scripts/CameraControler.cs
  5. @@ -125,14 +125,14 @@ namespace HoneyFramework
  6.                  {
  7.                      DataManager.Reload();
  8.                      World.GetInstance().Initialize();
  9. -                    AstarPath.RegisterSafeUpdate(GameManager.instance.ActivatePathfinder);
  10. +                    GameManager.instance.ActivatePathfinder();
  11.                  }
  12.  
  13.                  if (GUILayout.Button("Load map"))
  14.                  {
  15.                      DataManager.Reload();
  16.                      World.GetInstance().InitializeFromSave();
  17. -                    AstarPath.RegisterSafeUpdate(GameManager.instance.ActivatePathfinder);
  18. +                    GameManager.instance.ActivatePathfinder();
  19.                  }
  20.              }
  21.              else if (World.GetInstance().status == World.Status.Ready)
  22. @@ -141,14 +141,14 @@ namespace HoneyFramework
  23.                  {
  24.                      DataManager.Reload();
  25.                      World.GetInstance().Initialize();
  26. -                    AstarPath.RegisterSafeUpdate(GameManager.instance.ActivatePathfinder);
  27. +                    GameManager.instance.ActivatePathfinder();
  28.                  }
  29.  
  30.                  if (GUILayout.Button("Load map"))
  31.                  {
  32.                      DataManager.Reload();
  33.                      World.GetInstance().InitializeFromSave();
  34. -                    AstarPath.RegisterSafeUpdate(GameManager.instance.ActivatePathfinder);
  35. +                    GameManager.instance.ActivatePathfinder();
  36.                  }
  37.  
  38.                  if (GUILayout.Button("Spawn character"))
  39. diff --git a/Assets/HoneyFramework/Scripts/GameManager.cs b/HoneyFramework/Scripts/GameManager.cs
  40. index f86b3d1..5453cb5 100644
  41. --- a/Assets/HoneyFramework/Scripts/GameManager.cs
  42. +++ b/HoneyFramework/Scripts/GameManager.cs
  43. @@ -69,8 +69,8 @@ namespace HoneyFramework
  44.          /// <returns></returns>
  45.          public void ActivatePathfinder()
  46.          {
  47. -            HexGraph hg = HexPathFinder.GenerateWorldGraph(pathFinder);
  48. -            pathFinder.graphs = new NavGraph[1] { hg };
  49. +            pathFinder.data.AddGraph(typeof(HexGraph));
  50. +            pathFinder.Scan();
  51.          }
  52.      }
  53.  }
  54. diff --git a/Assets/HoneyFramework/Scripts/World/HexTools/HexGraph.cs b/HoneyFramework/Scripts/World/HexTools/HexGraph.cs
  55. index 1e9c597..ae2e705 100644
  56. --- a/Assets/HoneyFramework/Scripts/World/HexTools/HexGraph.cs
  57. +++ b/HoneyFramework/Scripts/World/HexTools/HexGraph.cs
  58. @@ -3,7 +3,7 @@ using System.Collections;
  59.  using System.Collections.Generic;
  60.  using System.Linq;
  61.  using Pathfinding;
  62. -using Pathfinding.Serialization.JsonFx;
  63. +using Pathfinding.Serialization;
  64.  
  65.  namespace HoneyFramework
  66.  {
  67. @@ -20,7 +20,7 @@ namespace HoneyFramework
  68.          /// </summary>
  69.          /// <param name="statusCallback"></param>
  70.          /// <returns></returns>
  71. -        public override void ScanInternal(OnScanStatus statusCallback)
  72. +        protected override IEnumerable<Progress> ScanInternal()
  73.          {
  74.              int hexradius = World.instance.hexRadius;
  75.              List<PointNode> pointNodes = new List<PointNode>();
  76. @@ -43,27 +43,25 @@ namespace HoneyFramework
  77.              nodes = pointNodes.ToArray();
  78.              nodeCount = nodes.Length;
  79.  
  80. -            List<PointNode> connections = new List<PointNode>();
  81. -            List<uint> connectionCosts = new List<uint>();
  82. +            List<Connection> connections = new List<Connection>();
  83.  
  84.              foreach (PointNode pn in nodes)
  85.              {
  86.                  connections.Clear();
  87. -                connectionCosts.Clear();
  88.                  foreach (Vector3i v in HexNeighbors.neighbours)
  89.                  {
  90.                      Int3 offset = v.ToInt3();
  91.                      Int3 pos = pn.position + offset;
  92.                      if (nodeDictionary.ContainsKey(pos))
  93.                      {
  94. -                        connections.Add(nodeDictionary[pos]);
  95. -                        connectionCosts.Add(1);
  96. +                        connections.Add(new Connection(nodeDictionary[pos], 1));
  97.                      }
  98.                  }
  99.  
  100.                  pn.connections = connections.ToArray();
  101. -                pn.connectionCosts = connectionCosts.ToArray();
  102.              }
  103. +
  104. +            yield return new Progress(1.0f, "Done");
  105.          }
  106.      }
  107.  }
  108. \ No newline at end of file
  109. diff --git a/Assets/HoneyFramework/Scripts/World/HexTools/HexPathFinder.cs b/Assets/HoneyFramework/Scripts/World/HexTools/HexPathFinder.cs
  110. deleted file mode 100644
  111. index f99007c..0000000
  112. --- a/Assets/HoneyFramework/Scripts/World/HexTools/HexPathFinder.cs
  113. +++ /dev/null
  114. @@ -1,24 +0,0 @@
  115. -using UnityEngine;
  116. -using System.Collections;
  117. -using System.Collections.Generic;
  118. -using System.Linq;
  119. -using Pathfinding;
  120. -
  121. -namespace HoneyFramework
  122. -{
  123. -    /*
  124. -     * Simple call to produce world graph. More functionality could be provided to cover or translate advantages of the A* into hex world
  125. -     */
  126. -    public class HexPathFinder
  127. -    {
  128. -        static public HexGraph GenerateWorldGraph(AstarPath pathfinder)
  129. -        {
  130. -            HexGraph graph = new HexGraph();
  131. -            graph.active = pathfinder;
  132. -            graph.ScanInternal(null);
  133. -
  134. -            return graph;
  135. -        }
  136. -
  137. -    }
  138. -}
  139. \ No newline at end of file
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement