Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import biuoop.GUI;
- import biuoop.KeyboardSensor;
- import java.io.FileReader;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * A Ass6Game.
- *
- * @author roy segev
- */
- public class Ass6Game {
- /**
- * @param args which get parmeters from the cmd.
- */
- public static void main(String[] args) {
- GUI g = new GUI("Interface", 800, 600);
- KeyboardSensor key = g.getKeyboardSensor();
- AnimationRunner runner = new AnimationRunner(g);
- HighScoresTable scoreTable = new HighScoresTable(15);
- while (true) {
- GameFlow game = new GameFlow(runner, key, g, scoreTable);
- Menu<Task<Void>> menu = new MenuAnimation<Task<Void>>("Menu", runner, key);
- //here we are going to take care of our menue.
- SubMenuFromFile sub = new SubMenuFromFile();
- List<LevelInformation> levels = new ArrayList<>();
- LevelSpecificationReader reader = new LevelSpecificationReader();
- try {
- sub.fromReader(new FileReader("level_sets.txt"));
- } catch (Exception ex) {
- System.out.println("");
- }
- try {
- levels.addAll(reader.fromReader(new FileReader("definitions/jungle")));
- } catch (Exception e) {
- System.out.println("");
- }
- try {
- levels.addAll(reader.fromReader(new FileReader("definitions/moon")));
- } catch (Exception e) {
- System.out.println("");
- }
- try {
- levels.addAll(reader.fromReader(new FileReader("definitions/level_definition")));
- } catch (Exception e) {
- System.out.println("");
- }
- try {
- levels.addAll(reader.fromReader(new FileReader("definitions/finalHourV2")));
- } catch (Exception e) {
- System.out.println("");
- }
- List<LevelInformation> easyLevels = new ArrayList<LevelInformation>();
- easyLevels = new LevelsForSelection("a", sub).levelBuilder();
- List<LevelInformation> mediumlevels = new ArrayList<LevelInformation>();
- mediumlevels = new LevelsForSelection("b", sub).levelBuilder();
- List<LevelInformation> hardlevels = new ArrayList<LevelInformation>();
- hardlevels = new LevelsForSelection("c", sub).levelBuilder();
- menu.addSelection("a", "Press to see the scores", new ShowHiScoresTask(runner,
- new KeyPressStoppableAnimation(key, "m", new HighScoresAnimation(scoreTable, key))));
- menu.addSelection("b", "Press to close", new CloseGameTask(g));
- menu.addSelection("c", "Press to Start all levels", new StartGameTask(game, levels));
- Menu<Task<Void>> levelSetsMenu = new MenuAnimation("Level Set Selection", runner, key);
- menu.addSubMenu("s", "Select A Level Set", levelSetsMenu);
- // Adding sub menu level selections.
- levelSetsMenu.addSelection(sub.getKeys().get(0), sub.getMessage().get(0),
- new StartGameTask(game, easyLevels));
- levelSetsMenu.addSelection(sub.getKeys().get(1), sub.getMessage().get(1),
- new StartGameTask(game, mediumlevels));
- levelSetsMenu.addSelection(sub.getKeys().get(2), sub.getMessage().get(2),
- new StartGameTask(game, hardlevels));
- runner.run(menu);
- Task<Void> task = menu.getStatus();
- task.run();
- menu.reset();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement