Skip to content

Instantly share code, notes, and snippets.

@Demonid
Forked from saqirmdev/gist:3981930
Created April 16, 2013 01:29
Show Gist options
  • Save Demonid/5392667 to your computer and use it in GitHub Desktop.
Save Demonid/5392667 to your computer and use it in GitHub Desktop.
@486,13 &PathGenerator::BuildPointPath(const float *startPoint, const float *endPoint) PathGenerator.cpp
else
{
SetActualEndPosition(GetEndPosition());
BuildShortcut();
}
_type = PathType(PATHFIND_NORMAL | PATHFIND_NOT_USING_PATH);
}
+ float startEndDist = Dist3DSqr(GetStartPosition(), GetEndPosition());
+
+
+ //Blade edge arena (mapid)
+ if (_sourceUnit->GetMapId() == 562)
+ {
+ //Your Position & Target Position
+ if (startEndDist < 2000.0f && endPoint[2] <= 6230.803223f && startPoint[2] >= 6230.803223f && endPoint[1] >= 10.000000 && startPoint[1] >= 10.000000f && endPoint[0] >= 247.547917f && endPoint[0] <= 252.298940f) // southeast pillar
+ {
+ // Path X,y,z
+ _pathPoints.resize(4);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(6234.506836f, 256.696106f, 11.400018f);
+ _pathPoints[2] = Vector3(6231.472656f, 252.849335f, 11.400018f);
+ _pathPoints[3] = GetEndPosition();
+ }
+ else if (startEndDist < 2000.0f && endPoint[2] >= 6246.201660f && startPoint[2] <= 6246.201660f && endPoint[1] >= 10.000000f && startPoint[1] >= 10.000000f && endPoint[0] >= 217.677917f && endPoint[0] <= 276.888794f) // northwest pillar
+ {
+ // Path X,y,z
+ _pathPoints.resize(4);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(6242.146484f, 267.531030f, 11.400000f);
+ _pathPoints[2] = Vector3(6246.985352f, 271.076599f, 11.400000f);
+ _pathPoints[3] = GetEndPosition();
+ }
+ if (startEndDist < 2000.0f && startPoint[2] <= 6230.803223f && endPoint[2] >= 6230.803223f && endPoint[1] >= 10.000000 && startPoint[1] >= 10.000000f && startPoint[0] >= 247.547917f && startPoint[0] <= 252.298940f) // southeast pillar
+ {
+ // Path X,y,z
+ _pathPoints.resize(4);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(6231.472656f, 252.849335f, 11.400018f);
+ _pathPoints[2] = Vector3(6234.506836f, 256.696106f, 11.400018f);
+ _pathPoints[3] = GetEndPosition();
+ }
+ else if (startEndDist < 2000.0f && startPoint[2] >= 6246.201660f && endPoint[2] <= 6246.201660f && endPoint[1] >= 10.000000f && startPoint[1] >= 10.000000f && startPoint[0] >= 217.677917f && startPoint[0] <= 276.888.794f) // northwest pillar
+ {
+ // Path X,y,z
+ _pathPoints.resize(4);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(6246.985352f, 271.076599f, 11.400000f);
+ _pathPoints[2] = Vector3(6242.146484f, 267.531030f, 11.400000f);
+ _pathPoints[3] = GetEndPosition();
+ }
+
+ }
+ //Dalaran Sewer
+ if (_sourceUnit->GetMapId() == 617)
+ {
+ if (startPoint[2] >= 1330.033223f && startPoint[1] >= 9.000000f) // Canal 1#
+ {
+ // Path X,y,z
+ _pathPoints.resize(5);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(1332.749268f, 816.274780f, 8.355900f);
+ _pathPoints[2] = Vector3(1325.749268f, 816.602539f, 5.4000000f);
+ _pathPoints[3] = Vector3(1328.749268f, 816.602539f, 3.4000000f);
+ _pathPoints[4] = GetEndPosition();
+ }
+ else if (startPoint[2] <= 1253.904785f && startPoint[1] >= 9.000000f) // Canal 2#
+ {
+ // Path X,y,z
+ _pathPoints.resize(5);
+ _pathPoints[0] = GetStartPosition();
+ _pathPoints[1] = Vector3(1252.425395f, 764.971680f, 8.000000f);
+ _pathPoints[3] = Vector3(1255.425395f, 764.971680f, 5.3559000f);
+ _pathPoints[3] = Vector3(1257.425395f, 764.971680f, 3.3559000f);
+ _pathPoints[4] = GetEndPosition();
+ }
+ }
+ //Custom Point for Bugged Zone
sLog->outDebug(LOG_FILTER_MAPS, "++ PathGenerator::BuildPointPath path type %d size %d poly-size %d\n", _type, pointCount, _polyLength);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment