Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package shell;
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.io.PrintWriter;
- import java.util.LinkedList;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- public class Game extends Shell{
- StringBuilder sb = new StringBuilder();
- boolean ablak = false, orgona = false, vege = false;
- int napszak = 1;
- int pont = 0;
- LinkedList <Integer> huhogo = new LinkedList<>();
- LinkedList <Integer> kacago = new LinkedList<>();
- LinkedList <Integer> eneklo = new LinkedList<>();
- public void kiir(){
- if(napszak == 2){
- format("Nappal van.%n");
- if(ablak == false)
- format("Az ablak zarva van!%n");
- else if(ablak == true)
- format("Az ablak nyitvan van!%n");
- if(orgona == true)
- format("Ma orgonaztal mar!%n");
- else if(orgona == false)
- format("Ma nem orgonaztal!%n");
- }
- if(napszak == 1){
- format("Ejjel van.%n");
- if(huhogo.getLast() == 1)
- format("Huhogo huhog!%n");
- else if(huhogo.getLast() == 0)
- format("Huhogo nem huhog!%n");
- if(eneklo.getLast() == 1)
- format("Eneklo enekel!%n");
- else if(eneklo.getLast() == 0)
- format("Eneklo nem enekel!%n");
- if(kacago.getLast() == 1)
- format("Kacago kacag!%n");
- else if(kacago.getLast() == 0)
- format("Kacago nem kacag!%n");
- format("Nyugodtan aludtal %d ejszakat%n", pont);
- if(pont == 3)
- format("A jatek veget ert!%n");
- }
- }
- public Game(){
- // NEW
- addCommand(new Command("new") {
- @Override
- public boolean execute(String... args) {
- if(args.length > 1 || args.length == 1 && !args[0].equals("initial"))
- return false;
- if(args.length == 0){
- huhogo.clear();
- kacago.clear();
- eneklo.clear();
- if(isHooting())
- huhogo.add(1);
- else
- huhogo.add(0);
- if(isLaughing())
- kacago.add(1);
- else
- kacago.add(0);
- if(isSinging())
- eneklo.add(1);
- else
- eneklo.add(0);
- }
- if(args.length == 1 && args[0].equals("initial")){
- huhogo.clear();
- kacago.clear();
- eneklo.clear();
- huhogo.add(1);
- eneklo.add(1);
- kacago.add(1);
- }
- napszak = 1;
- pont = 0;
- ablak = orgona = vege = false;
- sb.append("Uj jatek kezdodott!\n");
- return true;
- }
- });
- // PRINT
- addCommand(new Command("print") {
- @Override
- public boolean execute(String... args) {
- if(args.length > 0)
- return false;
- kiir();
- return true;
- }
- });
- // OPEN
- addCommand(new Command("open"){
- public boolean execute(String... args){
- if(vege == true || napszak == 1 || args.length != 1 || !args[0].equals("window") || ablak == true){
- return false;
- }
- else
- ablak = true;
- sb.append("Kinyitottuk az ablakot!\n");
- return true;
- }
- });
- // CLOSE
- addCommand(new Command("close"){
- public boolean execute(String... args){
- if(vege == true || napszak == 1 || args.length != 1 || !args[0].equals("window") || ablak == false){
- return false;
- }
- else
- ablak = false;
- sb.append("Bezartuk az ablakot!\n");
- return true;
- }
- });
- // PLAY
- addCommand(new Command("play"){
- public boolean execute(String... args){
- if(vege == true || napszak == 1 || args.length != 1 || !args[0].equals("organ") || orgona == true){
- return false;
- }
- else
- orgona = true;
- sb.append("Jatszottunk az orgonan!\n");
- return true;
- }
- });
- // GO
- addCommand(new Command("go"){
- public boolean execute(String... args){
- if(vege == true || napszak == 1 || args.length != 2 || (!args[0].equals("to") && !args[1].equals("bed")))
- return false;
- else{
- int utolsokacag = kacago.getLast();
- int utolsohuhog = huhogo.getLast();
- int utolsoenek = eneklo.getLast();
- napszak = 1;
- // HUHOGO
- huhogo.add(utolsokacag);
- // KACAGO
- if(ablak == false)
- kacago.add(utolsohuhog);
- if(ablak == true){
- if(utolsohuhog == 1)
- kacago.add(0);
- if(utolsohuhog == 0)
- kacago.add(1);
- }
- // ENEKLO
- if(orgona == true && utolsokacag == 0 && utolsoenek == 1)
- eneklo.add(0);
- else if(orgona == true && utolsokacag == 0 && utolsoenek == 0)
- eneklo.add(1);
- else
- eneklo.add(utolsoenek);
- if(huhogo.getLast() == 1)
- format("Huhogo huhogott!%n");
- else if(huhogo.getLast() == 0)
- format("Huhogo nem huhogott%n");
- if(eneklo.getLast() == 1)
- format("Eneklo enekelt!%n");
- else if(eneklo.getLast() == 0)
- format("Eneklo nem enekelt%n");
- if(kacago.getLast() == 1)
- format("Kacago kacagott!%n");
- else if(kacago.getLast() == 0)
- format("Kacago nem kacagott%n");
- sb.append("Aludtunk!\n");
- return true;
- }
- }
- });
- // GET
- addCommand(new Command("get"){
- @Override
- public boolean execute(String... args){
- if(vege == true || napszak == 2 || args.length != 1 || !args[0].equals("up")){
- return false;
- }
- else{
- napszak = 2;
- if(huhogo.getLast() == 1)
- format("Huhogo huhogott!%n");
- else if(huhogo.getLast() == 0)
- format("Huhogo nem huhogott%n");
- if(eneklo.getLast() == 1)
- format("Eneklo enekelt!%n");
- else if(eneklo.getLast() == 0)
- format("Eneklo nem enekelt%n");
- if(kacago.getLast() == 1)
- format("Kacago kacagott!%n");
- else if(kacago.getLast() == 0)
- format("Kacago nem kacagott%n");
- orgona = false;
- format("Ma meg nem orgonaztal!%n");
- if(ablak == false)
- format("Az ablak nincs nyitva!%n");
- if(ablak == true)
- format("Az ablak nyitvan van!%n");
- if(huhogo.getLast() == 0 && kacago.getLast() == 0 && eneklo.getLast() == 0)
- pont++;
- else pont = 0;
- sb.append("Felkeltunk!\n");
- if(pont == 3) vege = true;
- if(vege == true) { format("A jateknak vege, 3 napot zavartalanul aludtal!%n"); sb.append("!!!WIN!!!");}
- return true;
- }
- }
- });
- // SAVE
- addCommand(new Command("save") {
- @Override
- public boolean execute(String... args){
- if(args.length != 1)
- return false;
- else{
- File file = new File(args[0]);
- PrintWriter writer;
- try {
- writer = new PrintWriter(file);
- writer.println(sb.toString());
- writer.close();
- } catch (FileNotFoundException ex) {
- System.err.println("Hiba!\n");
- }
- return true;
- }
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement