Fixed crash on load

This commit is contained in:
Anuken
2019-08-27 21:11:39 -04:00
parent 43245681fe
commit 9f5a0ca4e9
3 changed files with 6 additions and 8 deletions

View File

@@ -73,12 +73,6 @@ public class ClientLauncher extends ApplicationCore{
}); });
} }
private void post(){
for(ApplicationListener listener : modules){
listener.init();
}
}
@Override @Override
public void add(ApplicationListener module){ public void add(ApplicationListener module){
super.add(module); super.add(module);

View File

@@ -163,7 +163,7 @@ public class ContentLoader{
return null; return null;
} }
if(temporaryMapper[type.ordinal()].length <= id || temporaryMapper[type.ordinal()][id] == null){ if(temporaryMapper[type.ordinal()].length <= id || temporaryMapper[type.ordinal()][id] == null){
return getByID(type, 0); //default value is always ID 0 return (T)contentMap[type.ordinal()].get(0); //default value is always ID 0
} }
return (T)temporaryMapper[type.ordinal()][id]; return (T)temporaryMapper[type.ordinal()][id];
} }

View File

@@ -2,6 +2,7 @@ package io.anuke.mindustry.maps;
import io.anuke.arc.*; import io.anuke.arc.*;
import io.anuke.arc.assets.*; import io.anuke.arc.assets.*;
import io.anuke.arc.assets.loaders.*;
import io.anuke.arc.collection.*; import io.anuke.arc.collection.*;
import io.anuke.arc.collection.IntSet.*; import io.anuke.arc.collection.IntSet.*;
import io.anuke.arc.files.*; import io.anuke.arc.files.*;
@@ -308,6 +309,7 @@ public class Maps{
} }
public void loadPreviews(){ public void loadPreviews(){
Array<Map> createNew = new Array<>();
for(Map map : maps){ for(Map map : maps){
//try to load preview //try to load preview
@@ -315,7 +317,7 @@ public class Maps{
//this may fail, but calls createNewPreview //this may fail, but calls createNewPreview
Core.assets.load(new AssetDescriptor<>(map.previewFile().path() + "." + mapExtension, Texture.class, new MapPreviewParameter(map))).loaded = t -> map.texture = (Texture)t; Core.assets.load(new AssetDescriptor<>(map.previewFile().path() + "." + mapExtension, Texture.class, new MapPreviewParameter(map))).loaded = t -> map.texture = (Texture)t;
}else{ }else{
Core.app.post(() -> createNewPreview(map)); createNew.add(map);
} }
try{ try{
@@ -323,6 +325,8 @@ public class Maps{
}catch(Exception ignored){ }catch(Exception ignored){
} }
} }
((CustomLoader)Core.assets.getLoader(Content.class)).loaded = () -> Core.app.post(() -> createNew.each(this::createNewPreview));
} }
public void createNewPreview(Map map){ public void createNewPreview(Map map){