Coverage Summary for Class: MenuScreen (com.mygdx.game.UI)

Class Method, % Line, %
MenuScreen 0% (0/6) 0% (0/46)
MenuScreen$1 0% (0/2) 0% (0/3)
MenuScreen$2 0% (0/2) 0% (0/2)
MenuScreen$3 0% (0/2) 0% (0/3)
Total 0% (0/12) 0% (0/54)


1 package com.mygdx.game.UI; 2  3 import com.badlogic.gdx.Gdx; 4 import com.badlogic.gdx.Preferences; 5 import com.badlogic.gdx.scenes.scene2d.Actor; 6 import com.badlogic.gdx.scenes.scene2d.ui.Label; 7 import com.badlogic.gdx.scenes.scene2d.ui.SelectBox; 8 import com.badlogic.gdx.scenes.scene2d.ui.Table; 9 import com.badlogic.gdx.scenes.scene2d.ui.TextButton; 10 import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; 11 import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; 12 import com.mygdx.game.Managers.GameDifficulty; 13 import com.mygdx.game.Managers.ResourceManager; 14 import com.mygdx.game.Managers.SaveManager; 15 import com.mygdx.game.PirateGame; 16  17 import static com.mygdx.utils.Constants.VIEWPORT_HEIGHT; 18  19 /** 20  * Contains widgets defining the start-of-game menu screen. 21  */ 22 public class MenuScreen extends Page { 23  private SelectBox<String> hardness; 24  25  /** 26  * Creates a Menu Screen 27  * @param parent The game object this screen is viewing 28  */ 29  public MenuScreen(PirateGame parent) { 30  super(parent); 31  } 32  33  /** 34  * Create menu widgets such as start button, labels, etc. 35  */ 36  @Override 37  protected void CreateActors() { 38  Table t = new Table(); 39  t.setFillParent(true); 40  41  float space = VIEWPORT_HEIGHT * 0.15f; 42  43  t.setBackground(new TextureRegionDrawable(ResourceManager.getTexture("menuBG.jpg"))); 44  Label l = new Label("Pirates the movie the game", parent.skin); 45  l.setFontScale(2); 46  t.add(l).top().spaceBottom(space); 47  t.row(); 48  49  hardness = new SelectBox<>(parent.skin); 50  51  52  String[] values = new String[]{"Easy", "Regular", "Hard"}; 53  hardness.setItems(values); 54  hardness.setSelected(values[1]); 55  t.add(new Label("Difficulty:", parent.skin)); 56  t.row(); 57  t.add(hardness); 58  t.row(); 59  t.add().pad(30); 60  t.row(); 61  TextButton play = new TextButton("Play", parent.skin); 62  play.addListener(new ChangeListener() { 63  @Override 64  public void changed(ChangeEvent event, Actor actor) { 65  // start of assessment 2 change 66  parent.setDifficulty(hardness.getSelected()); 67  parent.StartGame(); 68  //end of assessment 2 change 69  } 70  }); 71  t.add(play).top().size(100, 25).spaceBottom(space); 72  t.row(); 73  t.add().pad(20); 74  t.row(); 75  Preferences prefs = Gdx.app.getPreferences("pirate/GameSave_game_1"); 76  String resume = "Resume"; 77  if (prefs.get().isEmpty()) { 78  resume = ""; 79  } 80  TextButton playLoad = new TextButton(resume, parent.skin); 81  playLoad.addListener(new ChangeListener() { 82  @Override 83  public void changed(ChangeEvent event, Actor actor) { 84  // start of assessment 2 change 85  parent.LoadGame(); 86  //end of assessment 2 change 87  } 88  }); 89  t.add(playLoad).top().size(100, 25).spaceBottom(space); 90  t.row(); 91  t.add().pad(20); 92  t.row(); 93  TextButton quit = new TextButton("Quit", parent.skin); 94  quit.addListener(new ChangeListener() { 95  @Override 96  public void changed(ChangeEvent event, Actor actor) { 97  Gdx.app.exit(); 98  System.exit(0); 99  } 100  }); 101  t.add(quit).size(100, 25).top().spaceBottom(space); 102  103  t.top(); 104  105  actors.add(t); 106  } 107  108  /** 109  * Shows the Menu Screen 110  */ 111  @Override 112  public void show() { 113  super.show(); 114  } 115  116  /** 117  * Hides the Menu Screen 118  */ 119  @Override 120  public void hide() { 121  super.hide(); 122  } 123  124  /** 125  * Resizes the viewport 126  * @param width The horizontal dimension of the viewport 127  * @param height The vertical dimension of the viewport 128  */ 129  @Override 130  public void resize(int width, int height) { 131  super.resize(width, height); 132  Table t = (Table) actors.get(0); 133  t.setBackground(new TextureRegionDrawable(ResourceManager.getTexture("menuBG.jpg"))); // prevent the bg being stretched 134  } 135 }