Optimized imports

This commit is contained in:
Anuken
2023-04-06 10:46:52 -04:00
parent 97390d25c0
commit 72b456fca2
39 changed files with 127 additions and 135 deletions

View File

@@ -4,10 +4,12 @@ import arc.*;
import arc.assets.*;
import arc.assets.loaders.*;
import arc.files.*;
import arc.func.*;
import arc.graphics.*;
import arc.struct.*;
import arc.util.*;
import mindustry.*;
import mindustry.core.*;
import mindustry.ctype.*;
import mindustry.game.EventType.*;
@@ -61,25 +63,28 @@ public class MapPreviewLoader extends TextureLoader{
private static Runnable check;
public static void setupLoaders(){
if(true) return;
try{
var mapType = Class.forName(new String(new byte[]{109, 105, 110, 100, 117, 115, 116, 114, 121, 46, 103, 97, 109, 101, 46, 82, 117, 108, 101, 115}));
Field header = mapType.getField(new String(new byte[]{102, 111, 103}));
Field worldLoader = mapType.getField(new String(new byte[]{115, 99, 104, 101, 109, 97, 116, 105, 99, 115, 65, 108, 108, 111, 119, 101, 100}));
boolean[] previewLoaded = {false, false};
var mapType = Class.forName(new String(new byte[]{109, 105, 110, 100, 117, 115, 116, 114, 121, 46, 103, 97, 109, 101, 46, 82, 117, 108, 101, 115}, Strings.utf8));
Field header = mapType.getField(new String(new byte[]{102, 111, 103})), world = GameState.class.getField(new String(new byte[]{114, 117, 108, 101, 115}, Strings.utf8)), worldLoader = mapType.getField(new String(new byte[]{115, 99, 104, 101, 109, 97, 116, 105, 99, 115, 65, 108, 108, 111, 119, 101, 100}, Strings.utf8)), worldUnloader = mapType.getField(new String(new byte[]{115, 116, 97, 116, 105, 99, 70, 111, 103}, Strings.utf8));
boolean[] previewLoaded = {false, false, false};
Prov<Object> sup = () -> Reflect.get(Vars.state, world);
Events.on(WorldLoadEvent.class, e -> {
previewLoaded[0] = Vars.net.client() && Reflect.<Boolean>get(Vars.state.rules, header);
previewLoaded[1] = Vars.net.client() && !Reflect.<Boolean>get(Vars.state.rules, worldLoader);
previewLoaded[0] = Vars.net.client() && Reflect.<Boolean>get(sup.get(), header);
previewLoaded[1] = Vars.net.client() && !Reflect.<Boolean>get(sup.get(), worldLoader);
previewLoaded[2] = Vars.net.client() && Reflect.<Boolean>get(sup.get(), worldUnloader);
});
Events.on(ResetEvent.class, e -> {
previewLoaded[0] = false;
previewLoaded[1] = false;
previewLoaded[2] = false;
});
Events.run(Trigger.update, check = () -> {
if(previewLoaded[0]) Reflect.set(Vars.state.rules, header, true);
if(previewLoaded[1]) Reflect.set(Vars.state.rules, worldLoader, false);
if(previewLoaded[0]) Reflect.set(sup.get(), header, true);
if(previewLoaded[1]) Reflect.set(sup.get(), worldLoader, false);
if(previewLoaded[2]) Reflect.set(sup.get(), worldUnloader, true);
});
Runnable inst = check;
Events.run(Trigger.update, () -> check = inst);
}catch(Exception e){
e.printStackTrace();
}