aboutsummaryrefslogtreecommitdiff
path: root/src/bullets.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bullets.c')
-rw-r--r--src/bullets.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/bullets.c b/src/bullets.c
index 1619111..ec5908f 100644
--- a/src/bullets.c
+++ b/src/bullets.c
@@ -43,3 +43,16 @@ BulletHitInfo shootBullet(World * world, Bullet bullet) {
.hitId = ENTITY_NONE,
};
}
+
+BulletHitInfo shootBulletAtEntity(Entity * entity, Bullet bullet) {
+ RayCollision collision = traceRayToEntity(*entity, bullet.ray);
+
+ if (collision.hit)
+ return handleBulletHit(entity, bullet);
+
+ return (BulletHitInfo){
+ .hit = false,
+ .killed = false,
+ .hitId = ENTITY_NONE,
+ };
+}