package seatrading.main;

/**
 * @author Daniel "3ICE" Berezvai
 */
public class Oil {

  private String name;
  private int amount;
  static final String[] Oils = {"Crude oil", "Gasoline", "Heating oil",};

  public Oil(String name, int amount) {
    this.name = name;
    this.amount = amount;
  }

  public int getAmount() {
    return amount;
  }

  public void addAmount(double amount) {
    this.amount += amount;
  }

  /**
   * Doesn't go below zero.
   *
   * @param amount
   * @return the amount successfully removed. No less, no more.
   */
  public int rmAmount(int amount) {
    if (this.amount >= amount) {//We can subtract...
      this.amount -= amount;//So we subtract.
      return amount;
    } else {
      int tmp = this.amount;
      this.amount = 0;
      return tmp;
    }
  }

  public String getName() {
    return name;
  }

  /**
   *
   * @return a random name from a predefined list.
   */
  public static String rndName() {
    return Oils[SeaTrading.rnd.nextInt(Oils.length)];
  }

  /**
   * Oil weighs 10 times its amount.
   *
   */
  public int getWeight() {
    return amount * 10;
  }

  public String toString() {
    return amount + " m³ " + name;
  }
}
