uebung05 ende

This commit is contained in:
2025-05-13 18:13:15 +02:00
parent cd913d2703
commit 6efe637f23
19 changed files with 518 additions and 8 deletions

View File

@@ -0,0 +1,45 @@
package logistics;
import logistics.material.BulletBelts;
import logistics.material.LiterDiesel;
import logistics.quantities.NeedCollector;
import logistics.storage.FloatStorage;
import logistics.storage.IntStorage;
public class Truck extends Vehicle {
private final FloatStorage tank;
private final IntStorage bullets;
public Truck(String name, float diesel, int bullets) {
super(name);
this.tank = new FloatStorage(diesel, LiterDiesel.INSTANCE, 180);
this.bullets = new IntStorage(bullets, BulletBelts.INSTANCE, 3);
}
@Override
public void consumeAll(int intensity) {
oil.consume(1);
grease.consume(1);
tank.consume(intensity * 25);
bullets.consume(intensity * 2);
}
@Override
public void reportNeeds(NeedCollector collector) {
oil.reportNeed(collector);
grease.reportNeed(collector);
tank.reportNeed(collector);
bullets.reportNeed(collector);
}
@Override
public void fillUpAll() {
oil.fillUp();
grease.fillUp();
tank.fillUp();
bullets.fillUp();
}
}