Coverage Summary for Class: Player (com.mygdx.game.Entitys)

Class Class, % Method, % Line, %
Player 100% (1/1) 100% (6/6) 100% (15/15)


1 package com.mygdx.game.Entitys; 2  3 import com.badlogic.gdx.math.Vector2; 4 import com.badlogic.gdx.utils.TimeUtils; 5 import com.mygdx.game.Components.Pirate; 6 import com.mygdx.game.Components.PlayerController; 7 import com.mygdx.game.Faction; 8 import com.mygdx.game.Managers.GameManager; 9 import com.mygdx.game.UI.EndScreen; 10 import com.mygdx.utils.Utilities; 11  12 /** 13  * Player's ship entity. 14  */ 15 public class Player extends Ship { 16  private long lastPointTime; 17  18  /** 19  * Adds ship with PlayerController component and sets its speed. 20  * 21  * @param speed of movement across map 22  */ 23  private Player(float speed) { 24  super(); 25  26  PlayerController pc = new PlayerController(this, speed); 27  addComponent(pc); 28  setName("Player"); 29  30  lastPointTime = TimeUtils.millis() / 1000; 31  } 32  33  /** 34  * Adds ship with PlayerController component, loading its speed from GameManager settings. 35  */ 36  public Player() { 37  this(GameManager.getSettings().get("starting").getFloat("playerSpeed")); 38  } 39  40  /** 41  * Is run once per frame 42  */ 43  @Override 44  public void update(){ 45  super.update(); 46  isAlive(); 47  long current = TimeUtils.millis() / 1000; 48  if (current > lastPointTime) { 49  points(1); 50  } 51  lastPointTime = current; 52  } 53  54  /** 55  * Cleans up hanging data parts 56  */ 57  @Override 58  public void cleanUp() { 59  super.cleanUp(); 60  } 61  62  /** 63  * @return the amount of ammo available to the player 64  */ 65  public int getAmmo() { 66  return getComponent(Pirate.class).getAmmo(); 67  } 68  69  /** 70  * Added for Assessment 2 71  * @return the Faction attached to the pirate component of this object 72  */ 73  public Faction getFaction() { 74  return getComponent(Pirate.class).getFaction(); 75  } 76  77 }