mirror of
https://github.com/JezuzLizard/T4SP-Server-Plugin.git
synced 2025-07-04 18:21:50 +00:00
Fix Path_NearestNodeNotCrossPlanes.
Also fix pathlocal_t struct.
This commit is contained in:
@ -441,7 +441,7 @@ namespace game
|
||||
return answer;
|
||||
}
|
||||
|
||||
pathnode_t* Path_NearestNodeNotCrossPlanes(float maxDistSq, float maxHeightSq, float* vOrigin, pathsort_t* nodes, float a5, int a6, int a7, int a8, int* returnCount, int a10)
|
||||
pathnode_t* Path_NearestNodeNotCrossPlanes(int typeFlags, int maxNodes, float* vOrigin, pathsort_t* nodes, float fMaxDist, float a6, float a7, int iPlaneCount, int* returnCount, nearestNodeHeightCheck heightCheck)
|
||||
{
|
||||
static const auto call_addr = SELECT(0x0, 0x55C210);
|
||||
|
||||
@ -449,16 +449,16 @@ namespace game
|
||||
|
||||
__asm
|
||||
{
|
||||
push a10;
|
||||
push heightCheck;
|
||||
push returnCount;
|
||||
push a8;
|
||||
push iPlaneCount;
|
||||
push a7;
|
||||
push a6;
|
||||
push a5;
|
||||
push fMaxDist;
|
||||
push nodes;
|
||||
push vOrigin;
|
||||
movss xmm0, maxHeightSq;
|
||||
movss xmm1, maxDistSq;
|
||||
mov ecx, maxNodes;
|
||||
mov edx, typeFlags;
|
||||
call call_addr;
|
||||
add esp, 0x20;
|
||||
mov answer, eax;
|
||||
|
@ -57,7 +57,7 @@ namespace game
|
||||
const char* SL_ConvertToString(scriptInstance_t inst, int id);
|
||||
|
||||
int Path_FindPath(path_t* pPath, team_t eTeam, float* vStartPos, float* vGoalPos, int bAllowNegotiationLinks);
|
||||
pathnode_t* Path_NearestNodeNotCrossPlanes(float maxDistSq, float maxHeightSq, float* vOrigin, pathsort_t* nodes, float a5, int a6, int a7, int a8, int* returnCount, int a10);
|
||||
pathnode_t* Path_NearestNodeNotCrossPlanes(int typeFlags, int maxNodes, float* vOrigin, pathsort_t* nodes, float fMaxDist, float a6, float a7, int iPlaneCount, int* returnCount, nearestNodeHeightCheck heightCheck);
|
||||
int Path_FindPathFromTo(float* startPos, pathnode_t* pNodeTo, path_t* pPath, team_t eTeam, pathnode_t* pNodeFrom, float* vGoalPos, int bAllowNegotiationLinks, int bIgnoreBadplaces);
|
||||
|
||||
template <typename T>
|
||||
|
@ -1572,12 +1572,12 @@ namespace game
|
||||
float origin[3];
|
||||
float maxDist;
|
||||
float maxDistSq;
|
||||
float maxHeight;
|
||||
float maxHeightSq;
|
||||
int typeFlags;
|
||||
pathsort_t* nodes;
|
||||
int maxNodes;
|
||||
int nodeCount;
|
||||
float maxHeight;
|
||||
};
|
||||
|
||||
struct __declspec(align(128)) pathlocal_t
|
||||
@ -1585,9 +1585,9 @@ namespace game
|
||||
PathLinkInfo pathLinkInfoArray[2048];
|
||||
int pathLinkInfoArrayInited;
|
||||
unsigned int actualNodeCount;
|
||||
pathlocal_t_circle circle;
|
||||
unsigned int extraNodes;
|
||||
unsigned int originErrors;
|
||||
pathlocal_t_circle circle;
|
||||
};
|
||||
|
||||
struct CustomSearchInfo_FindPath
|
||||
@ -1597,6 +1597,11 @@ namespace game
|
||||
float negotiationOverlapCost;
|
||||
};
|
||||
|
||||
enum nearestNodeHeightCheck
|
||||
{
|
||||
NEAREST_NODE_DO_HEIGHT_CHECK = 0x0,
|
||||
NEAREST_NODE_DONT_DO_HEIGHT_CHECK = 0x1,
|
||||
};
|
||||
|
||||
enum VariableType
|
||||
{
|
||||
|
Reference in New Issue
Block a user