Ejemplo n.º 1
0
        protected override void OnUpdate()
        {
            var pathJob = new PathFindJob();

            pathJob.PathHandle  = GetBufferTypeHandle <Path>();
            pathJob.walkableMap = walkableMap;

            Dependency = pathJob.ScheduleParallel(_eq, Dependency);
        }
Ejemplo n.º 2
0
        public static Move?FindPath(ref SimpleBoard board, Node node, NativeArray <int4x4> pieceShapes)
        {
            var job = new PathFindJob {
                board       = board,
                holdUsed    = node.holdUsed,
                dest        = node.piece,
                pieceShapes = pieceShapes,
                success     = new NativeArray <bool>(1, Allocator.TempJob),
                move        = new NativeArray <Move>(1, Allocator.TempJob)
            };

            job.Run();
            var success = job.success[0];
            var mv      = job.move[0];

            job.success.Dispose();
            job.move.Dispose();
            return(success ? mv : (Move?)null);
        }