Only show piece tutorials once

main
Elijah C. Voigt 2 years ago
parent 6e31ce5304
commit 6e68b2fc2a

@ -262,22 +262,25 @@ fn step(
let ownership_check = !ownership_done && transitions.iter().count() > 0; let ownership_check = !ownership_done && transitions.iter().count() > 0;
let jump_done = seen.0.contains(&TutorialState::PieceJump); let jump_done = seen.0.contains(&TutorialState::PieceJump);
let queen_selected = pieces.iter().filter(|&p| *p == game::Piece::Queen).count() > 0; let queen_selected = pieces.iter().filter(|&p| *p == game::Piece::Queen).count() > 0;
let queen_seen = seen.0.contains(&TutorialState::PieceQueen);
let drone_selected = pieces.iter().filter(|&p| *p == game::Piece::Drone).count() > 0; let drone_selected = pieces.iter().filter(|&p| *p == game::Piece::Drone).count() > 0;
let drone_seen = seen.0.contains(&TutorialState::PieceDrone);
let pawn_selected = pieces.iter().filter(|&p| *p == game::Piece::Pawn).count() > 0; let pawn_selected = pieces.iter().filter(|&p| *p == game::Piece::Pawn).count() > 0;
let pawn_seen = seen.0.contains(&TutorialState::PiecePawn);
// A piece is selected, so talk about it // A piece is selected, so talk about it
if piece_selected { if piece_selected {
// When a queen is selected for the first time... // When a queen is selected for the first time...
if queen_selected { if queen_selected && !queen_seen {
TutorialState::PieceQueen TutorialState::PieceQueen
// When a drone is selected for the first time... // When a drone is selected for the first time...
} else if drone_selected { } else if drone_selected && !drone_seen {
TutorialState::PieceDrone TutorialState::PieceDrone
// When a pawn is selected for the first time... // When a pawn is selected for the first time...
} else if pawn_selected { } else if pawn_selected && !pawn_seen {
TutorialState::PiecePawn TutorialState::PiecePawn
} else { } else {
panic!("This shouldn't be possible...!") TutorialState::Empty
} }
// There are no pieces selected // There are no pieces selected
} else { } else {

Loading…
Cancel
Save