Return nil if the raycasts don't hit anything (issue #335)

This commit is contained in:
Bart van Strien
2012-01-08 13:27:10 +01:00
parent c1f68e058d
commit 7c1e1fd0db
2 changed files with 4 additions and 2 deletions
+2 -1
View File
@@ -273,7 +273,8 @@ namespace box2d
input.maxFraction = maxFraction;
b2Transform transform(b2Vec2(x, y), b2Rot(r));
b2RayCastOutput output;
fixture->RayCast(&output, input, childIndex);
if (!fixture->RayCast(&output, input, childIndex))
return 0; // Nothing hit.
lua_pushnumber(L, Physics::scaleUp(output.normal.x));
lua_pushnumber(L, Physics::scaleUp(output.normal.y));
lua_pushnumber(L, output.fraction);
+2 -1
View File
@@ -107,7 +107,8 @@ namespace box2d
input.maxFraction = maxFraction;
b2Transform transform(b2Vec2(x, y), b2Rot(r));
b2RayCastOutput output;
shape->RayCast(&output, input, transform, childIndex);
if (!shape->RayCast(&output, input, transform, childIndex))
return 0; // No hit.
lua_pushnumber(L, Physics::scaleUp(output.normal.x));
lua_pushnumber(L, Physics::scaleUp(output.normal.y));
lua_pushnumber(L, output.fraction);