def _on_collide(self, other: GameObject, direction_of_impact: Vector2, impact_side: ImpactSide, delta_time: float): if other != self._target: Enemy._on_collide(self, other, direction_of_impact, impact_side, delta_time) else: # Collided with player, he need to suffer other: LivingEntity other.take_damage(EnemySettings.HandToHand.DAMAGE) if other.is_dead: self._target = None self.__backoff(direction_of_impact)
def _on_collide(self, other: GameObject, direction_of_impact: Vector2, impact_side: ImpactSide, delta_time: float): if other != self._target: Enemy._on_collide(self, other, direction_of_impact, impact_side, delta_time) else: if impact_side != ImpactSide.TOP: # Collided with player, he need to suffer other: GameObject if impact_side == ImpactSide.BOTTOM: i = 0 other.take_damage(1000) elif impact_side == ImpactSide.RIGHT: i = 1 elif impact_side == ImpactSide.LEFT: i = -1 other.apply_force(EnemySettings.HeavyRock.KNOCKBACK * i) other.take_damage(EnemySettings.HeavyRock.SIDE_DAMAGE) if other.is_dead: self._target = None
def _on_collide(self, other: GameObject, direction_of_impact: Vector2, impact_side: ImpactSide, delta_time: float): if other != self._target: Enemy._on_collide(self, other, direction_of_impact, impact_side, delta_time)