def ground_dps(self) -> Union[int, float]:
        """ Does not include upgrades """
        if self._weapons:
            weapon = next(
                (weapon for weapon in self._weapons if weapon.type in {TargetType.Ground.value, TargetType.Any.value}),
                None,
            )
            if weapon:
                return (weapon.damage * weapon.attacks) / weapon.speed
        return 0
def ground_dps ( self ) -> Union [ int , float ] : if self . _weapons : weapon = next ( ( weapon for weapon in self . _weapons if weapon . type in { TargetType . Ground . value , TargetType . Any . value } ) , None , ) if weapon : return ( weapon . damage * weapon . attacks ) / weapon . speed return 0
Does not include upgrades