diff --git a/src/npc/ai/egg_corridor.rs b/src/npc/ai/egg_corridor.rs index 643be6c..90e29dd 100644 --- a/src/npc/ai/egg_corridor.rs +++ b/src/npc/ai/egg_corridor.rs @@ -138,8 +138,8 @@ impl NPC { if self.action_counter >= 8 && self.target_x >= 100 - && self.x - 0x8000 < player.x - && self.x + 0x8000 > player.x + && self.x - 0x6000 < player.x + && self.x + 0x6000 > player.x && self.y - 0xa000 < player.y && self.y + 0xa000 > player.y { diff --git a/src/npc/ai/igor.rs b/src/npc/ai/igor.rs index 698441f..3ddd63c 100644 --- a/src/npc/ai/igor.rs +++ b/src/npc/ai/igor.rs @@ -119,11 +119,14 @@ impl NPC { self.action_counter2 += 1; if self.action_counter2 < 3 || self.life > 150 { self.action_counter3 = 0; + + self.face_player(player); } else { self.action_counter3 = 1; - } - self.face_player(player); + self.face_player(player); + self.direction = self.direction.opposite(); + } } self.action_counter += 1; @@ -373,6 +376,12 @@ impl NPC { _ => (), } + self.vel_y += 0x40; + self.clamp_fall_speed(); + + self.x += self.vel_x; + self.y += self.vel_y; + Ok(()) }