src/main/java/stellics/helper/CargoHelper.java
package stellics.helper;
import java.util.List;
import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.campaign.CargoAPI;
import com.fs.starfarer.api.campaign.CargoStackAPI;
public class CargoHelper {
public static int calculateCargoQuantity(CargoAPI cargo) {
float cargoSpace = 0;
for (CargoStackAPI stack : cargo.getStacksCopy()) {
cargoSpace += stack.getSize();
}
return (int) cargoSpace;
}
public static int calculateCargoUpkeep(CargoAPI cargo) {
return ConfigHelper.warehouseCargoCost() * calculateCargoSpace(cargo);
}
public static int calculateCargoSpace(CargoAPI cargo) {
float cargoSpace = 0;
for (CargoStackAPI stack : cargo.getStacksCopy()) {
cargoSpace += stack.getCargoSpace();
}
return (int) cargoSpace;
}
public static CargoAPI makeCargoFromStacks(List<CargoStackAPI> cargoStacks) {
CargoAPI cargo = Global.getFactory().createCargo(true);
for (CargoStackAPI cargoStack : cargoStacks) {
cargo.addFromStack(cargoStack);
}
cargo.sort();
return cargo;
}
public static void replaceCargoStacks(CargoAPI cargo, List<CargoStackAPI> cargoStacks) {
cargo.clear();
for (CargoStackAPI cargoStack : cargoStacks) {
cargo.addFromStack(cargoStack);
}
cargo.sort();
}
}