Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CheckAABBvLineCollision() [1/2]

static bool Terraria.Collision.CheckAABBvLineCollision ( Vector2 aabbPosition,
Vector2 aabbDimensions,
Vector2 lineStart,
Vector2 lineEnd )
inlinestatic

Definition at line 198 of file Collision.cs.

199 {
200 int num;
202 {
203 return true;
204 }
205 int num2;
207 {
208 if ((num2 & num) != 0)
209 {
210 return false;
211 }
212 if (((uint)num2 & 5u) != 0)
213 {
214 float num3 = aabbPosition.X;
215 if (((uint)num2 & 4u) != 0)
216 {
217 num3 += aabbDimensions.X;
218 }
219 lineStart.Y += (num3 - lineStart.X) * (lineEnd.Y - lineStart.Y) / (lineEnd.X - lineStart.X);
220 lineStart.X = num3;
221 }
222 else
223 {
224 float num4 = aabbPosition.Y;
225 if (((uint)num2 & 8u) != 0)
226 {
227 num4 += aabbDimensions.Y;
228 }
229 lineStart.X += (num4 - lineStart.Y) * (lineEnd.X - lineStart.X) / (lineEnd.Y - lineStart.Y);
230 lineStart.Y = num4;
231 }
232 }
233 return true;
234 }
static int collisionOutcode(Vector2 aabbPosition, Vector2 aabbDimensions, Vector2 point)
Definition Collision.cs:166

References Terraria.Collision.collisionOutcode().

Referenced by Terraria.Collision.CheckAABBvLineCollision2(), Terraria.Projectile.Colliding(), and Terraria.GameContent.PortalHelper.TryGoingThroughPortals().