From e57087e891dd203a2432d3a426c627ba86737d81 Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 20 Sep 2021 10:09:00 -0400 Subject: [PATCH] Better payload construct/deconstruct effects --- core/src/mindustry/graphics/g3d/PlanetParams.java | 1 + core/src/mindustry/maps/planet/AsteroidGenerator.java | 3 ++- .../mindustry/world/blocks/environment/WobbleProp.java | 2 ++ .../mindustry/world/blocks/payloads/BlockProducer.java | 2 ++ .../world/blocks/payloads/PayloadDeconstructor.java | 9 ++++++--- 5 files changed, 13 insertions(+), 4 deletions(-) diff --git a/core/src/mindustry/graphics/g3d/PlanetParams.java b/core/src/mindustry/graphics/g3d/PlanetParams.java index bab65f4eb9..9116592fae 100644 --- a/core/src/mindustry/graphics/g3d/PlanetParams.java +++ b/core/src/mindustry/graphics/g3d/PlanetParams.java @@ -36,4 +36,5 @@ public class PlanetParams{ //TODO: //- blur + //- darken } diff --git a/core/src/mindustry/maps/planet/AsteroidGenerator.java b/core/src/mindustry/maps/planet/AsteroidGenerator.java index 2e2a6f4bba..9e63e755aa 100644 --- a/core/src/mindustry/maps/planet/AsteroidGenerator.java +++ b/core/src/mindustry/maps/planet/AsteroidGenerator.java @@ -1,6 +1,7 @@ package mindustry.maps.planet; import arc.math.*; +import arc.math.geom.*; import arc.util.noise.*; import mindustry.content.*; import mindustry.game.*; @@ -92,7 +93,6 @@ public class AsteroidGenerator extends BlankPlanetGenerator{ } block = floor.asFloor().wall; - }); //random craters @@ -135,6 +135,7 @@ public class AsteroidGenerator extends BlankPlanetGenerator{ state.rules.planetBackground = new PlanetParams(){{ planet = sector.planet; zoom = 1f; + camPos = new Vec3(1.2388899f, 1.6047299f, 2.4758825f); }}; //state.rules.backgroundTexture = "sprites/space.png"; state.rules.borderDarkness = false; diff --git a/core/src/mindustry/world/blocks/environment/WobbleProp.java b/core/src/mindustry/world/blocks/environment/WobbleProp.java index 8a8f005574..1663faf80e 100644 --- a/core/src/mindustry/world/blocks/environment/WobbleProp.java +++ b/core/src/mindustry/world/blocks/environment/WobbleProp.java @@ -3,6 +3,7 @@ package mindustry.world.blocks.environment; import arc.graphics.g2d.*; import arc.math.*; import arc.util.*; +import mindustry.gen.*; import mindustry.world.*; public class WobbleProp extends Prop{ @@ -10,6 +11,7 @@ public class WobbleProp extends Prop{ public WobbleProp(String name){ super(name); + breakSound = Sounds.plantBreak; } @Override diff --git a/core/src/mindustry/world/blocks/payloads/BlockProducer.java b/core/src/mindustry/world/blocks/payloads/BlockProducer.java index 71e8adfdff..a3186a0dc3 100644 --- a/core/src/mindustry/world/blocks/payloads/BlockProducer.java +++ b/core/src/mindustry/world/blocks/payloads/BlockProducer.java @@ -5,6 +5,7 @@ import arc.math.*; import arc.util.*; import arc.util.io.*; import mindustry.*; +import mindustry.content.*; import mindustry.entities.units.*; import mindustry.gen.*; import mindustry.graphics.*; @@ -86,6 +87,7 @@ public abstract class BlockProducer extends PayloadBlock{ if(progress >= recipe.buildCost){ consume(); payload = new BuildPayload(recipe, team); + Fx.placeBlock.at(x, y, payload.size() / tilesize); payVector.setZero(); progress %= 1f; } diff --git a/core/src/mindustry/world/blocks/payloads/PayloadDeconstructor.java b/core/src/mindustry/world/blocks/payloads/PayloadDeconstructor.java index 5150c7659a..328549f0a4 100644 --- a/core/src/mindustry/world/blocks/payloads/PayloadDeconstructor.java +++ b/core/src/mindustry/world/blocks/payloads/PayloadDeconstructor.java @@ -4,11 +4,13 @@ import arc.graphics.g2d.*; import arc.math.*; import arc.util.*; import arc.util.io.*; -import mindustry.*; +import mindustry.content.*; import mindustry.gen.*; import mindustry.graphics.*; import mindustry.ui.*; +import static mindustry.Vars.*; + public class PayloadDeconstructor extends PayloadBlock{ public float maxPayloadSize = 4; public float deconstructSpeed = 2.5f; @@ -74,7 +76,7 @@ public class PayloadDeconstructor extends PayloadBlock{ Draw.color(Pal.remove); Draw.alpha(1f); - Lines.lineAngleCenter(x + Mathf.sin(time, 20f, Vars.tilesize / 2f * block.size - 3f), y, 90f, block.size * Vars.tilesize - 6f); + Lines.lineAngleCenter(x + Mathf.sin(time, 20f, tilesize / 2f * block.size - 3f), y, 90f, block.size * tilesize - 6f); Draw.reset(); }); @@ -151,7 +153,8 @@ public class PayloadDeconstructor extends PayloadBlock{ //finish deconstruction, prepare for next payload. if(progress >= 1f){ - //TODO + Fx.breakBlock.at(x, y, deconstructing.size() / tilesize); + deconstructing = null; accum = null; }