From 9c1f897fffe6cd4a0d221603e081bd68319906cd Mon Sep 17 00:00:00 2001 From: Anuken Date: Sun, 1 Aug 2021 17:00:24 -0400 Subject: [PATCH] Fixed #5684 --- core/src/mindustry/world/blocks/payloads/PayloadBlock.java | 6 ++++++ desktop/src/mindustry/desktop/DesktopLauncher.java | 3 --- desktop/src/mindustry/desktop/steam/SWorkshop.java | 7 +++---- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/core/src/mindustry/world/blocks/payloads/PayloadBlock.java b/core/src/mindustry/world/blocks/payloads/PayloadBlock.java index b0b1d1c5a8..86023894e3 100644 --- a/core/src/mindustry/world/blocks/payloads/PayloadBlock.java +++ b/core/src/mindustry/world/blocks/payloads/PayloadBlock.java @@ -193,8 +193,14 @@ public class PayloadBlock extends Block{ } public void dumpPayload(){ + //translate payload forward slightly + float tx = Angles.trnsx(payload.rotation(), 0.1f), ty = Angles.trnsy(payload.rotation(), 0.1f); + payload.set(payload.x() + tx, payload.y() + ty, payload.rotation()); + if(payload.dump()){ payload = null; + }else{ + payload.set(payload.x() - tx, payload.y() - ty, payload.rotation()); } } diff --git a/desktop/src/mindustry/desktop/DesktopLauncher.java b/desktop/src/mindustry/desktop/DesktopLauncher.java index 1d289847ae..1de468f504 100644 --- a/desktop/src/mindustry/desktop/DesktopLauncher.java +++ b/desktop/src/mindustry/desktop/DesktopLauncher.java @@ -100,9 +100,6 @@ public class DesktopLauncher extends ClientLauncher{ if(SteamAPI.restartAppIfNecessary(SVars.steamID)){ System.exit(0); } - }catch(NullPointerException ignored){ - steam = false; - Log.info("Running in offline mode."); }catch(Throwable e){ steam = false; Log.err("Failed to load Steam native libraries."); diff --git a/desktop/src/mindustry/desktop/steam/SWorkshop.java b/desktop/src/mindustry/desktop/steam/SWorkshop.java index 23a22360d4..9799da60d8 100644 --- a/desktop/src/mindustry/desktop/steam/SWorkshop.java +++ b/desktop/src/mindustry/desktop/steam/SWorkshop.java @@ -33,10 +33,9 @@ public class SWorkshop implements SteamUGCCallback{ ItemInstallInfo info = new ItemInstallInfo(); ugc.getSubscribedItems(ids); - Seq folders = Seq.with(ids).map(f -> { - ugc.getItemInstallInfo(f, info); - return new Fi(info.getFolder()); - }).select(f -> f != null && f.list().length > 0); + Seq folders = Seq.with(ids) + .map(f -> !ugc.getItemInstallInfo(f, info) || info.getFolder() == null ? null : new Fi(info.getFolder())) + .select(f -> f != null && f.list().length > 0); workshopFiles.put(Map.class, folders.select(f -> f.list().length == 1 && f.list()[0].extension().equals(mapExtension)).map(f -> f.list()[0])); workshopFiles.put(Schematic.class, folders.select(f -> f.list().length == 1 && f.list()[0].extension().equals(schematicExtension)).map(f -> f.list()[0]));