Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package shell;
- import java.io.BufferedReader;
- import java.io.FileNotFoundException;
- import java.io.FileReader;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import java.util.Random;
- import java.util.Set;
- import java.util.TreeSet;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- public class NextGame extends Shell {
- public List<String> lista = new ArrayList<>();
- public int hiba = 0;
- public String veletlen = null;
- public Set<Character> set = new TreeSet<>();
- public NextGame(){
- addCommand(new Command("load"){
- @Override
- public boolean execute(String... args){
- if(args.length != 1)
- return false;
- else{
- try {
- lista.clear();
- veletlen = null;
- String sor;
- BufferedReader br = new BufferedReader(new FileReader(args[0]));
- while((sor = br.readLine()) != null){
- lista.add(sor);
- }
- } catch (FileNotFoundException ex) {
- Logger.getLogger(NextGame.class.getName()).log(Level.SEVERE, null, ex);
- } catch (IOException ex) {
- Logger.getLogger(NextGame.class.getName()).log(Level.SEVERE, null, ex);
- }
- return true;
- }
- }
- });
- addCommand(new Command("new"){
- @Override
- public boolean execute(String... args){
- if(lista.size() == 0)
- return false;
- else{
- Random rand = new Random();
- int sorszam = rand.nextInt(lista.size());
- veletlen = lista.get(sorszam);
- hiba = 0;
- set.clear();
- return true;
- }
- }
- });
- addCommand(new Command("print"){
- @Override
- public boolean execute(String... args){
- int nemtalalt = 0;
- if(lista.size() == 0 || veletlen == null)
- return false;
- else{
- try {
- System.out.println(getHangman(hiba));
- for (int i = 0; i < veletlen.length(); i++) {
- if(set.contains(veletlen.charAt(i)))
- format("%c", veletlen.charAt(i));
- else{
- format("_ ");
- nemtalalt++;
- }
- }
- //format("%n(%s)%n", veletlen);
- format("%nA probalt karakterek: %s%n", set.toString());
- if(nemtalalt == 0)
- format("Nyertel!%nKitalaltad a keresett szot!%n");
- } catch (PhaseNumberOutOfBoundsException ex) {
- Logger.getLogger(NextGame.class.getName()).log(Level.SEVERE, null, ex);
- }
- return true;
- }
- }
- });
- addCommand(new Command("letter"){
- @Override
- public boolean execute(String... args){
- if(args.length == 0 || args[0].length() != 1 || lista.isEmpty() || veletlen == null || !Character.isAlphabetic(args[0].charAt(0)) || set.contains(args[0].toUpperCase().charAt(0)) || hiba == 5)
- return false;
- else{
- if(!veletlen.contains(args[0].toUpperCase())){
- hiba++;
- }
- if(hiba == 5)
- format("Vesztettel, elerted az 5 hibalehetőseget!%nA keresett szo %s volt%n", veletlen.toUpperCase() );
- set.add(args[0].toUpperCase().charAt(0));
- return true;
- }
- }
- });
- }
- }
Add Comment
Please, Sign In to add comment