package hangman.game;

import hangman.ManagedMain;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

/**
 *
 * @author Andre Heidt
 */
@ManagedBean(name = "game")
@SessionScoped
public class ManagedGamesession {

    String word;
    String display;
    String entry = "";
    int versuche=0;
    boolean win = false;

    /** Creates a new instance of ManagedGamesession */
    public ManagedGamesession() {
        start();
    }

    public int getVersuche() {
        return versuche;
    }

    public String getDisplay() {


        StringBuffer a = new StringBuffer();

        for (int i = 0; i < entry.length() && i < word.length(); i++) {
            if (word.charAt(i) == entry.charAt(i)) {
                a.append(word.charAt(i));
            } else {
                a.append('*');
            }
        }

        int difference = word.length() - entry.length();
        if (difference > 0) {
            for (int j = 0; j < difference; j++) {
                a.append('*');
            }
        }
        entry="";
        display = a.toString();
        return display;
    }

    public String versuchen() {
        versuche++;
        if (word.equals(entry)) {
            win = true;
        }
        return "./spiel.xhtml";
    }

    public String end(){
        start();
        return "./index.xhtml";
    }

    public void setEntry(String entry) {
        this.entry = entry;
    }

    public String getEntry() {
        return entry;
    }

    public boolean isWin() {
        return win;
    }

    public int getSize(){return word.length();}

    public void start() {
        word = ManagedMain.getWortspeicher().getWord();
        versuche=0;
        entry="";
        win=false;
       // return "./spiel.xhtml";
    }
}
