Android Open Source - ZorbsCity Storage






From Project

Back to project page ZorbsCity.

License

The source code is released under:

GNU General Public License

If you think the Android project ZorbsCity listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package jonathan.geoffroy.zorbscity.model.cityObjects.buildings;
//from  w  w  w .  j  a v a  2s.c o  m
import jonathan.geoffroy.zorbscity.model.cityObjects.resources.Resource;
import jonathan.geoffroy.zorbscity.model.helpers.ResourcesList;

public abstract class Storage extends Construction {
  Resource resources[];

  /**
   * Auto-generated serial (using eclipse)
   */
  private static final long serialVersionUID = 1141655801387214928L;

  public Storage() {
    super();
    resources = new Resource[ResourcesList.NB_RESOURCES];
  }

  /**
   * Add the resource into the Deposit
   * If it isn't enough getSpace(), don't add nothing and return false
   * @param r the resource to add
   * @return true if the resource have been added, false otherwise
   */
  public boolean add(Resource r) {
    if(canAdd(r)) {
      int resourceType = r.getResourceNumber();
      Resource into = resources[resourceType];
      if(into == null) {
        resources[resourceType] = r;
      }
      else {
        into.addAmount(r.getAmount());
      }
      return true;
    }
    return false;
  }

  /**
   * return the sum of amounts of all resources stocked into this Deposit 
   */
  public int size() {
    int size = 0;
    for(Resource r : resources) {
      if(r != null) {
        size += r.getAmount();
      }
    }
    assert(size <= getSpace());
    return size;
  }

  /**
   * 
   * @return the free getSpace()
   */
  public int freeSpace() {
    assert(getSpace() - size() >= 0);
    return getSpace() - size();
  }

  /**
   * 
   * @param r
   * @return true if <r> can can be fully stored into this Deposit
   */
  public boolean canAdd(Resource r) {
    return getSpace() >= size() + r.getAmount();
  }

  public abstract int getSpace();
}




Java Source Code List

jonathan.geoffroy.zorbscity.MainActivity.java
jonathan.geoffroy.zorbscity.Main.java
jonathan.geoffroy.zorbscity.ZorbCityGame.java
jonathan.geoffroy.zorbscity.client.GwtLauncher.java
jonathan.geoffroy.zorbscity.model.City.java
jonathan.geoffroy.zorbscity.model.Galaxy.java
jonathan.geoffroy.zorbscity.model.SimulatorEvent.java
jonathan.geoffroy.zorbscity.model.Simulator.java
jonathan.geoffroy.zorbscity.model.TimeLine.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Building.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Construction.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Enterprise.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.House.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Road.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Storage.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.Structure.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.enterprises.ClothesFactory.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.enterprises.PowerHouse.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.houses.FreeHouse.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.houses.SimpleHouse.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.houses.TentHouse.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.storages.FoodStorage.java
jonathan.geoffroy.zorbscity.model.cityObjects.buildings.storages.SecondaryStorage.java
jonathan.geoffroy.zorbscity.model.cityObjects.people.DeliveryMan.java
jonathan.geoffroy.zorbscity.model.cityObjects.people.Person.java
jonathan.geoffroy.zorbscity.model.cityObjects.resources.Cloth.java
jonathan.geoffroy.zorbscity.model.cityObjects.resources.Power.java
jonathan.geoffroy.zorbscity.model.cityObjects.resources.Resource.java
jonathan.geoffroy.zorbscity.model.cityObjects.resources.Wheat.java
jonathan.geoffroy.zorbscity.model.cityObjects.resources.Wool.java
jonathan.geoffroy.zorbscity.model.helpers.Coord2D.java
jonathan.geoffroy.zorbscity.model.helpers.NeededList.java
jonathan.geoffroy.zorbscity.model.helpers.ResourcesList.java
jonathan.geoffroy.zorbscity.model.simulator.events.ConsumeNeededResources.java
jonathan.geoffroy.zorbscity.model.simulator.events.ObjectCreatedEvent.java
jonathan.geoffroy.zorbscity.model.simulator.events.WeaknessEvent.java
jonathan.geoffroy.zorbscity.view.CityView.java
jonathan.geoffroy.zorbscity.view.shell.CityShellView.java