Bevy, while an ECS based library, can easily be used to program a game in a more traditional way (excuse my formatting):
struct Player { health: Health, }
// ECS style
fn update_player(query: Query<&mut Player>) {
}
// Traditional "OOP" style
impl Component for Player {
fn update() {
}
}