Exit e-book
Show all chapters
20
Funcionalidad para analizar una letra introducida por parte del jugador
20. 
Funcionalidad para analizar una letra introducida por parte del jugador

Sign up to our Newsletter

Signing up to our newsletter allows you to read all our ebooks.

    Introducción a la Programación con Efectos Funcionales usando ZIO
    20

    Funcionalidad para analizar una letra introducida por parte del jugador

    Esta funcionalidad es muy sencilla, lo único que hace es analizar el estado previo y el estado posterior a un intento del jugador, para ver si el jugador gana, pierde, si ha adivinado correctamente una letra pero todavía no ganó el juego, si ha adivinado incorrectamente una letra pero todavía no perdió el juego o si ha vuelto a intentar una letra que ya había intentado previamente:

    def analyzeNewGuess(oldState: State, newState: State, guess: Guess): GuessResult =
      if (oldState.guesses.contains(guess)) GuessResult.Unchanged
      else if (newState.playerWon) GuessResult.Won
      else if (newState.playerLost) GuessResult.Lost
      else if (oldState.word.contains(guess.char)) GuessResult.Correct
      else GuessResult.Incorrect
    PREVIOUS
    Chapter
    19
    NEXT
    Chapter
    21