diff options
author | quou <quou@disroot.org> | 2024-10-08 19:56:08 +1100 |
---|---|---|
committer | quou <quou@disroot.org> | 2024-10-08 19:56:08 +1100 |
commit | 9add408984464bd6b3cc018bb14c3d69ad0a2898 (patch) | |
tree | dde2af5525fd076d03c5c8e14067a4502aa1051e /player.c | |
parent | b5c69695c9c97c09f7ffa4d5a600d88cc06ee6da (diff) |
New flying enemy that drops arrows
Diffstat (limited to 'player.c')
-rw-r--r-- | player.c | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -201,6 +201,19 @@ void update_player_hurt(Player* p, World* w) { goto took_damage; } } + for (i = 0; i < w->projectile_count; i++) { + const Projectile* pr = &w->projectiles[i]; + Rect r2; + r2.x = pr->x >> fbits; + r2.y = pr->y >> fbits; + r2.w = pr->r.w; + r2.h = pr->r.h; + if (rects_overlap(&r, &r2)) { + p->hp -= enemy_arrow_damage; + inst_effect(w, cx, cy, 0, 0, 32); + goto took_damage; + } + } return; took_damage: p->inv = player_inv_frames; |