diff --git a/app/build/intermediates/assets/debug/levelpacks/Grasslands.xml b/app/build/intermediates/assets/debug/levelpacks/Grasslands.xml
index 8214a4e..90046a8 100644
--- a/app/build/intermediates/assets/debug/levelpacks/Grasslands.xml
+++ b/app/build/intermediates/assets/debug/levelpacks/Grasslands.xml
@@ -249,5 +249,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/assets/levelpacks/Grasslands.xml b/app/src/main/assets/levelpacks/Grasslands.xml
index 8214a4e..90046a8 100644
--- a/app/src/main/assets/levelpacks/Grasslands.xml
+++ b/app/src/main/assets/levelpacks/Grasslands.xml
@@ -249,5 +249,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/de/frajul/endlessroll/entities/collectables/Collectables.java b/app/src/main/java/de/frajul/endlessroll/entities/collectables/Collectables.java
new file mode 100644
index 0000000..0198f20
--- /dev/null
+++ b/app/src/main/java/de/frajul/endlessroll/entities/collectables/Collectables.java
@@ -0,0 +1,67 @@
+package de.frajul.endlessroll.entities.collectables;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import de.frajul.endlessroll.data.SynchronizedArrayList;
+import de.frajul.endlessroll.entities.Entity;
+import de.frajul.endlessroll.entities.textures.TexturePack;
+import de.frajul.endlessroll.levels.Level;
+import de.frajul.endlessroll.levels.PositionData;
+
+/**
+ * Created by Julian on 06.09.2017.
+ */
+
+public class Collectables extends SynchronizedArrayList {
+
+ private List stars = Collections.synchronizedList(new ArrayList());
+ private Energy energy;
+
+ public void init(Level level, TexturePack textures) {
+ for (int i = 0; i < level.getStars().size(); i++) {
+ if (level.isStarCollected(i))
+ continue;
+ addStar(new Star(i, textures.star, level.getStars().get(i)));
+ }
+
+ PositionData energyData = level.getEnergyData();
+ if (energyData != null && !level.isEnergyCollected()) {
+ setEnergy(new Energy(textures.energy, energyData));
+ }
+ }
+
+ @Override
+ public synchronized boolean remove(Object object) {
+ if(object instanceof Star)
+ stars.remove(object);
+ else
+ energy = null;
+ return super.remove(object);
+ }
+
+ private void addStar(Star star) {
+ stars.add(star);
+ super.add(star);
+ }
+
+ private void setEnergy(Energy energy) {
+ this.energy = energy;
+ super.add(energy);
+ }
+
+ public void reset() {
+ stars.clear();
+ energy = null;
+ super.clear();
+ }
+
+ public List getStars() {
+ return stars;
+ }
+
+ public Energy getEnergy() {
+ return energy;
+ }
+}
diff --git a/app/src/main/java/de/frajul/endlessroll/main/game/TestScreenScene.java b/app/src/main/java/de/frajul/endlessroll/main/game/TestScreenScene.java
index 93db834..7476c85 100644
--- a/app/src/main/java/de/frajul/endlessroll/main/game/TestScreenScene.java
+++ b/app/src/main/java/de/frajul/endlessroll/main/game/TestScreenScene.java
@@ -31,7 +31,4 @@ public class TestScreenScene extends Scene {
return new Obstacle(World.GRASSLANDS, data, -.8f);
}
- @Override
- protected void removeEntityFromAllLists(Entity entity) {
- }
}
\ No newline at end of file