|
|
@ -68,13 +68,12 @@ namespace SemiColinGames { |
|
|
|
Vector2 closestHit = Vector2.Add(eyePos, rotated); |
|
|
|
float hitTime = 1f; |
|
|
|
|
|
|
|
Vector2 halfTileSize = new Vector2(World.TileSize / 2.0f, World.TileSize / 2.0f); |
|
|
|
for (int j = 0; j < collisionTargets.Length; j++) { |
|
|
|
AABB box = collisionTargets[j]; |
|
|
|
if (Math.Abs(box.Position.X - npc.Position.X) > visionRange + halfTileSize.X) { |
|
|
|
if (Math.Abs(box.Position.X - npc.Position.X) > visionRange + box.HalfSize.X) { |
|
|
|
continue; |
|
|
|
} |
|
|
|
Vector2 delta = Vector2.Add(halfTileSize, Vector2.Subtract(box.Position, eyePos)); |
|
|
|
Vector2 delta = Vector2.Add(box.HalfSize, Vector2.Subtract(box.Position, eyePos)); |
|
|
|
if (delta.LengthSquared() > visionRangeSq) { |
|
|
|
continue; |
|
|
|
} |
|
|
|