Compare commits

...

2 commits

Author SHA1 Message Date
Henri Bourcereau b624629cad doc: rêveries 2024-09-27 15:35:26 +02:00
Henri Bourcereau fb3e2678fc feat: relevé 2024-09-27 15:35:26 +02:00
2 changed files with 23 additions and 10 deletions

View file

@ -1,3 +1,5 @@
# traité
En 12 chapitres (trous) de 12 sous-chapitres (points / niveaux de compréhension) ? En 12 chapitres (trous) de 12 sous-chapitres (points / niveaux de compréhension) ?
Célébration -> s'inspirer du _petit traité invitant à la découverte de l'art subtil du go_ Célébration -> s'inspirer du _petit traité invitant à la découverte de l'art subtil du go_
@ -30,3 +32,9 @@ L'encyclopédie
- le dictionnaire du trictrac - le dictionnaire du trictrac
- fabriquer un boîtier/plateau de jeu - fabriquer un boîtier/plateau de jeu
- jouer en ligne - jouer en ligne
## rêveries
Trictrac : un domaine grand et complexe, un univers dans lequel on peut s'absorber. Un jeu geek parfait. Qui a la noblesse d'avoir été populaire, qui a la noblesse de règles nécessitant apprentissage et presse companionage.
Pourquoi s'investir dans ce genre d'activité ? Toucher un absolu. Sauver de la mort une pépite. Entrer dans le monde des morts comme Orphée ou Ulysse ?
Et maîtriser un vocabulaire, des gestes, des règles de plus en plus fine, discutées au fil des siècles.

View file

@ -301,8 +301,8 @@ impl GameState {
return false; return false;
} }
// Check the turn stage // Check the turn stage
if self.turn_stage != TurnStage::HoldOrGoChoice if self.turn_stage != TurnStage::Move
|| self.turn_stage != TurnStage::Move && self.turn_stage != TurnStage::HoldOrGoChoice
{ {
return false; return false;
} }
@ -453,15 +453,20 @@ impl GameState {
/// Set a new pick up ('relevé') after a player won a hole and choose to 'go', /// Set a new pick up ('relevé') after a player won a hole and choose to 'go',
/// or after a player has bore off (took of his men off the board) /// or after a player has bore off (took of his men off the board)
fn new_pick_up(&mut self) { fn new_pick_up(&mut self) {
// réinitialisation dice_roll_count self.players.iter_mut().for_each(|(_id, p)| {
self.players.iter_mut().map(|(id, p)| p.dice_roll_count = 0); // reset points
// joueur actif = joueur ayant sorti ses dames (donc deux jeux successifs) p.points = 0;
// reset dice_roll_count
p.dice_roll_count = 0;
// reset bredouille
p.can_bredouille = true;
// switch colors
p.color = p.color.opponent_color();
});
// joueur actif = joueur ayant sorti ses dames ou est parti (donc deux jeux successifs)
self.turn_stage = TurnStage::RollDice; self.turn_stage = TurnStage::RollDice;
// reset board
// TODO: self.board = Board::new();
// - échanger les couleurs
// - remettre les dames des deux joueurs aux talons
// - jeton bredouille replaçé sur joueur actif (?)
} }
fn get_rollresult_points(&self, dice: &Dice) -> (u8, u8) { fn get_rollresult_points(&self, dice: &Dice) -> (u8, u8) {