mirror of
https://github.com/2OOP/pism.git
synced 2026-02-04 10:54:51 +00:00
Removed ResourceManager from AudioManagers
This commit is contained in:
@@ -20,12 +20,9 @@ public class MusicManager<T extends AudioResource> implements org.toop.framework
|
||||
private int playingIndex = 0;
|
||||
private boolean playing = false;
|
||||
|
||||
public MusicManager(Class<T> type) {
|
||||
public MusicManager(List<T> resources) {
|
||||
this.dispatcher = new JavaFXDispatcher();
|
||||
this.resources = new ArrayList<>(ResourceManager.getAllOfType((Class<? extends BaseResource>) type)
|
||||
.stream()
|
||||
.map(e -> (T) e.getResource())
|
||||
.toList());
|
||||
this.resources = resources;
|
||||
createShuffled();
|
||||
}
|
||||
|
||||
|
||||
@@ -21,10 +21,9 @@ public class SoundEffectManager<T extends AudioResource> implements org.toop.fra
|
||||
private static final Logger logger = LogManager.getLogger(SoundEffectManager.class);
|
||||
private final HashMap<String, T> soundEffectResources;
|
||||
|
||||
public SoundEffectManager(Class<T> type){
|
||||
public <K extends BaseResource & AudioResource> SoundEffectManager(List<ResourceMeta<K>> resources) {
|
||||
// If there are duplicates, takes discards the first
|
||||
soundEffectResources = (HashMap<String, T>) ResourceManager
|
||||
.getAllOfType((Class<? extends BaseResource>) type)
|
||||
this.soundEffectResources = (HashMap<String, T>) resources
|
||||
.stream()
|
||||
.collect(Collectors.
|
||||
toMap(ResourceMeta::getName, ResourceMeta::getResource, (a, b) -> b, HashMap::new));
|
||||
|
||||
@@ -119,6 +119,19 @@ public class ResourceManager {
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T extends BaseResource> List<T> getAllOfTypeAndRemoveWrapper(Class<T> type) {
|
||||
List<T> result = new ArrayList<>();
|
||||
|
||||
for (ResourceMeta<? extends BaseResource> meta : assets.values()) {
|
||||
BaseResource res = meta.getResource();
|
||||
if (type.isInstance(res)) {
|
||||
result.add((T) res);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve an asset by its unique ID.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user