try to fix line

master
Christopher 2020-06-19 12:45:28 +02:00
parent 1c19deb736
commit a773c28a73
1 changed files with 34 additions and 33 deletions

View File

@ -233,47 +233,48 @@ namespace OpenSim.Modules.PathFinding
return; return;
} }
Vector3 _PointA = new Vector3(0, 0, 0);
Vector3 _PointB = new Vector3(0, 0, 0);
if ((int)start.X != (int)target.X) if ((int)start.X != (int)target.X)
{ {
int difference = (int)start.X - (int)target.X; if((int)start.X < (int)target.X)
{
_PointA = start;
_PointB = target;
}
while (difference != 0) if ((int)start.X > (int)target.X)
{ {
Vector3 _position = start; _PointA = target;
if (difference < 0) _PointB = start;
{
_position.X = _position.X - 1;
setPositionData(requestData, _position, walkable, 0);
difference++;
} }
else
while ((int)_PointA.X != _PointB.X)
{ {
_position.X = _position.X + 1; setPositionData(requestData, _PointA, walkable, 0);
setPositionData(requestData, _position, walkable, 0); _PointA.X = (int)_PointA.X + 1;
difference--;
}
} }
} }
if ((int)start.Y != (int)target.Y) if ((int)start.Y != (int)target.Y)
{ {
int difference = (int)start.Y - (int)target.Y; if ((int)start.Y < (int)target.Y)
{
_PointA = start;
_PointB = target;
}
while (difference != 0) if ((int)start.Y > (int)target.Y)
{ {
Vector3 _position = start; _PointA = target;
if (difference < 0) _PointB = start;
{
_position.Y = _position.Y - 1;
setPositionData(requestData, _position, walkable, 0);
difference++;
} }
else
while ((int)_PointA.Y != _PointB.Y)
{ {
_position.Y = _position.Y + 1; setPositionData(requestData, _PointA, walkable, 0);
setPositionData(requestData, _position, walkable, 0); _PointA.Y = (int)_PointA.Y + 1;
difference--;
}
} }
} }
@ -327,7 +328,7 @@ namespace OpenSim.Modules.PathFinding
#region Script Funktions #region Script Funktions
[ScriptInvocation] [ScriptInvocation]
public string osGeneratePathEnv(UUID hostID, UUID scriptID, int size) public string osGeneratePathEnv(UUID hostID, UUID scriptID)
{ {
UUID requestKey = UUID.Random(); UUID requestKey = UUID.Random();