texas_rust_em 0.1.2

Uma biblioteca para gerenciar baralhos e cartas de texas hold'em em Rust., definindo tipos e métodos que auxiliam no uso para o jogo
Documentation
  • Coverage
  • 1.79%
    1 out of 56 items documented1 out of 18 items with examples
  • Size
  • Source code size: 28.89 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 3.67 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 22s Average build duration of successful builds.
  • all releases: 20s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • MikaelMenez/Texas_rust_em
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • MikaelMenez

Texas Rust'em 🃁

Texas Rust'em é uma biblioteca leve e idiomática em Rust para gerenciamento de cartas, baralhos e jogadores, projetada especificamente para lógica de poker Texas Hold'em.

A biblioteca utiliza caracteres Unicode reais para renderizar as cartas no terminal, proporcionando uma experiência visual rica durante o desenvolvimento e execução de jogos CLI.

✨ Funcionalidades

  • Representação Visual: Cartas renderizadas com símbolos Unicode (ex: 🂡, 🂮).
  • Gerenciamento de Baralho: Criação de baralho padrão de 52 cartas, embaralhamento e remoção segura (pop).
  • Entidades de Poker: Tipos integrados para Player, Blinder (Dealer, Small Blind, Big Blind) e Card.
  • Ordenação: Implementação de Ord e PartialOrd para comparação direta de força entre cartas.

🚀 Instalação

Adicione ao seu Cargo.toml:

[dependencies]
texas_rust_em = "0.1.0"
rand = "0.9" # Necessário para embaralhar

🛠️ Como usar

Aqui está um exemplo rápido de como criar um baralho, embaralhá-lo e distribuir cartas para um jogador:

use texas_rust_em::texas_rust_em::{Card, Deck, Player, Blinder};

fn main() -> Result<(), texas_rust_em::texas_rust_em::DeckError> {
    // 1. Criar e inicializar um baralho padrão
    let mut baralho = Card::deck();
    
    // 2. Embaralhar
    Card::suffle(&mut baralho);
    
    // 3. Criar um jogador (ex: Dealer)
    let mut jogador = Player::new(Blinder::Dealer);
    
    // 4. Distribuir a mão (2 cartas)
    jogador.get_hand(&mut baralho)?;
    
    // 5. Exibir resultados
    println!("Baralho restante: {}", baralho);
    println!("Jogador: {}", jogador);

    Ok(())
}

🎴 Representação de Cartas

A biblioteca mapeia as cartas para o bloco de símbolos de cartas do Unicode (U+1F0A0 a U+1F0DF). Ao imprimir uma carta ou o baralho, você verá os símbolos reais, facilitando o debug visual.

⚖️ Licença

Distribuído sob as licenças MIT ou Apache-2.0. Veja os arquivos LICENSE-MIT e LICENSE-APACHE para mais detalhes.


Dicas para o seu Cargo.toml antes de publicar:

Como seu código usa a crate rand, certifique-se de que as dependências estão assim no arquivo oficial:

[package]
name = "texas_rust_em"
version = "0.1.0"
edition = "2021"
description = "A Texas Hold'em poker engine with Unicode card support"
license = "MIT OR Apache-2.0"
repository = "https://github.com/seu-usuario/texas_rust_em"
keywords = ["poker", "cards", "game", "texas-holdem"]
categories = ["games"]

[dependencies]
rand = "0.9" # Ou a versão que você configurou

Gostaria que eu fizesse alguma alteração específica na descrição ou nos exemplos?