Ejemplo n.º 1
0
        public NavigationService()
        {
            var navProcPtr = LoadLibrary(Paths.Navigation);

            var calculatePathPtr = GetProcAddress(navProcPtr, "CalculatePath");

            calculatePath = Marshal.GetDelegateForFunctionPointer <CalculatePathDelegate>(calculatePathPtr);

            var freePathPtr = GetProcAddress(navProcPtr, "FreePathArr");

            freePathArr = Marshal.GetDelegateForFunctionPointer <FreePathArrDelegate>(freePathPtr);
        }
Ejemplo n.º 2
0
        private Navigation()
        {
            var calculatePathPtr = WinImports.GetProcAddress(Libs.Instance.PathfinderPtr,
                                                             "CalculatePath");

            _calculatePath = Memory.Reader.RegisterDelegate <CalculatePathDelegate>(calculatePathPtr);

            var freePathPtr = WinImports.GetProcAddress(Libs.Instance.PathfinderPtr,
                                                        "FreePathArr");

            _freePathArr = Memory.Reader.RegisterDelegate <FreePathArr>(freePathPtr);

            //Memory.ErasePeHeader(Libs.Instance.PathfinderPtr);
            //Memory.UnlinkFromPeb("038.mmap");
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Calculates path asynchronously and fires callback when done
        /// </summary>
        /// <param name="start"></param>
        /// <param name="goal"></param>
        /// <param name="callback"></param>
        public void CalculatePathAsync(Vector3I start, Vector3I goal, PathCalculatedDeleagte callback)
        {
            var d = new CalculatePathDelegate(CalculatePath);

            d.BeginInvoke(start, goal, PathCalculated, callback);
        }