diff --git a/core/assets/sounds/beamPlasmaSmall.ogg b/core/assets/sounds/beamPlasmaSmall.ogg deleted file mode 100644 index 2cbb7846bc..0000000000 Binary files a/core/assets/sounds/beamPlasmaSmall.ogg and /dev/null differ diff --git a/core/assets/sounds/healBeam.ogg b/core/assets/sounds/beams/beamHeal.ogg similarity index 100% rename from core/assets/sounds/healBeam.ogg rename to core/assets/sounds/beams/beamHeal.ogg diff --git a/core/assets/sounds/laserbeam.ogg b/core/assets/sounds/beams/beamLustre.ogg similarity index 100% rename from core/assets/sounds/laserbeam.ogg rename to core/assets/sounds/beams/beamLustre.ogg diff --git a/core/assets/sounds/beam.ogg b/core/assets/sounds/beams/beamMeltdown.ogg similarity index 100% rename from core/assets/sounds/beam.ogg rename to core/assets/sounds/beams/beamMeltdown.ogg diff --git a/core/assets/sounds/tractorbeam.ogg b/core/assets/sounds/beams/beamParallax.ogg similarity index 100% rename from core/assets/sounds/tractorbeam.ogg rename to core/assets/sounds/beams/beamParallax.ogg diff --git a/core/assets/sounds/beamPlasma.ogg b/core/assets/sounds/beams/beamPlasma.ogg similarity index 100% rename from core/assets/sounds/beamPlasma.ogg rename to core/assets/sounds/beams/beamPlasma.ogg diff --git a/core/assets/sounds/beams/beamPlasmaSmall.ogg b/core/assets/sounds/beams/beamPlasmaSmall.ogg new file mode 100644 index 0000000000..090507cf46 Binary files /dev/null and b/core/assets/sounds/beams/beamPlasmaSmall.ogg differ diff --git a/core/assets/sounds/block/blockBreak1.ogg b/core/assets/sounds/block/blockBreak1.ogg new file mode 100644 index 0000000000..cb115e96fc Binary files /dev/null and b/core/assets/sounds/block/blockBreak1.ogg differ diff --git a/core/assets/sounds/block/blockBreak2.ogg b/core/assets/sounds/block/blockBreak2.ogg new file mode 100644 index 0000000000..4a84321237 Binary files /dev/null and b/core/assets/sounds/block/blockBreak2.ogg differ diff --git a/core/assets/sounds/block/blockBreak3.ogg b/core/assets/sounds/block/blockBreak3.ogg new file mode 100644 index 0000000000..e632388d25 Binary files /dev/null and b/core/assets/sounds/block/blockBreak3.ogg differ diff --git a/core/assets/sounds/blockHeal.ogg b/core/assets/sounds/block/blockHeal.ogg similarity index 100% rename from core/assets/sounds/blockHeal.ogg rename to core/assets/sounds/block/blockHeal.ogg diff --git a/core/assets/sounds/place1.ogg b/core/assets/sounds/block/blockPlace1.ogg similarity index 100% rename from core/assets/sounds/place1.ogg rename to core/assets/sounds/block/blockPlace1.ogg diff --git a/core/assets/sounds/place2.ogg b/core/assets/sounds/block/blockPlace2.ogg similarity index 100% rename from core/assets/sounds/place2.ogg rename to core/assets/sounds/block/blockPlace2.ogg diff --git a/core/assets/sounds/place3.ogg b/core/assets/sounds/block/blockPlace3.ogg similarity index 100% rename from core/assets/sounds/place3.ogg rename to core/assets/sounds/block/blockPlace3.ogg diff --git a/core/assets/sounds/click.ogg b/core/assets/sounds/block/click.ogg similarity index 100% rename from core/assets/sounds/click.ogg rename to core/assets/sounds/block/click.ogg diff --git a/core/assets/sounds/block/door.ogg b/core/assets/sounds/block/door.ogg new file mode 100644 index 0000000000..b4b8548452 Binary files /dev/null and b/core/assets/sounds/block/door.ogg differ diff --git a/core/assets/sounds/drillCharge.ogg b/core/assets/sounds/block/drillCharge.ogg similarity index 100% rename from core/assets/sounds/drillCharge.ogg rename to core/assets/sounds/block/drillCharge.ogg diff --git a/core/assets/sounds/drillImpact.ogg b/core/assets/sounds/block/drillImpact.ogg similarity index 100% rename from core/assets/sounds/drillImpact.ogg rename to core/assets/sounds/block/drillImpact.ogg diff --git a/core/assets/sounds/healAbility.ogg b/core/assets/sounds/block/healWave.ogg similarity index 100% rename from core/assets/sounds/healAbility.ogg rename to core/assets/sounds/block/healWave.ogg diff --git a/core/assets/sounds/massdriver.ogg b/core/assets/sounds/block/massdriver.ogg similarity index 100% rename from core/assets/sounds/massdriver.ogg rename to core/assets/sounds/block/massdriver.ogg diff --git a/core/assets/sounds/massdriverReceive.ogg b/core/assets/sounds/block/massdriverReceive.ogg similarity index 100% rename from core/assets/sounds/massdriverReceive.ogg rename to core/assets/sounds/block/massdriverReceive.ogg diff --git a/core/assets/sounds/padLand.ogg b/core/assets/sounds/block/padLand.ogg similarity index 100% rename from core/assets/sounds/padLand.ogg rename to core/assets/sounds/block/padLand.ogg diff --git a/core/assets/sounds/padLaunch.ogg b/core/assets/sounds/block/padLaunch.ogg similarity index 100% rename from core/assets/sounds/padLaunch.ogg rename to core/assets/sounds/block/padLaunch.ogg diff --git a/core/assets/sounds/plantBreak.ogg b/core/assets/sounds/block/plantBreak.ogg similarity index 100% rename from core/assets/sounds/plantBreak.ogg rename to core/assets/sounds/block/plantBreak.ogg diff --git a/core/assets/sounds/rockBreak.ogg b/core/assets/sounds/block/rockBreak.ogg similarity index 100% rename from core/assets/sounds/rockBreak.ogg rename to core/assets/sounds/block/rockBreak.ogg diff --git a/core/assets/sounds/shieldBreak.ogg b/core/assets/sounds/block/shieldBreak.ogg similarity index 100% rename from core/assets/sounds/shieldBreak.ogg rename to core/assets/sounds/block/shieldBreak.ogg diff --git a/core/assets/sounds/shieldBreakSmall.ogg b/core/assets/sounds/block/shieldBreakSmall.ogg similarity index 100% rename from core/assets/sounds/shieldBreakSmall.ogg rename to core/assets/sounds/block/shieldBreakSmall.ogg diff --git a/core/assets/sounds/shieldHit.ogg b/core/assets/sounds/block/shieldHit.ogg similarity index 100% rename from core/assets/sounds/shieldHit.ogg rename to core/assets/sounds/block/shieldHit.ogg diff --git a/core/assets/sounds/shockwaveTower.ogg b/core/assets/sounds/block/shockwaveTower.ogg similarity index 100% rename from core/assets/sounds/shockwaveTower.ogg rename to core/assets/sounds/block/shockwaveTower.ogg diff --git a/core/assets/sounds/unitCreate.ogg b/core/assets/sounds/block/unitCreate.ogg similarity index 100% rename from core/assets/sounds/unitCreate.ogg rename to core/assets/sounds/block/unitCreate.ogg diff --git a/core/assets/sounds/block/unitCreateBig.ogg b/core/assets/sounds/block/unitCreateBig.ogg new file mode 100644 index 0000000000..65cfa1a978 Binary files /dev/null and b/core/assets/sounds/block/unitCreateBig.ogg differ diff --git a/core/assets/sounds/break.ogg b/core/assets/sounds/break.ogg deleted file mode 100644 index 30ca95aea2..0000000000 Binary files a/core/assets/sounds/break.ogg and /dev/null differ diff --git a/core/assets/sounds/buttonClick.ogg b/core/assets/sounds/buttonClick.ogg deleted file mode 100644 index 5f225eadcc..0000000000 Binary files a/core/assets/sounds/buttonClick.ogg and /dev/null differ diff --git a/core/assets/sounds/lasercharge.ogg b/core/assets/sounds/charge/chargeCorvus.ogg similarity index 100% rename from core/assets/sounds/lasercharge.ogg rename to core/assets/sounds/charge/chargeCorvus.ogg diff --git a/core/assets/sounds/lasercharge3.ogg b/core/assets/sounds/charge/chargeLancer.ogg similarity index 100% rename from core/assets/sounds/lasercharge3.ogg rename to core/assets/sounds/charge/chargeLancer.ogg diff --git a/core/assets/sounds/lasercharge2.ogg b/core/assets/sounds/charge/chargeVela.ogg similarity index 100% rename from core/assets/sounds/lasercharge2.ogg rename to core/assets/sounds/charge/chargeVela.ogg diff --git a/core/assets/sounds/coreExplode.ogg b/core/assets/sounds/coreExplode.ogg deleted file mode 100644 index f0b020a6ba..0000000000 Binary files a/core/assets/sounds/coreExplode.ogg and /dev/null differ diff --git a/core/assets/sounds/door.ogg b/core/assets/sounds/door.ogg deleted file mode 100644 index 121b3c3037..0000000000 Binary files a/core/assets/sounds/door.ogg and /dev/null differ diff --git a/core/assets/sounds/empBlast.ogg b/core/assets/sounds/empBlast.ogg deleted file mode 100644 index 08167aff69..0000000000 Binary files a/core/assets/sounds/empBlast.ogg and /dev/null differ diff --git a/core/assets/sounds/rain.ogg b/core/assets/sounds/environment/rain.ogg similarity index 100% rename from core/assets/sounds/rain.ogg rename to core/assets/sounds/environment/rain.ogg diff --git a/core/assets/sounds/wind.ogg b/core/assets/sounds/environment/wind.ogg similarity index 100% rename from core/assets/sounds/wind.ogg rename to core/assets/sounds/environment/wind.ogg diff --git a/core/assets/sounds/wind2.ogg b/core/assets/sounds/environment/wind2.ogg similarity index 100% rename from core/assets/sounds/wind2.ogg rename to core/assets/sounds/environment/wind2.ogg diff --git a/core/assets/sounds/wind3.ogg b/core/assets/sounds/environment/wind3.ogg similarity index 100% rename from core/assets/sounds/wind3.ogg rename to core/assets/sounds/environment/wind3.ogg diff --git a/core/assets/sounds/windhowl.ogg b/core/assets/sounds/environment/windHowl.ogg similarity index 100% rename from core/assets/sounds/windhowl.ogg rename to core/assets/sounds/environment/windHowl.ogg diff --git a/core/assets/sounds/afflictExplosion.ogg b/core/assets/sounds/explosions/afflictExplosion.ogg similarity index 100% rename from core/assets/sounds/afflictExplosion.ogg rename to core/assets/sounds/explosions/afflictExplosion.ogg diff --git a/core/assets/sounds/artilleryExplosion.ogg b/core/assets/sounds/explosions/artilleryExplosion.ogg similarity index 100% rename from core/assets/sounds/artilleryExplosion.ogg rename to core/assets/sounds/explosions/artilleryExplosion.ogg diff --git a/core/assets/sounds/artilleryShockExplosion.ogg b/core/assets/sounds/explosions/artilleryShockExplosion.ogg similarity index 100% rename from core/assets/sounds/artilleryShockExplosion.ogg rename to core/assets/sounds/explosions/artilleryShockExplosion.ogg diff --git a/core/assets/sounds/artilleryShockExplosionBig.ogg b/core/assets/sounds/explosions/artilleryShockExplosionBig.ogg similarity index 100% rename from core/assets/sounds/artilleryShockExplosionBig.ogg rename to core/assets/sounds/explosions/artilleryShockExplosionBig.ogg diff --git a/core/assets/sounds/blockExplode1.ogg b/core/assets/sounds/explosions/blockExplode1.ogg similarity index 100% rename from core/assets/sounds/blockExplode1.ogg rename to core/assets/sounds/explosions/blockExplode1.ogg diff --git a/core/assets/sounds/explosions/blockExplode1Alt.ogg b/core/assets/sounds/explosions/blockExplode1Alt.ogg new file mode 100644 index 0000000000..832834a6cc Binary files /dev/null and b/core/assets/sounds/explosions/blockExplode1Alt.ogg differ diff --git a/core/assets/sounds/blockExplode2.ogg b/core/assets/sounds/explosions/blockExplode2.ogg similarity index 100% rename from core/assets/sounds/blockExplode2.ogg rename to core/assets/sounds/explosions/blockExplode2.ogg diff --git a/core/assets/sounds/blockExplode3.ogg b/core/assets/sounds/explosions/blockExplode3.ogg similarity index 100% rename from core/assets/sounds/blockExplode3.ogg rename to core/assets/sounds/explosions/blockExplode3.ogg diff --git a/core/assets/sounds/blockExplodeElectric.ogg b/core/assets/sounds/explosions/blockExplodeElectric.ogg similarity index 100% rename from core/assets/sounds/blockExplodeElectric.ogg rename to core/assets/sounds/explosions/blockExplodeElectric.ogg diff --git a/core/assets/sounds/blockExplodeElectricBig.ogg b/core/assets/sounds/explosions/blockExplodeElectricBig.ogg similarity index 100% rename from core/assets/sounds/blockExplodeElectricBig.ogg rename to core/assets/sounds/explosions/blockExplodeElectricBig.ogg diff --git a/core/assets/sounds/blockExplodeExplosive.ogg b/core/assets/sounds/explosions/blockExplodeExplosive.ogg similarity index 100% rename from core/assets/sounds/blockExplodeExplosive.ogg rename to core/assets/sounds/explosions/blockExplodeExplosive.ogg diff --git a/core/assets/sounds/explosions/blockExplodeExplosiveAlt.ogg b/core/assets/sounds/explosions/blockExplodeExplosiveAlt.ogg new file mode 100644 index 0000000000..a605f8e8f0 Binary files /dev/null and b/core/assets/sounds/explosions/blockExplodeExplosiveAlt.ogg differ diff --git a/core/assets/sounds/blockExplodeFlammable.ogg b/core/assets/sounds/explosions/blockExplodeFlammable.ogg similarity index 100% rename from core/assets/sounds/blockExplodeFlammable.ogg rename to core/assets/sounds/explosions/blockExplodeFlammable.ogg diff --git a/core/assets/sounds/blockExplodeWall.ogg b/core/assets/sounds/explosions/blockExplodeWall.ogg similarity index 100% rename from core/assets/sounds/blockExplodeWall.ogg rename to core/assets/sounds/explosions/blockExplodeWall.ogg diff --git a/core/assets/sounds/explosions/coreExplode.ogg b/core/assets/sounds/explosions/coreExplode.ogg new file mode 100644 index 0000000000..9d0930bf78 Binary files /dev/null and b/core/assets/sounds/explosions/coreExplode.ogg differ diff --git a/core/assets/sounds/crawlerExplosion.ogg b/core/assets/sounds/explosions/crawlerExplosion.ogg similarity index 100% rename from core/assets/sounds/crawlerExplosion.ogg rename to core/assets/sounds/explosions/crawlerExplosion.ogg diff --git a/core/assets/sounds/dullExplosion.ogg b/core/assets/sounds/explosions/dullExplosion.ogg similarity index 100% rename from core/assets/sounds/dullExplosion.ogg rename to core/assets/sounds/explosions/dullExplosion.ogg diff --git a/core/assets/sounds/plasmaBomb.ogg b/core/assets/sounds/explosions/explodePlasma.ogg similarity index 100% rename from core/assets/sounds/plasmaBomb.ogg rename to core/assets/sounds/explosions/explodePlasma.ogg diff --git a/core/assets/sounds/explosion.ogg b/core/assets/sounds/explosions/explosion.ogg similarity index 100% rename from core/assets/sounds/explosion.ogg rename to core/assets/sounds/explosions/explosion.ogg diff --git a/core/assets/sounds/explosionCleroi.ogg b/core/assets/sounds/explosions/explosionCleroi.ogg similarity index 100% rename from core/assets/sounds/explosionCleroi.ogg rename to core/assets/sounds/explosions/explosionCleroi.ogg diff --git a/core/assets/sounds/explosions/explosionNavanax.ogg b/core/assets/sounds/explosions/explosionNavanax.ogg new file mode 100644 index 0000000000..d115b09cfb Binary files /dev/null and b/core/assets/sounds/explosions/explosionNavanax.ogg differ diff --git a/core/assets/sounds/shockBlast.ogg b/core/assets/sounds/explosions/explosionObviate.ogg similarity index 100% rename from core/assets/sounds/shockBlast.ogg rename to core/assets/sounds/explosions/explosionObviate.ogg diff --git a/core/assets/sounds/explosionPlasmaSmall.ogg b/core/assets/sounds/explosions/explosionPlasmaSmall.ogg similarity index 100% rename from core/assets/sounds/explosionPlasmaSmall.ogg rename to core/assets/sounds/explosions/explosionPlasmaSmall.ogg diff --git a/core/assets/sounds/largeExplosion.ogg b/core/assets/sounds/explosions/largeExplosion.ogg similarity index 100% rename from core/assets/sounds/largeExplosion.ogg rename to core/assets/sounds/explosions/largeExplosion.ogg diff --git a/core/assets/sounds/reactorExplosion.ogg b/core/assets/sounds/explosions/reactorExplosion.ogg similarity index 100% rename from core/assets/sounds/reactorExplosion.ogg rename to core/assets/sounds/explosions/reactorExplosion.ogg diff --git a/core/assets/sounds/reactorExplosion2.ogg b/core/assets/sounds/explosions/reactorExplosion2.ogg similarity index 100% rename from core/assets/sounds/reactorExplosion2.ogg rename to core/assets/sounds/explosions/reactorExplosion2.ogg diff --git a/core/assets/sounds/sparkBullet.ogg b/core/assets/sounds/explosions/shockBullet.ogg similarity index 100% rename from core/assets/sounds/sparkBullet.ogg rename to core/assets/sounds/explosions/shockBullet.ogg diff --git a/core/assets/sounds/titanExplosion.ogg b/core/assets/sounds/explosions/titanExplosion.ogg similarity index 100% rename from core/assets/sounds/titanExplosion.ogg rename to core/assets/sounds/explosions/titanExplosion.ogg diff --git a/core/assets/sounds/unitExplode1.ogg b/core/assets/sounds/explosions/unitExplode1.ogg similarity index 100% rename from core/assets/sounds/unitExplode1.ogg rename to core/assets/sounds/explosions/unitExplode1.ogg diff --git a/core/assets/sounds/unitExplode2.ogg b/core/assets/sounds/explosions/unitExplode2.ogg similarity index 100% rename from core/assets/sounds/unitExplode2.ogg rename to core/assets/sounds/explosions/unitExplode2.ogg diff --git a/core/assets/sounds/unitExplode3.ogg b/core/assets/sounds/explosions/unitExplode3.ogg similarity index 100% rename from core/assets/sounds/unitExplode3.ogg rename to core/assets/sounds/explosions/unitExplode3.ogg diff --git a/core/assets/sounds/wreckFall.ogg b/core/assets/sounds/explosions/wreckFall.ogg similarity index 100% rename from core/assets/sounds/wreckFall.ogg rename to core/assets/sounds/explosions/wreckFall.ogg diff --git a/core/assets/sounds/wreckFallBig.ogg b/core/assets/sounds/explosions/wreckFallBig.ogg similarity index 100% rename from core/assets/sounds/wreckFallBig.ogg rename to core/assets/sounds/explosions/wreckFallBig.ogg diff --git a/core/assets/sounds/grinding.ogg b/core/assets/sounds/grinding.ogg deleted file mode 100644 index f78d2c4e67..0000000000 Binary files a/core/assets/sounds/grinding.ogg and /dev/null differ diff --git a/core/assets/sounds/bioLoop.ogg b/core/assets/sounds/loops/loopBio.ogg similarity index 100% rename from core/assets/sounds/bioLoop.ogg rename to core/assets/sounds/loops/loopBio.ogg diff --git a/core/assets/sounds/build.ogg b/core/assets/sounds/loops/loopBuild.ogg similarity index 100% rename from core/assets/sounds/build.ogg rename to core/assets/sounds/loops/loopBuild.ogg diff --git a/core/assets/sounds/combustion.ogg b/core/assets/sounds/loops/loopCombustion.ogg similarity index 100% rename from core/assets/sounds/combustion.ogg rename to core/assets/sounds/loops/loopCombustion.ogg diff --git a/core/assets/sounds/conveyor.ogg b/core/assets/sounds/loops/loopConveyor.ogg similarity index 100% rename from core/assets/sounds/conveyor.ogg rename to core/assets/sounds/loops/loopConveyor.ogg diff --git a/core/assets/sounds/cutter.ogg b/core/assets/sounds/loops/loopCutter.ogg similarity index 100% rename from core/assets/sounds/cutter.ogg rename to core/assets/sounds/loops/loopCutter.ogg diff --git a/core/assets/sounds/drill.ogg b/core/assets/sounds/loops/loopDrill.ogg similarity index 100% rename from core/assets/sounds/drill.ogg rename to core/assets/sounds/loops/loopDrill.ogg diff --git a/core/assets/sounds/electricHum.ogg b/core/assets/sounds/loops/loopElectricHum.ogg similarity index 100% rename from core/assets/sounds/electricHum.ogg rename to core/assets/sounds/loops/loopElectricHum.ogg diff --git a/core/assets/sounds/extractLoop.ogg b/core/assets/sounds/loops/loopExtract.ogg similarity index 100% rename from core/assets/sounds/extractLoop.ogg rename to core/assets/sounds/loops/loopExtract.ogg diff --git a/core/assets/sounds/fire.ogg b/core/assets/sounds/loops/loopFire.ogg similarity index 100% rename from core/assets/sounds/fire.ogg rename to core/assets/sounds/loops/loopFire.ogg diff --git a/core/assets/sounds/flux.ogg b/core/assets/sounds/loops/loopFlux.ogg similarity index 100% rename from core/assets/sounds/flux.ogg rename to core/assets/sounds/loops/loopFlux.ogg diff --git a/core/assets/sounds/glow.ogg b/core/assets/sounds/loops/loopGlow.ogg similarity index 100% rename from core/assets/sounds/glow.ogg rename to core/assets/sounds/loops/loopGlow.ogg diff --git a/core/assets/sounds/loops/loopGrind.ogg b/core/assets/sounds/loops/loopGrind.ogg new file mode 100644 index 0000000000..49d66fc559 Binary files /dev/null and b/core/assets/sounds/loops/loopGrind.ogg differ diff --git a/core/assets/sounds/hum.ogg b/core/assets/sounds/loops/loopHum.ogg similarity index 100% rename from core/assets/sounds/hum.ogg rename to core/assets/sounds/loops/loopHum.ogg diff --git a/core/assets/sounds/machine.ogg b/core/assets/sounds/loops/loopMachine.ogg similarity index 100% rename from core/assets/sounds/machine.ogg rename to core/assets/sounds/loops/loopMachine.ogg diff --git a/core/assets/sounds/spellLoop.ogg b/core/assets/sounds/loops/loopMalign.ogg similarity index 100% rename from core/assets/sounds/spellLoop.ogg rename to core/assets/sounds/loops/loopMalign.ogg diff --git a/core/assets/sounds/minebeam.ogg b/core/assets/sounds/loops/loopMineBeam.ogg similarity index 100% rename from core/assets/sounds/minebeam.ogg rename to core/assets/sounds/loops/loopMineBeam.ogg diff --git a/core/assets/sounds/missileTrail.ogg b/core/assets/sounds/loops/loopMissileTrail.ogg similarity index 100% rename from core/assets/sounds/missileTrail.ogg rename to core/assets/sounds/loops/loopMissileTrail.ogg diff --git a/core/assets/sounds/pulse.ogg b/core/assets/sounds/loops/loopPulse.ogg similarity index 100% rename from core/assets/sounds/pulse.ogg rename to core/assets/sounds/loops/loopPulse.ogg diff --git a/core/assets/sounds/shield.ogg b/core/assets/sounds/loops/loopShield.ogg similarity index 100% rename from core/assets/sounds/shield.ogg rename to core/assets/sounds/loops/loopShield.ogg diff --git a/core/assets/sounds/smelter.ogg b/core/assets/sounds/loops/loopSmelter.ogg similarity index 100% rename from core/assets/sounds/smelter.ogg rename to core/assets/sounds/loops/loopSmelter.ogg diff --git a/core/assets/sounds/spray.ogg b/core/assets/sounds/loops/loopSpray.ogg similarity index 100% rename from core/assets/sounds/spray.ogg rename to core/assets/sounds/loops/loopSpray.ogg diff --git a/core/assets/sounds/steam.ogg b/core/assets/sounds/loops/loopSteam.ogg similarity index 100% rename from core/assets/sounds/steam.ogg rename to core/assets/sounds/loops/loopSteam.ogg diff --git a/core/assets/sounds/techloop.ogg b/core/assets/sounds/loops/loopTech.ogg similarity index 100% rename from core/assets/sounds/techloop.ogg rename to core/assets/sounds/loops/loopTech.ogg diff --git a/core/assets/sounds/thruster.ogg b/core/assets/sounds/loops/loopThruster.ogg similarity index 100% rename from core/assets/sounds/thruster.ogg rename to core/assets/sounds/loops/loopThruster.ogg diff --git a/core/assets/sounds/respawning.ogg b/core/assets/sounds/loops/loopUnitBuilding.ogg similarity index 100% rename from core/assets/sounds/respawning.ogg rename to core/assets/sounds/loops/loopUnitBuilding.ogg diff --git a/core/assets/sounds/mineDeploy.ogg b/core/assets/sounds/mineDeploy.ogg deleted file mode 100644 index 69fb5d2f98..0000000000 Binary files a/core/assets/sounds/mineDeploy.ogg and /dev/null differ diff --git a/core/assets/sounds/mechStep.ogg b/core/assets/sounds/movement/mechStep.ogg similarity index 100% rename from core/assets/sounds/mechStep.ogg rename to core/assets/sounds/movement/mechStep.ogg diff --git a/core/assets/sounds/mechStepHeavy.ogg b/core/assets/sounds/movement/mechStepHeavy.ogg similarity index 100% rename from core/assets/sounds/mechStepHeavy.ogg rename to core/assets/sounds/movement/mechStepHeavy.ogg diff --git a/core/assets/sounds/mechStepSmall.ogg b/core/assets/sounds/movement/mechStepSmall.ogg similarity index 100% rename from core/assets/sounds/mechStepSmall.ogg rename to core/assets/sounds/movement/mechStepSmall.ogg diff --git a/core/assets/sounds/mud.ogg b/core/assets/sounds/movement/stepMud.ogg similarity index 100% rename from core/assets/sounds/mud.ogg rename to core/assets/sounds/movement/stepMud.ogg diff --git a/core/assets/sounds/splash.ogg b/core/assets/sounds/movement/stepWater.ogg similarity index 100% rename from core/assets/sounds/splash.ogg rename to core/assets/sounds/movement/stepWater.ogg diff --git a/core/assets/sounds/tankMove.ogg b/core/assets/sounds/movement/tankMove.ogg similarity index 100% rename from core/assets/sounds/tankMove.ogg rename to core/assets/sounds/movement/tankMove.ogg diff --git a/core/assets/sounds/tankMoveHeavy.ogg b/core/assets/sounds/movement/tankMoveHeavy.ogg similarity index 100% rename from core/assets/sounds/tankMoveHeavy.ogg rename to core/assets/sounds/movement/tankMoveHeavy.ogg diff --git a/core/assets/sounds/tankMoveSmall.ogg b/core/assets/sounds/movement/tankMoveSmall.ogg similarity index 100% rename from core/assets/sounds/tankMoveSmall.ogg rename to core/assets/sounds/movement/tankMoveSmall.ogg diff --git a/core/assets/sounds/walkerStep.ogg b/core/assets/sounds/movement/walkerStep.ogg similarity index 100% rename from core/assets/sounds/walkerStep.ogg rename to core/assets/sounds/movement/walkerStep.ogg diff --git a/core/assets/sounds/walkerStepSmall.ogg b/core/assets/sounds/movement/walkerStepSmall.ogg similarity index 100% rename from core/assets/sounds/walkerStepSmall.ogg rename to core/assets/sounds/movement/walkerStepSmall.ogg diff --git a/core/assets/sounds/walkerStepTiny.ogg b/core/assets/sounds/movement/walkerStepTiny.ogg similarity index 100% rename from core/assets/sounds/walkerStepTiny.ogg rename to core/assets/sounds/movement/walkerStepTiny.ogg diff --git a/core/assets/sounds/noammo.ogg b/core/assets/sounds/noammo.ogg deleted file mode 100644 index 4472dab237..0000000000 Binary files a/core/assets/sounds/noammo.ogg and /dev/null differ diff --git a/core/assets/sounds/pew.ogg b/core/assets/sounds/pew.ogg deleted file mode 100644 index 6a15b963e3..0000000000 Binary files a/core/assets/sounds/pew.ogg and /dev/null differ diff --git a/core/assets/sounds/release.ogg b/core/assets/sounds/release.ogg deleted file mode 100644 index 89efd2ca2e..0000000000 Binary files a/core/assets/sounds/release.ogg and /dev/null differ diff --git a/core/assets/sounds/shoot.ogg b/core/assets/sounds/shoot.ogg deleted file mode 100644 index d4b1c791c6..0000000000 Binary files a/core/assets/sounds/shoot.ogg and /dev/null differ diff --git a/core/assets/sounds/shootDagger.ogg b/core/assets/sounds/shoot/shoot.ogg similarity index 100% rename from core/assets/sounds/shootDagger.ogg rename to core/assets/sounds/shoot/shoot.ogg diff --git a/core/assets/sounds/shootAfflict.ogg b/core/assets/sounds/shoot/shootAfflict.ogg similarity index 100% rename from core/assets/sounds/shootAfflict.ogg rename to core/assets/sounds/shoot/shootAfflict.ogg diff --git a/core/assets/sounds/laserbolt.ogg b/core/assets/sounds/shoot/shootAlpha.ogg similarity index 100% rename from core/assets/sounds/laserbolt.ogg rename to core/assets/sounds/shoot/shootAlpha.ogg diff --git a/core/assets/sounds/spark.ogg b/core/assets/sounds/shoot/shootArc.ogg similarity index 100% rename from core/assets/sounds/spark.ogg rename to core/assets/sounds/shoot/shootArc.ogg diff --git a/core/assets/sounds/artillery.ogg b/core/assets/sounds/shoot/shootArtillery.ogg similarity index 100% rename from core/assets/sounds/artillery.ogg rename to core/assets/sounds/shoot/shootArtillery.ogg diff --git a/core/assets/sounds/artillerySap.ogg b/core/assets/sounds/shoot/shootArtillerySap.ogg similarity index 100% rename from core/assets/sounds/artillerySap.ogg rename to core/assets/sounds/shoot/shootArtillerySap.ogg diff --git a/core/assets/sounds/artillerySapBig.ogg b/core/assets/sounds/shoot/shootArtillerySapBig.ogg similarity index 100% rename from core/assets/sounds/artillerySapBig.ogg rename to core/assets/sounds/shoot/shootArtillerySapBig.ogg diff --git a/core/assets/sounds/artillerySmall.ogg b/core/assets/sounds/shoot/shootArtillerySmall.ogg similarity index 100% rename from core/assets/sounds/artillerySmall.ogg rename to core/assets/sounds/shoot/shootArtillerySmall.ogg diff --git a/core/assets/sounds/shootAtrax.ogg b/core/assets/sounds/shoot/shootAtrax.ogg similarity index 100% rename from core/assets/sounds/shootAtrax.ogg rename to core/assets/sounds/shoot/shootAtrax.ogg diff --git a/core/assets/sounds/shootAvert.ogg b/core/assets/sounds/shoot/shootAvert.ogg similarity index 100% rename from core/assets/sounds/shootAvert.ogg rename to core/assets/sounds/shoot/shootAvert.ogg diff --git a/core/assets/sounds/beamPlasmaFire.ogg b/core/assets/sounds/shoot/shootBeamPlasma.ogg similarity index 100% rename from core/assets/sounds/beamPlasmaFire.ogg rename to core/assets/sounds/shoot/shootBeamPlasma.ogg diff --git a/core/assets/sounds/beamPlasmaFireSmall.ogg b/core/assets/sounds/shoot/shootBeamPlasmaSmall.ogg similarity index 100% rename from core/assets/sounds/beamPlasmaFireSmall.ogg rename to core/assets/sounds/shoot/shootBeamPlasmaSmall.ogg diff --git a/core/assets/sounds/shootBreach.ogg b/core/assets/sounds/shoot/shootBreach.ogg similarity index 100% rename from core/assets/sounds/shootBreach.ogg rename to core/assets/sounds/shoot/shootBreach.ogg diff --git a/core/assets/sounds/shootCleroi.ogg b/core/assets/sounds/shoot/shootCleroi.ogg similarity index 100% rename from core/assets/sounds/shootCleroi.ogg rename to core/assets/sounds/shoot/shootCleroi.ogg diff --git a/core/assets/sounds/pulseBlast.ogg b/core/assets/sounds/shoot/shootCollaris.ogg similarity index 100% rename from core/assets/sounds/pulseBlast.ogg rename to core/assets/sounds/shoot/shootCollaris.ogg diff --git a/core/assets/sounds/largeCannon.ogg b/core/assets/sounds/shoot/shootConquer.ogg similarity index 100% rename from core/assets/sounds/largeCannon.ogg rename to core/assets/sounds/shoot/shootConquer.ogg diff --git a/core/assets/sounds/laserblast.ogg b/core/assets/sounds/shoot/shootCorvus.ogg similarity index 100% rename from core/assets/sounds/laserblast.ogg rename to core/assets/sounds/shoot/shootCorvus.ogg diff --git a/core/assets/sounds/shootCyclone.ogg b/core/assets/sounds/shoot/shootCyclone.ogg similarity index 100% rename from core/assets/sounds/shootCyclone.ogg rename to core/assets/sounds/shoot/shootCyclone.ogg diff --git a/core/assets/sounds/shootDiffuse.ogg b/core/assets/sounds/shoot/shootDiffuse.ogg similarity index 100% rename from core/assets/sounds/shootDiffuse.ogg rename to core/assets/sounds/shoot/shootDiffuse.ogg diff --git a/core/assets/sounds/shootDisperse.ogg b/core/assets/sounds/shoot/shootDisperse.ogg similarity index 100% rename from core/assets/sounds/shootDisperse.ogg rename to core/assets/sounds/shoot/shootDisperse.ogg diff --git a/core/assets/sounds/shootDuo.ogg b/core/assets/sounds/shoot/shootDuo.ogg similarity index 100% rename from core/assets/sounds/shootDuo.ogg rename to core/assets/sounds/shoot/shootDuo.ogg diff --git a/core/assets/sounds/laser2.ogg b/core/assets/sounds/shoot/shootEclipse.ogg similarity index 100% rename from core/assets/sounds/laser2.ogg rename to core/assets/sounds/shoot/shootEclipse.ogg diff --git a/core/assets/sounds/shootElude.ogg b/core/assets/sounds/shoot/shootElude.ogg similarity index 100% rename from core/assets/sounds/shootElude.ogg rename to core/assets/sounds/shoot/shootElude.ogg diff --git a/core/assets/sounds/shoot/shootEnergyField.ogg b/core/assets/sounds/shoot/shootEnergyField.ogg new file mode 100644 index 0000000000..1e24d3fa80 Binary files /dev/null and b/core/assets/sounds/shoot/shootEnergyField.ogg differ diff --git a/core/assets/sounds/flame.ogg b/core/assets/sounds/shoot/shootFlame.ogg similarity index 100% rename from core/assets/sounds/flame.ogg rename to core/assets/sounds/shoot/shootFlame.ogg diff --git a/core/assets/sounds/flamePlasma.ogg b/core/assets/sounds/shoot/shootFlamePlasma.ogg similarity index 100% rename from core/assets/sounds/flamePlasma.ogg rename to core/assets/sounds/shoot/shootFlamePlasma.ogg diff --git a/core/assets/sounds/railgun.ogg b/core/assets/sounds/shoot/shootForeshadow.ogg similarity index 100% rename from core/assets/sounds/railgun.ogg rename to core/assets/sounds/shoot/shootForeshadow.ogg diff --git a/core/assets/sounds/shotgun.ogg b/core/assets/sounds/shoot/shootFuse.ogg similarity index 100% rename from core/assets/sounds/shotgun.ogg rename to core/assets/sounds/shoot/shootFuse.ogg diff --git a/core/assets/sounds/bombDrop.ogg b/core/assets/sounds/shoot/shootHorizon.ogg similarity index 100% rename from core/assets/sounds/bombDrop.ogg rename to core/assets/sounds/shoot/shootHorizon.ogg diff --git a/core/assets/sounds/laser.ogg b/core/assets/sounds/shoot/shootLancer.ogg similarity index 100% rename from core/assets/sounds/laser.ogg rename to core/assets/sounds/shoot/shootLancer.ogg diff --git a/core/assets/sounds/lasershoot.ogg b/core/assets/sounds/shoot/shootLaser.ogg similarity index 100% rename from core/assets/sounds/lasershoot.ogg rename to core/assets/sounds/shoot/shootLaser.ogg diff --git a/core/assets/sounds/bolt.ogg b/core/assets/sounds/shoot/shootLocus.ogg similarity index 100% rename from core/assets/sounds/bolt.ogg rename to core/assets/sounds/shoot/shootLocus.ogg diff --git a/core/assets/sounds/malignShoot.ogg b/core/assets/sounds/shoot/shootMalign.ogg similarity index 100% rename from core/assets/sounds/malignShoot.ogg rename to core/assets/sounds/shoot/shootMalign.ogg diff --git a/core/assets/sounds/laserbig.ogg b/core/assets/sounds/shoot/shootMeltdown.ogg similarity index 100% rename from core/assets/sounds/laserbig.ogg rename to core/assets/sounds/shoot/shootMeltdown.ogg diff --git a/core/assets/sounds/shootMerui.ogg b/core/assets/sounds/shoot/shootMerui.ogg similarity index 100% rename from core/assets/sounds/shootMerui.ogg rename to core/assets/sounds/shoot/shootMerui.ogg diff --git a/core/assets/sounds/missile.ogg b/core/assets/sounds/shoot/shootMissile.ogg similarity index 100% rename from core/assets/sounds/missile.ogg rename to core/assets/sounds/shoot/shootMissile.ogg diff --git a/core/assets/sounds/missileLarge.ogg b/core/assets/sounds/shoot/shootMissileLarge.ogg similarity index 100% rename from core/assets/sounds/missileLarge.ogg rename to core/assets/sounds/shoot/shootMissileLarge.ogg diff --git a/core/assets/sounds/missileLong.ogg b/core/assets/sounds/shoot/shootMissileLong.ogg similarity index 100% rename from core/assets/sounds/missileLong.ogg rename to core/assets/sounds/shoot/shootMissileLong.ogg diff --git a/core/assets/sounds/missilePlasma.ogg b/core/assets/sounds/shoot/shootMissilePlasma.ogg similarity index 100% rename from core/assets/sounds/missilePlasma.ogg rename to core/assets/sounds/shoot/shootMissilePlasma.ogg diff --git a/core/assets/sounds/missilePlasmaShort.ogg b/core/assets/sounds/shoot/shootMissilePlasmaShort.ogg similarity index 100% rename from core/assets/sounds/missilePlasmaShort.ogg rename to core/assets/sounds/shoot/shootMissilePlasmaShort.ogg diff --git a/core/assets/sounds/missileShort.ogg b/core/assets/sounds/shoot/shootMissileShort.ogg similarity index 100% rename from core/assets/sounds/missileShort.ogg rename to core/assets/sounds/shoot/shootMissileShort.ogg diff --git a/core/assets/sounds/missileSmall.ogg b/core/assets/sounds/shoot/shootMissileSmall.ogg similarity index 100% rename from core/assets/sounds/missileSmall.ogg rename to core/assets/sounds/shoot/shootMissileSmall.ogg diff --git a/core/assets/sounds/shootNavanax.ogg b/core/assets/sounds/shoot/shootNavanax.ogg similarity index 100% rename from core/assets/sounds/shootNavanax.ogg rename to core/assets/sounds/shoot/shootNavanax.ogg diff --git a/core/assets/sounds/shootOmura.ogg b/core/assets/sounds/shoot/shootOmura.ogg similarity index 100% rename from core/assets/sounds/shootOmura.ogg rename to core/assets/sounds/shoot/shootOmura.ogg diff --git a/core/assets/sounds/shootPayload.ogg b/core/assets/sounds/shoot/shootPayload.ogg similarity index 100% rename from core/assets/sounds/shootPayload.ogg rename to core/assets/sounds/shoot/shootPayload.ogg diff --git a/core/assets/sounds/shock.ogg b/core/assets/sounds/shoot/shootPulsar.ogg similarity index 100% rename from core/assets/sounds/shock.ogg rename to core/assets/sounds/shoot/shootPulsar.ogg diff --git a/core/assets/sounds/plasmadrop.ogg b/core/assets/sounds/shoot/shootQuad.ogg similarity index 100% rename from core/assets/sounds/plasmadrop.ogg rename to core/assets/sounds/shoot/shootQuad.ogg diff --git a/core/assets/sounds/shootReign.ogg b/core/assets/sounds/shoot/shootReign.ogg similarity index 100% rename from core/assets/sounds/shootReign.ogg rename to core/assets/sounds/shoot/shootReign.ogg diff --git a/core/assets/sounds/torpedoPlasma.ogg b/core/assets/sounds/shoot/shootRetusa.ogg similarity index 100% rename from core/assets/sounds/torpedoPlasma.ogg rename to core/assets/sounds/shoot/shootRetusa.ogg diff --git a/core/assets/sounds/shootRipple.ogg b/core/assets/sounds/shoot/shootRipple.ogg similarity index 100% rename from core/assets/sounds/shootRipple.ogg rename to core/assets/sounds/shoot/shootRipple.ogg diff --git a/core/assets/sounds/shootSalvo.ogg b/core/assets/sounds/shoot/shootSalvo.ogg similarity index 100% rename from core/assets/sounds/shootSalvo.ogg rename to core/assets/sounds/shoot/shootSalvo.ogg diff --git a/core/assets/sounds/sap.ogg b/core/assets/sounds/shoot/shootSap.ogg similarity index 100% rename from core/assets/sounds/sap.ogg rename to core/assets/sounds/shoot/shootSap.ogg diff --git a/core/assets/sounds/missileLaunch.ogg b/core/assets/sounds/shoot/shootScathe.ogg similarity index 100% rename from core/assets/sounds/missileLaunch.ogg rename to core/assets/sounds/shoot/shootScathe.ogg diff --git a/core/assets/sounds/shootSnap.ogg b/core/assets/sounds/shoot/shootScatter.ogg similarity index 100% rename from core/assets/sounds/shootSnap.ogg rename to core/assets/sounds/shoot/shootScatter.ogg diff --git a/core/assets/sounds/shootScepter.ogg b/core/assets/sounds/shoot/shootScepter.ogg similarity index 100% rename from core/assets/sounds/shootScepter.ogg rename to core/assets/sounds/shoot/shootScepter.ogg diff --git a/core/assets/sounds/shootSegment.ogg b/core/assets/sounds/shoot/shootSegment.ogg similarity index 100% rename from core/assets/sounds/shootSegment.ogg rename to core/assets/sounds/shoot/shootSegment.ogg diff --git a/core/assets/sounds/shootSmite.ogg b/core/assets/sounds/shoot/shootSmite.ogg similarity index 100% rename from core/assets/sounds/shootSmite.ogg rename to core/assets/sounds/shoot/shootSmite.ogg diff --git a/core/assets/sounds/shootSpectre.ogg b/core/assets/sounds/shoot/shootSpectre.ogg similarity index 100% rename from core/assets/sounds/shootSpectre.ogg rename to core/assets/sounds/shoot/shootSpectre.ogg diff --git a/core/assets/sounds/shootStell.ogg b/core/assets/sounds/shoot/shootStell.ogg similarity index 100% rename from core/assets/sounds/shootStell.ogg rename to core/assets/sounds/shoot/shootStell.ogg diff --git a/core/assets/sounds/torch.ogg b/core/assets/sounds/shoot/shootSublimate.ogg similarity index 100% rename from core/assets/sounds/torch.ogg rename to core/assets/sounds/shoot/shootSublimate.ogg diff --git a/core/assets/sounds/mediumCannon.ogg b/core/assets/sounds/shoot/shootTank.ogg similarity index 100% rename from core/assets/sounds/mediumCannon.ogg rename to core/assets/sounds/shoot/shootTank.ogg diff --git a/core/assets/sounds/shotgunSap.ogg b/core/assets/sounds/shoot/shootToxopidShotgun.ogg similarity index 100% rename from core/assets/sounds/shotgunSap.ogg rename to core/assets/sounds/shoot/shootToxopidShotgun.ogg diff --git a/core/assets/sounds/wave.ogg b/core/assets/sounds/ui/waveSpawn.ogg similarity index 100% rename from core/assets/sounds/wave.ogg rename to core/assets/sounds/ui/waveSpawn.ogg diff --git a/core/assets/sounds/unitCreateBig.ogg b/core/assets/sounds/unitCreateBig.ogg deleted file mode 100644 index 5dccb757a5..0000000000 Binary files a/core/assets/sounds/unitCreateBig.ogg and /dev/null differ diff --git a/core/src/mindustry/audio/SoundPriority.java b/core/src/mindustry/audio/SoundPriority.java index 459eb0aaca..857c172fc5 100644 --- a/core/src/mindustry/audio/SoundPriority.java +++ b/core/src/mindustry/audio/SoundPriority.java @@ -11,14 +11,13 @@ public class SoundPriority{ static int lastGroup = 1; public static void init(){ - max(7, laserbig, beam, laserbeam); + max(7, beamPlasma, shootMeltdown, beamMeltdown); //priority 2: long weapon loops and big explosions set( 2f, - laserbig, - beam, - laserbeam, + beamMeltdown, + beamLustre, beamPlasma, reactorExplosion, reactorExplosion2, @@ -29,31 +28,36 @@ public class SoundPriority{ //priority 1.5: big weapon sounds, not loops set( 1.5f, - railgun, - largeCannon, - lasercharge, - lasercharge2, - lasercharge3 + shootMeltdown, + shootSublimate, + shootForeshadow, + shootConquer, + shootCorvus, + chargeCorvus, + chargeVela, + chargeLancer ); //priority 1: ambient noises set( 1f, - conveyor, - smelter, - drill, - extractLoop, - flux, - hum, - respawning + loopConveyor, + loopSmelter, + loopDrill, + loopExtract, + loopFlux, + loopHum, + loopBio, + loopTech, + loopUnitBuilding ); //very loud - laser.setMaxConcurrent(5); + shootLancer.setMaxConcurrent(5); - sameGroup(flame, flamePlasma); - sameGroup(missile, missileShort, missilePlasmaShort); - sameGroup(spark, shock); + sameGroup(shootFlame, shootFlamePlasma); + sameGroup(shootMissile, shootMissileShort, shootMissilePlasmaShort); + sameGroup(shootArc, shootPulsar); for(var sound : Core.assets.getAll(Sound.class, new Seq<>())){ sound.setMinConcurrentInterrupt(Math.min(0.25f, sound.getLength() * 0.5f)); @@ -69,7 +73,7 @@ public class SoundPriority{ max(4, mechStep, mechStepHeavy, walkerStep, walkerStepSmall, walkerStepTiny, mechStepSmall); //repair sounds are lower priority and generally not important - set(-1f, blockHeal, healAbility); + set(-1f, blockHeal, healWave); //step sounds are low priority set(-2f, mechStep, mechStepHeavy, walkerStep, walkerStepSmall, walkerStepTiny, mechStepSmall); diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 8a1d8e91a4..b5cc4c7143 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -399,7 +399,7 @@ public class Blocks{ statusDuration = 30f; attributes.set(Attribute.water, 1f); cacheLayer = CacheLayer.mud; - walkSound = Sounds.mud; + walkSound = Sounds.stepMud; walkSoundVolume = 0.08f; walkSoundPitchMin = 0.4f; walkSoundPitchMax = 0.5f; @@ -1070,7 +1070,7 @@ public class Blocks{ hasPower = true; hasLiquids = false; drawer = new DrawMulti(new DrawDefault(), new DrawFlame(Color.valueOf("ffef99"))); - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.07f; consumeItems(with(Items.coal, 1, Items.sand, 2)); @@ -1088,7 +1088,7 @@ public class Blocks{ itemCapacity = 30; boostScale = 0.15f; drawer = new DrawMulti(new DrawDefault(), new DrawFlame(Color.valueOf("ffef99"))); - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.07f; consumeItems(with(Items.coal, 4, Items.sand, 6, Items.pyratite, 1)); @@ -1103,7 +1103,7 @@ public class Blocks{ size = 2; hasPower = hasItems = true; drawer = new DrawMulti(new DrawDefault(), new DrawFlame(Color.valueOf("ffc099"))); - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.07f; consumeItems(with(Items.lead, 1, Items.sand, 1)); @@ -1138,7 +1138,7 @@ public class Blocks{ drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawWeave(), new DrawDefault()); envEnabled |= Env.space; - ambientSound = Sounds.techloop; + ambientSound = Sounds.loopTech; ambientSoundVolume = 0.02f; consumeItems(with(Items.thorium, 4, Items.sand, 10)); @@ -1292,7 +1292,7 @@ public class Blocks{ spinSprite = true; rotateSpeed = 2f; }}, new DrawRegion("-top")); - ambientSound = Sounds.grinding; + ambientSound = Sounds.loopGrind; ambientSoundVolume = 0.025f; consumeItem(Items.scrap, 1); @@ -1335,7 +1335,7 @@ public class Blocks{ drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawArcSmelt(), new DrawDefault()); fogRadius = 3; researchCost = with(Items.beryllium, 150, Items.graphite, 50); - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.12f; consumeItems(with(Items.graphite, 1, Items.sand, 4)); @@ -1378,7 +1378,7 @@ public class Blocks{ }} ); - ambientSound = Sounds.electricHum; + ambientSound = Sounds.loopElectricHum; ambientSoundVolume = 0.08f; regionRotated1 = 3; @@ -1405,7 +1405,7 @@ public class Blocks{ itemCapacity = 0; liquidCapacity = 60f; consumePower(2f); - ambientSound = Sounds.extractLoop; + ambientSound = Sounds.loopExtract; ambientSoundVolume = 0.06f; heatRequirement = 6f; @@ -1429,7 +1429,7 @@ public class Blocks{ rotateDraw = false; drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawLiquidRegion(), new DrawDefault(), new DrawHeatOutput()); - ambientSound = Sounds.extractLoop; + ambientSound = Sounds.loopExtract; ambientSoundVolume = 0.08f; regionRotated1 = 2; @@ -1448,7 +1448,7 @@ public class Blocks{ size = 2; heatOutput = 3f; regionRotated1 = 1; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; itemCapacity = 0; consumePower(100f / 60f); }}; @@ -1464,7 +1464,7 @@ public class Blocks{ liquidCapacity = 120f; rotateDraw = false; regionRotated1 = 1; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; consumeLiquid(Liquids.slag, 40f / 60f); heatOutput = 8f; @@ -1478,7 +1478,7 @@ public class Blocks{ size = 2; heatOutput = 15f; craftTime = 60f * 8f; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; consumeItem(Items.phaseFabric); }}; @@ -1532,7 +1532,7 @@ public class Blocks{ itemCapacity = 20; hasPower = hasItems = true; drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawCrucibleFlame(), new DrawDefault(), new DrawHeatInput()); - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.09f; heatRequirement = 10f; @@ -1582,7 +1582,7 @@ public class Blocks{ craftTime = 60f * 3f; liquidCapacity = 80f * 5; - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.9f; outputItem = new ItemStack(Items.surgeAlloy, 1); @@ -1626,7 +1626,7 @@ public class Blocks{ size = 3; - ambientSound = Sounds.extractLoop; + ambientSound = Sounds.loopExtract; ambientSoundVolume = 0.08f; liquidCapacity = 80f; @@ -1647,7 +1647,7 @@ public class Blocks{ craftTime = 60f * 2f; liquidCapacity = 10f * 4; - ambientSound = Sounds.techloop; + ambientSound = Sounds.loopTech; ambientSoundVolume = 0.04f; outputItem = new ItemStack(Items.phaseFabric, 1); @@ -2515,7 +2515,7 @@ public class Blocks{ powerProduction = 1f; itemDuration = 120f; - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.03f; generateEffect = Fx.generatespark; @@ -2532,7 +2532,7 @@ public class Blocks{ effectChance = 0.011f; size = 2; floating = true; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; ambientSoundVolume = 0.06f; }}; @@ -2545,7 +2545,7 @@ public class Blocks{ size = 2; generateEffect = Fx.generatespark; - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.06f; consume(new ConsumeItemFlammable()); @@ -2573,9 +2573,9 @@ public class Blocks{ hasLiquids = true; hasItems = true; size = 3; - ambientSound = Sounds.steam; + ambientSound = Sounds.loopSteam; generateEffect = Fx.generatespark; - ambientSoundVolume = 0.03f; + ambientSoundVolume = 0.05f; drawer = new DrawMulti(new DrawDefault(), new DrawWarmupRegion(), new DrawLiquidRegion()); @@ -2609,7 +2609,7 @@ public class Blocks{ thoriumReactor = new NuclearReactor("thorium-reactor"){{ requirements(Category.power, with(Items.lead, 300, Items.silicon, 200, Items.graphite, 150, Items.thorium, 150, Items.metaglass, 50)); - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; ambientSoundVolume = 0.24f; size = 3; health = 700; @@ -2627,7 +2627,7 @@ public class Blocks{ health = 900; powerProduction = 130f; itemDuration = 140f; - ambientSound = Sounds.pulse; + ambientSound = Sounds.loopPulse; ambientSoundVolume = 0.08f; liquidCapacity = 80f; @@ -2685,7 +2685,7 @@ public class Blocks{ generateEffect = Fx.turbinegenerate; effectChance = 0.04f; size = 3; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; ambientSoundVolume = 0.06f; drawer = new DrawMulti(new DrawDefault(), new DrawBlurSpin("-rotator", 0.6f * 9f){{ @@ -2717,7 +2717,7 @@ public class Blocks{ liquidCapacity = 20f * 5; - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.06f; }}; @@ -2745,7 +2745,7 @@ public class Blocks{ generateEffect = Fx.none; - ambientSound = Sounds.smelter; + ambientSound = Sounds.loopSmelter; ambientSoundVolume = 0.06f; researchCostMultiplier = 0.4f; @@ -2763,8 +2763,8 @@ public class Blocks{ explosionRadius = 17; explosionDamage = 2500; - ambientSound = Sounds.flux; - ambientSoundVolume = 0.13f; + ambientSound = Sounds.loopFlux; + ambientSoundVolume = 0.15f; size = 5; @@ -2811,7 +2811,7 @@ public class Blocks{ powerProduction = 140f; - ambientSound = Sounds.bioLoop; + ambientSound = Sounds.loopBio; ambientSoundVolume = 0.2f; explosionPuddles = 80; @@ -2978,7 +2978,7 @@ public class Blocks{ drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawBlurSpin("-rotator", 6f), new DrawRegion("-mid"), new DrawLiquidTile(Liquids.water, 38f / 4f), new DrawDefault()); craftTime = 120f; size = 3; - ambientSound = Sounds.hum; + ambientSound = Sounds.loopHum; ambientSoundVolume = 0.06f; hasLiquids = true; boostScale = 1f / 9f; @@ -2998,7 +2998,7 @@ public class Blocks{ output = Items.sand; fogRadius = 2; researchCost = with(Items.beryllium, 100, Items.graphite, 40); - ambientSound = Sounds.drill; + ambientSound = Sounds.loopDrill; ambientSoundVolume = 0.04f; }}; @@ -3011,7 +3011,7 @@ public class Blocks{ attribute = Attribute.sand; output = Items.sand; fogRadius = 3; - ambientSound = Sounds.drill; + ambientSound = Sounds.loopDrill; ambientSoundVolume = 0.08f; consumeLiquid(Liquids.hydrogen, 1f / 60f); @@ -3393,7 +3393,7 @@ public class Blocks{ shootCone = 35f; scaledHealth = 200; - shootSound = Sounds.shootSnap; + shootSound = Sounds.shootScatter; coolant = consumeCoolant(0.2f); researchCostMultiplier = 0.05f; @@ -3440,7 +3440,7 @@ public class Blocks{ targetAir = false; ammoUseEffect = Fx.none; health = 400; - shootSound = Sounds.flame; + shootSound = Sounds.shootFlame; coolant = consumeCoolant(0.1f); }}; @@ -3503,7 +3503,7 @@ public class Blocks{ inaccuracy = 1f; shootCone = 10f; health = 260; - shootSound = Sounds.artillerySmall; + shootSound = Sounds.shootArtillerySmall; coolant = consumeCoolant(0.1f); limitRange(0f); }}; @@ -3557,9 +3557,9 @@ public class Blocks{ targetAir = false; moveWhileCharging = false; accurateDelay = false; - shootSound = Sounds.laser; + shootSound = Sounds.shootLancer; coolant = consumeCoolant(0.2f); - chargeSound = Sounds.lasercharge3; + chargeSound = Sounds.chargeLancer; consumePower(6f); @@ -3613,7 +3613,7 @@ public class Blocks{ recoil = 1f; size = 1; health = 260; - shootSound = Sounds.spark; + shootSound = Sounds.shootArc; consumePower(3.3f); coolant = consumeCoolant(0.1f); }}; @@ -3700,7 +3700,7 @@ public class Blocks{ consumeAmmoOnce = false; size = 2; scaledHealth = 300; - shootSound = Sounds.missile; + shootSound = Sounds.shootMissile; envEnabled |= Env.space; limitRange(5f); @@ -3901,7 +3901,7 @@ public class Blocks{ envEnabled |= Env.space; scaledHealth = 220; - shootSound = Sounds.shotgun; + shootSound = Sounds.shootFuse; shootSoundVolume = 0.9f; coolant = consumeCoolant(0.3f); @@ -4203,7 +4203,7 @@ public class Blocks{ shake = 4f; size = 4; shootCone = 2f; - shootSound = Sounds.railgun; + shootSound = Sounds.shootForeshadow; unitSort = UnitSorts.strongest; envEnabled |= Env.space; @@ -4290,8 +4290,8 @@ public class Blocks{ reload = 90f; firingMoveFract = 0.5f; shootDuration = 230f; - shootSound = Sounds.laserbig; - loopSound = Sounds.beam; + shootSound = Sounds.shootMeltdown; + loopSound = Sounds.beamMeltdown; loopSoundVolume = 2f; envEnabled |= Env.space; @@ -4563,7 +4563,7 @@ public class Blocks{ float r = range = 130f; - loopSound = Sounds.torch; + loopSound = Sounds.shootSublimate; shootSound = Sounds.none; loopSoundVolume = 1f; @@ -4734,7 +4734,7 @@ public class Blocks{ }} ); - shootSound = Sounds.mediumCannon; + shootSound = Sounds.shootTank; ammoPerShot = 4; maxAmmo = ammoPerShot * 3; targetAir = false; @@ -5134,7 +5134,7 @@ public class Blocks{ scaleDamageEfficiency = true; shootSound = Sounds.none; loopSoundVolume = 1f; - loopSound = Sounds.laserbeam; + loopSound = Sounds.beamLustre; shootWarmupSpeed = 0.08f; shootCone = 360f; @@ -5180,7 +5180,7 @@ public class Blocks{ trailLength = 18; missileAccelTime = 50f; lowAltitude = true; - loopSound = Sounds.missileTrail; + loopSound = Sounds.loopMissileTrail; loopSoundVolume = 0.6f; deathSound = Sounds.largeExplosion; targetAir = false; @@ -5267,7 +5267,7 @@ public class Blocks{ trailLength = 18; missileAccelTime = 50f; lowAltitude = true; - loopSound = Sounds.missileTrail; + loopSound = Sounds.loopMissileTrail; loopSoundVolume = 0.6f; deathSound = Sounds.largeExplosion; targetAir = false; @@ -5373,7 +5373,7 @@ public class Blocks{ trailLength = 18; missileAccelTime = 30f; lowAltitude = true; - loopSound = Sounds.missileTrail; + loopSound = Sounds.loopMissileTrail; loopSoundVolume = 0.6f; deathSound = Sounds.largeExplosion; targetAir = false; @@ -5428,7 +5428,7 @@ public class Blocks{ rotateSpeed = 1.4f; trailLength = 12; lowAltitude = true; - loopSound = Sounds.missileTrail; + loopSound = Sounds.loopMissileTrail; loopSoundVolume = 0.6f; deathSound = Sounds.largeExplosion; targetAir = false; @@ -5532,7 +5532,7 @@ public class Blocks{ fogRadiusMultiplier = 0.4f; coolantMultiplier = 15f; - shootSound = Sounds.missileLaunch; + shootSound = Sounds.shootScathe; minWarmup = 0.94f; newTargetInterval = 40f; @@ -5824,7 +5824,7 @@ public class Blocks{ coolant = consume(new ConsumeLiquid(Liquids.water, 15f / 60f)); limitRange(); - loopSound = Sounds.glow; + loopSound = Sounds.loopGlow; loopSoundVolume = 0.8f; }}; @@ -5839,8 +5839,8 @@ public class Blocks{ var circleColor = haloColor; float circleY = 25f, circleRad = 11f, circleRotSpeed = 3.5f, circleStroke = 1.6f; - shootSound = Sounds.malignShoot; - loopSound = Sounds.spellLoop; + shootSound = Sounds.shootMalign; + loopSound = Sounds.loopMalign; loopSoundVolume = 1.3f; shootType = new FlakBulletType(8f, 70f){{ diff --git a/core/src/mindustry/content/UnitTypes.java b/core/src/mindustry/content/UnitTypes.java index 573e66ed8b..06d0dcbcb3 100644 --- a/core/src/mindustry/content/UnitTypes.java +++ b/core/src/mindustry/content/UnitTypes.java @@ -105,7 +105,6 @@ public class UnitTypes{ stepSoundVolume = 0.4f; weapons.add(new Weapon("large-weapon"){{ - shootSound = Sounds.shootDagger; reload = 13f; x = 4f; y = 2f; @@ -129,7 +128,7 @@ public class UnitTypes{ weapons.add(new Weapon("flamethrower"){{ top = false; - shootSound = Sounds.flame; + shootSound = Sounds.shootFlame; shootY = 2f; reload = 22f; recoil = 1f; @@ -172,7 +171,7 @@ public class UnitTypes{ recoil = 4f; shake = 2f; ejectEffect = Fx.casing2; - shootSound = Sounds.artillery; + shootSound = Sounds.shootArtillery; bullet = new ArtilleryBulletType(2f, 20, "shell"){{ hitEffect = Fx.blastExplosion; knockback = 0.8f; @@ -240,7 +239,7 @@ public class UnitTypes{ lightningColor = Pal.surge; //standard bullet damage is far too much for lightning lightningDamage = 20; - despawnSound = Sounds.sparkBullet; + despawnSound = Sounds.shockBullet; }}; }}, @@ -251,7 +250,6 @@ public class UnitTypes{ rotate = true; ejectEffect = Fx.casing1; bullet = smallBullet; - shootSound = Sounds.shootDagger; }}, new Weapon("mount-weapon"){{ reload = 16f; @@ -260,7 +258,6 @@ public class UnitTypes{ rotate = true; ejectEffect = Fx.casing1; bullet = smallBullet; - shootSound = Sounds.shootDagger; }} ); }}; @@ -352,7 +349,7 @@ public class UnitTypes{ alternate = false; ejectEffect = Fx.none; recoil = 2f; - shootSound = Sounds.lasershoot; + shootSound = Sounds.shootLaser; bullet = new LaserBoltBulletType(5.2f, 13){{ lifetime = 30f; @@ -396,7 +393,7 @@ public class UnitTypes{ ejectEffect = Fx.none; recoil = 2.5f; - shootSound = Sounds.shock; + shootSound = Sounds.shootPulsar; bullet = new LightningBulletType(){{ lightningColor = hitColor = Pal.heal; @@ -451,7 +448,7 @@ public class UnitTypes{ x = 6.5f; reload = 55f; recoil = 4f; - shootSound = Sounds.laser; + shootSound = Sounds.shootLancer; bullet = new LaserBulletType(){{ damage = 45f; @@ -509,9 +506,9 @@ public class UnitTypes{ reload = 155f; recoil = 0f; - chargeSound = Sounds.lasercharge2; + chargeSound = Sounds.chargeVela; shootSound = Sounds.beamPlasma; - initialShootSound = Sounds.beamPlasmaFire; + initialShootSound = Sounds.shootBeamPlasma; continuous = true; cooldownTime = 200f; @@ -582,8 +579,8 @@ public class UnitTypes{ drawShields = false; weapons.add(new Weapon("corvus-weapon"){{ - shootSound = Sounds.laserblast; - chargeSound = Sounds.lasercharge; + shootSound = Sounds.shootCorvus; + chargeSound = Sounds.chargeCorvus; soundPitchMin = 1f; top = false; mirror = false; @@ -744,7 +741,7 @@ public class UnitTypes{ ejectEffect = Fx.none; recoil = 2f; rotate = true; - shootSound = Sounds.sap; + shootSound = Sounds.shootSap; x = 8.5f; y = -1.5f; @@ -767,7 +764,7 @@ public class UnitTypes{ rotate = true; x = 4f; y = 3f; - shootSound = Sounds.sap; + shootSound = Sounds.shootSap; bullet = new SapBulletType(){{ sapStrength = 0.8f; @@ -834,7 +831,7 @@ public class UnitTypes{ y = 8f; rotate = true; bullet = sapper; - shootSound = Sounds.sap; + shootSound = Sounds.shootSap; }}, new Weapon("spiroct-weapon"){{ reload = 14f; @@ -842,7 +839,7 @@ public class UnitTypes{ y = 6f; rotate = true; bullet = sapper; - shootSound = Sounds.sap; + shootSound = Sounds.shootSap; }}, new Weapon("spiroct-weapon"){{ reload = 22f; @@ -850,7 +847,7 @@ public class UnitTypes{ y = 0f; rotate = true; bullet = sapper; - shootSound = Sounds.sap; + shootSound = Sounds.shootSap; }}, new Weapon("large-purple-mount"){{ y = -7f; @@ -860,7 +857,7 @@ public class UnitTypes{ shake = 3f; rotateSpeed = 2f; ejectEffect = Fx.casing1; - shootSound = Sounds.artillerySap; + shootSound = Sounds.shootArtillerySap; rotate = true; shadow = 8f; recoil = 3f; @@ -928,7 +925,7 @@ public class UnitTypes{ shake = 4f; rotateSpeed = 2f; ejectEffect = Fx.casing1; - shootSound = Sounds.shotgunSap; + shootSound = Sounds.shootToxopidShotgun; shootSoundVolume = 0.8f; rotate = true; shadow = 12f; @@ -961,7 +958,7 @@ public class UnitTypes{ recoil = 10f; rotateSpeed = 1f; ejectEffect = Fx.casing3; - shootSound = Sounds.artillerySapBig; + shootSound = Sounds.shootArtillerySapBig; rotate = true; shadow = 30f; @@ -1057,7 +1054,6 @@ public class UnitTypes{ smokeEffect = Fx.shootSmallSmoke; ammoMultiplier = 2; }}; - shootSound = Sounds.shootDagger; }}); }}; @@ -1091,7 +1087,7 @@ public class UnitTypes{ ejectEffect = Fx.none; inaccuracy = 15f; ignoreRotation = true; - shootSound = Sounds.bombDrop; + shootSound = Sounds.shootHorizon; soundPitchMax = 1.2f; bullet = new BombBulletType(27f, 25f){{ width = 10f; @@ -1132,7 +1128,7 @@ public class UnitTypes{ shoot.shots = 2; inaccuracy = 5f; velocityRnd = 0.2f; - shootSound = Sounds.missileLong; + shootSound = Sounds.shootMissileLong; bullet = new MissileBulletType(3f, 14){{ width = 8f; @@ -1194,7 +1190,7 @@ public class UnitTypes{ ejectEffect = Fx.casing1; rotateSpeed = 8f; bullet = missiles; - shootSound = Sounds.missile; + shootSound = Sounds.shootMissile; rotate = true; shadow = 6f; }}, @@ -1205,7 +1201,7 @@ public class UnitTypes{ rotateSpeed = 8f; ejectEffect = Fx.casing1; bullet = missiles; - shootSound = Sounds.missile; + shootSound = Sounds.shootMissile; rotate = true; shadow = 6f; }}, @@ -1266,7 +1262,7 @@ public class UnitTypes{ rotateSpeed = 2f; reload = 45f; recoil = 4f; - shootSound = Sounds.laser2; + shootSound = Sounds.shootEclipse; shadow = 20f; rotate = true; @@ -1361,7 +1357,7 @@ public class UnitTypes{ reload = 30f; ejectEffect = Fx.none; recoil = 2f; - shootSound = Sounds.missilePlasmaShort; + shootSound = Sounds.shootMissilePlasmaShort; velocityRnd = 0.5f; inaccuracy = 15f; alternate = true; @@ -1411,7 +1407,7 @@ public class UnitTypes{ weapons.add( new Weapon("heal-weapon-mount"){{ - shootSound = Sounds.lasershoot; + shootSound = Sounds.shootLaser; reload = 24f; x = 8f; y = -6f; @@ -1425,7 +1421,7 @@ public class UnitTypes{ }}; }}, new Weapon("heal-weapon-mount"){{ - shootSound = Sounds.lasershoot; + shootSound = Sounds.shootLaser; reload = 15f; x = 4f; y = 5f; @@ -1472,7 +1468,7 @@ public class UnitTypes{ minShootVelocity = 0.01f; soundPitchMin = 1f; - shootSound = Sounds.plasmadrop; + shootSound = Sounds.shootQuad; bullet = new BasicBulletType(){{ sprite = "large-bomb"; @@ -1485,7 +1481,7 @@ public class UnitTypes{ frontColor = Color.white; mixColorTo = Color.white; - hitSound = Sounds.plasmaBomb; + hitSound = Sounds.explodePlasma; shootCone = 180f; ejectEffect = Fx.none; @@ -1560,7 +1556,6 @@ public class UnitTypes{ y = 1.5f; rotate = true; ejectEffect = Fx.casing1; - shootSound = Sounds.shootDagger; bullet = new BasicBulletType(2.5f, 9){{ width = 7f; height = 9f; @@ -1576,7 +1571,7 @@ public class UnitTypes{ y = -5f; rotate = true; ejectEffect = Fx.casing1; - shootSound = Sounds.missileShort; + shootSound = Sounds.shootMissileShort; bullet = new MissileBulletType(2.7f, 12, "missile"){{ keepVelocity = true; width = 8f; @@ -1644,7 +1639,7 @@ public class UnitTypes{ rotateSpeed = 2f; shake = 1.5f; ejectEffect = Fx.casing2; - shootSound = Sounds.artillerySmall; + shootSound = Sounds.shootArtillerySmall; bullet = new ArtilleryBulletType(3f, 20, "shell"){{ hitEffect = Fx.flakExplosion; knockback = 0.8f; @@ -1689,7 +1684,7 @@ public class UnitTypes{ inaccuracy = 3f; ejectEffect = Fx.casing3; - shootSound = Sounds.artillery; + shootSound = Sounds.shootArtillery; bullet = new ArtilleryBulletType(3.2f, 15){{ trailMult = 0.8f; @@ -1728,7 +1723,7 @@ public class UnitTypes{ inaccuracy = 5f; velocityRnd = 0.1f; - shootSound = Sounds.missileShort; + shootSound = Sounds.shootMissileShort; ammoType = new ItemAmmoType(Items.thorium); ejectEffect = Fx.none; @@ -1787,7 +1782,7 @@ public class UnitTypes{ inaccuracy = 7f; ejectEffect = Fx.none; shake = 1f; - shootSound = Sounds.missileLong; + shootSound = Sounds.shootMissileLong; shoot = new ShootAlternate(){{ shots = 6; @@ -1924,7 +1919,7 @@ public class UnitTypes{ }}); weapons.add(new Weapon("retusa-weapon"){{ - shootSound = Sounds.lasershoot; + shootSound = Sounds.shootLaser; reload = 22f; x = 4.5f; y = -3.5f; @@ -1945,7 +1940,7 @@ public class UnitTypes{ rotate = true; reload = 90f; x = y = shootX = shootY = 0f; - shootSound = Sounds.torpedoPlasma; + shootSound = Sounds.shootRetusa; rotateSpeed = 180f; shootSoundVolume = 0.9f; @@ -2028,7 +2023,7 @@ public class UnitTypes{ rotateSpeed = 5f; inaccuracy = 10f; ejectEffect = Fx.casing1; - shootSound = Sounds.flamePlasma; + shootSound = Sounds.shootFlamePlasma; shootSoundVolume = 0.9f; shootCone = 30f; @@ -2118,7 +2113,7 @@ public class UnitTypes{ rotate = true; inaccuracy = 1f; velocityRnd = 0.1f; - shootSound = Sounds.missilePlasma; + shootSound = Sounds.shootMissilePlasma; ejectEffect = Fx.none; bullet = new FlakBulletType(2.5f, 25){{ @@ -2303,7 +2298,7 @@ public class UnitTypes{ reload = 170f; recoil = 1f; shootSound = Sounds.beamPlasmaSmall; - initialShootSound = Sounds.beamPlasmaFireSmall; + initialShootSound = Sounds.shootBeamPlasmaSmall; continuous = true; cooldownTime = reload; immunities.add(StatusEffects.burning); @@ -2388,7 +2383,7 @@ public class UnitTypes{ hitShake = 4f; trailRotation = true; status = StatusEffects.electrified; - hitSound = Sounds.empBlast; + hitSound = Sounds.explosionNavanax; trailEffect = new Effect(16f, e -> { color(Pal.heal); @@ -2458,7 +2453,7 @@ public class UnitTypes{ top = false; bullet = new LaserBoltBulletType(2.5f, 11){{ - shootSound = Sounds.laserbolt; + shootSound = Sounds.shootAlpha; keepVelocity = false; width = 1.5f; height = 4.5f; @@ -2507,7 +2502,7 @@ public class UnitTypes{ shoot.shotDelay = 4f; bullet = new LaserBoltBulletType(3f, 11){{ - shootSound = Sounds.laserbolt; + shootSound = Sounds.shootAlpha; keepVelocity = false; width = 1.5f; height = 4.5f; @@ -2560,7 +2555,7 @@ public class UnitTypes{ inaccuracy = 3f; bullet = new LaserBoltBulletType(3.5f, 11){{ - shootSound = Sounds.laserbolt; + shootSound = Sounds.shootAlpha; keepVelocity = false; width = 1.5f; height = 5f; @@ -2645,7 +2640,7 @@ public class UnitTypes{ tankMoveSound = Sounds.tankMove; weapons.add(new Weapon("locus-weapon"){{ - shootSound = Sounds.bolt; + shootSound = Sounds.shootLocus; layerOffset = 0.0001f; reload = 18f; shootY = 10f; @@ -2801,7 +2796,7 @@ public class UnitTypes{ tankMoveSound = Sounds.tankMoveHeavy; weapons.add(new Weapon("vanquish-weapon"){{ - shootSound = Sounds.mediumCannon; + shootSound = Sounds.shootTank; layerOffset = 0.0001f; reload = 70f; shootY = 71f / 4f; @@ -2905,7 +2900,7 @@ public class UnitTypes{ treadRects = new Rect[]{new Rect(27 - xo, 152 - yo, 56, 73), new Rect(24 - xo, 51 - 9 - yo, 29, 17), new Rect(59 - xo, 18 - 9 - yo, 39, 19)}; weapons.add(new Weapon("conquer-weapon"){{ - shootSound = Sounds.largeCannon; + shootSound = Sounds.shootConquer; layerOffset = 0.1f; reload = 100f; shootY = 32.5f; @@ -3255,7 +3250,7 @@ public class UnitTypes{ recoil = 0.5f; bullet = new BulletType(){{ - shootSound = Sounds.lasershoot; + shootSound = Sounds.shootLaser; shootEffect = Fx.sparkShoot; hitEffect = Fx.pointHit; maxRange = 100f; @@ -3313,7 +3308,7 @@ public class UnitTypes{ } weapons.add(new Weapon("anthicus-weapon"){{ - shootSound = Sounds.missileLarge; + shootSound = Sounds.shootMissileLarge; shootSoundVolume = 0.5f; x = 29f / 4f; y = -11f / 4f; @@ -3475,7 +3470,7 @@ public class UnitTypes{ groundLayer = Layer.legUnit; weapons.add(new Weapon("tecta-weapon"){{ - shootSound = Sounds.malignShoot; + shootSound = Sounds.shootMalign; mirror = true; top = false; @@ -3573,7 +3568,7 @@ public class UnitTypes{ alwaysShootWhenMoving = true; weapons.add(new Weapon("collaris-weapon"){{ - shootSound = Sounds.pulseBlast; + shootSound = Sounds.shootCollaris; mirror = true; rotationLimit = 30f; rotateSpeed = 0.4f; @@ -3857,7 +3852,7 @@ public class UnitTypes{ }}); weapons.add(new Weapon(){{ - shootSound = Sounds.shockBlast; + shootSound = Sounds.explosionObviate; x = 0f; y = -2f; shootY = 0f; @@ -3968,7 +3963,7 @@ public class UnitTypes{ }}); weapons.add(new Weapon("quell-weapon"){{ - shootSound = Sounds.missileSmall; + shootSound = Sounds.shootMissileSmall; x = 51 / 4f; y = 5 / 4f; rotate = true; @@ -4085,7 +4080,8 @@ public class UnitTypes{ } weapons.add(new Weapon("disrupt-weapon"){{ - shootSound = Sounds.missileLarge; + shootSound = Sounds.shootMissileLarge; + shootSoundVolume = 0.6f; x = 78f / 4f; y = -10f / 4f; mirror = true; diff --git a/core/src/mindustry/content/Weathers.java b/core/src/mindustry/content/Weathers.java index d69a6b4b43..adfe534072 100644 --- a/core/src/mindustry/content/Weathers.java +++ b/core/src/mindustry/content/Weathers.java @@ -24,7 +24,7 @@ public class Weathers{ density = 1200f; attrs.set(Attribute.light, -0.15f); - sound = Sounds.windhowl; + sound = Sounds.windHowl; soundVol = 0f; soundVolOscMag = 1.5f; soundVolOscScl = 1100f; diff --git a/core/src/mindustry/core/Control.java b/core/src/mindustry/core/Control.java index 3a26a8d43f..0d24559b85 100644 --- a/core/src/mindustry/core/Control.java +++ b/core/src/mindustry/core/Control.java @@ -131,7 +131,7 @@ public class Control implements ApplicationListener, Loadable{ state.map.setHighScore(state.wave); } - Sounds.wave.play(); + Sounds.waveSpawn.play(); }); Events.on(GameOverEvent.class, event -> { diff --git a/core/src/mindustry/core/World.java b/core/src/mindustry/core/World.java index 4775af7cbc..c6b4c885be 100644 --- a/core/src/mindustry/core/World.java +++ b/core/src/mindustry/core/World.java @@ -133,15 +133,13 @@ public class World{ return tile; } - @Nullable - public Building build(int x, int y){ + public @Nullable Building build(int x, int y){ Tile tile = tile(x, y); if(tile == null) return null; return tile.build; } - @Nullable - public Building build(int pos){ + public @Nullable Building build(int pos){ Tile tile = tile(pos); if(tile == null) return null; return tile.build; @@ -151,16 +149,18 @@ public class World{ return tiles.getn(x, y); } - @Nullable - public Tile tileWorld(float x, float y){ + public @Nullable Tile tileWorld(float x, float y){ return tile(Math.round(x / tilesize), Math.round(y / tilesize)); } - @Nullable - public Building buildWorld(float x, float y){ + public @Nullable Building buildWorld(float x, float y){ return build(Math.round(x / tilesize), Math.round(y / tilesize)); } + public @Nullable Building buildWorld(Position pos){ + return buildWorld(pos.getX(), pos.getY()); + } + /** Convert from world to logic tile coordinates. Whole numbers are at centers of tiles. */ public static float conv(float coord){ return coord / tilesize; diff --git a/core/src/mindustry/entities/abilities/EnergyFieldAbility.java b/core/src/mindustry/entities/abilities/EnergyFieldAbility.java index 10c77306e7..9e07a49de2 100644 --- a/core/src/mindustry/entities/abilities/EnergyFieldAbility.java +++ b/core/src/mindustry/entities/abilities/EnergyFieldAbility.java @@ -24,7 +24,7 @@ public class EnergyFieldAbility extends Ability{ public float damage = 1, reload = 100, range = 60; public Effect healEffect = Fx.heal, hitEffect = Fx.hitLaserBlast, damageEffect = Fx.chainLightning; public StatusEffect status = StatusEffects.electrified; - public Sound shootSound = Sounds.spark; + public Sound shootSound = Sounds.shootEnergyField; public float statusDuration = 60f * 6f; public float x, y; public boolean targetGround = true, targetAir = true, hitBuildings = true, hitUnits = true; @@ -185,7 +185,7 @@ public class EnergyFieldAbility extends Ability{ } if(anyNearby){ - shootSound.at(unit); + shootSound.at(unit, 1f + Mathf.range(0.1f), 1f); if(useAmmo && state.rules.unitAmmo){ unit.ammo --; diff --git a/core/src/mindustry/entities/abilities/MoveLightningAbility.java b/core/src/mindustry/entities/abilities/MoveLightningAbility.java index c55849690b..454ce849e3 100644 --- a/core/src/mindustry/entities/abilities/MoveLightningAbility.java +++ b/core/src/mindustry/entities/abilities/MoveLightningAbility.java @@ -37,15 +37,15 @@ public class MoveLightningAbility extends Ability{ public @Nullable BulletType bullet; /** Bullet angle parameters */ public float bulletAngle = 0f, bulletSpread = 0f; - + public Effect shootEffect = Fx.sparkShoot; public boolean parentizeEffects; - public Sound shootSound = Sounds.spark; + public Sound shootSound = Sounds.shootArc; protected float side = 1f; - + MoveLightningAbility(){} - + public MoveLightningAbility(float damage, int length, float chance, float y, float minSpeed, float maxSpeed, Color color, String heatRegion){ this.damage = damage; this.length = length; @@ -56,7 +56,7 @@ public class MoveLightningAbility extends Ability{ this.color = color; this.heatRegion = heatRegion; } - + public MoveLightningAbility(float damage, int length, float chance, float y, float minSpeed, float maxSpeed, Color color){ this.damage = damage; this.length = length; @@ -95,7 +95,7 @@ public class MoveLightningAbility extends Ability{ if(alternate) side *= -1f; } } - + @Override public void draw(Unit unit){ float scl = Mathf.clamp((unit.vel().len() - minSpeed) / (maxSpeed - minSpeed)); diff --git a/core/src/mindustry/entities/abilities/RepairFieldAbility.java b/core/src/mindustry/entities/abilities/RepairFieldAbility.java index a007f0d051..de36669b27 100644 --- a/core/src/mindustry/entities/abilities/RepairFieldAbility.java +++ b/core/src/mindustry/entities/abilities/RepairFieldAbility.java @@ -15,7 +15,7 @@ public class RepairFieldAbility extends Ability{ public float amount = 1, reload = 100, range = 60, healPercent = 0f; public Effect healEffect = Fx.heal; public Effect activeEffect = Fx.healWaveDynamic; - public Sound sound = Sounds.healAbility; + public Sound sound = Sounds.healWave; public float soundVolume = 0.5f; public boolean parentizeEffects = false; /** Multiplies healing to units of the same type by this amount. */ diff --git a/core/src/mindustry/entities/comp/BuilderComp.java b/core/src/mindustry/entities/comp/BuilderComp.java index 09026d223f..31772b6116 100644 --- a/core/src/mindustry/entities/comp/BuilderComp.java +++ b/core/src/mindustry/entities/comp/BuilderComp.java @@ -155,7 +155,7 @@ abstract class BuilderComp implements Posc, Statusc, Teamc, Rotc{ if(!within(tile, finalPlaceDst)) continue; if(!headless){ - Vars.control.sound.loop(Sounds.build, tile, 0.15f); + Vars.control.sound.loop(Sounds.loopBuild, tile, 0.15f); } if(!(tile.build instanceof ConstructBuild cb)){ diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index 794b720c82..baacb406ab 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1489,7 +1489,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, playDestroySound(); if(explosiveness > 40f){ - Sounds.blockExplodeExplosive.at(tile, Mathf.random(block.destroyPitchMin, block.destroyPitchMax), block.destroySoundVolume); + (Mathf.chance(0.5) ? Sounds.blockExplodeExplosive : Sounds.blockExplodeExplosiveAlt).at(tile, Mathf.random(block.destroyPitchMin, block.destroyPitchMax), block.destroySoundVolume); }else if(flammability > 5f){ Sounds.blockExplodeFlammable.at(tile, Mathf.random(block.destroyPitchMin, block.destroyPitchMax), block.destroySoundVolume); } diff --git a/core/src/mindustry/entities/comp/FireComp.java b/core/src/mindustry/entities/comp/FireComp.java index 3dd3e9f66b..7fee53d5e4 100644 --- a/core/src/mindustry/entities/comp/FireComp.java +++ b/core/src/mindustry/entities/comp/FireComp.java @@ -44,7 +44,7 @@ abstract class FireComp implements Timedc, Posc, Syncc, Drawc{ animation %= frames; if(!headless){ - control.sound.loop(Sounds.fire, this, 0.07f); + control.sound.loop(Sounds.loopFire, this, 0.07f); } //faster updates -> disappears more quickly diff --git a/core/src/mindustry/input/InputHandler.java b/core/src/mindustry/input/InputHandler.java index f20577ab06..ac2c61ae0e 100644 --- a/core/src/mindustry/input/InputHandler.java +++ b/core/src/mindustry/input/InputHandler.java @@ -942,10 +942,6 @@ public abstract class InputHandler implements InputProcessor, GestureListener{ player.unit().updateBuilding(isBuilding); } - if(!player.dead() && player.shooting && !wasShooting && player.unit().hasWeapons() && state.rules.unitAmmo && !player.team().rules().infiniteAmmo && player.unit().ammo <= 0){ - player.unit().type.weapons.first().noAmmoSound.at(player.unit()); - } - //you don't want selected blocks while locked, looks weird if(locked()){ block = null; diff --git a/core/src/mindustry/type/UnitType.java b/core/src/mindustry/type/UnitType.java index a63cc459a8..87c0efd12c 100644 --- a/core/src/mindustry/type/UnitType.java +++ b/core/src/mindustry/type/UnitType.java @@ -383,7 +383,7 @@ public class UnitType extends UnlockableContent implements Senseable{ /** if true, harder materials will take longer to mine */ public boolean mineHardnessScaling = true; /** continuous sound emitted when mining. */ - public Sound mineSound = Sounds.minebeam; + public Sound mineSound = Sounds.loopMineBeam; /** volume of mining sound. */ public float mineSoundVolume = 0.6f; /** Target items to mine. Used in MinerAI */ diff --git a/core/src/mindustry/type/Weapon.java b/core/src/mindustry/type/Weapon.java index 88d3ef8353..ef98fb550a 100644 --- a/core/src/mindustry/type/Weapon.java +++ b/core/src/mindustry/type/Weapon.java @@ -132,15 +132,13 @@ public class Weapon implements Cloneable{ /** volume of active sound */ public float activeSoundVolume = 1f; /** sound used for shooting */ - public Sound shootSound = Sounds.pew; + public Sound shootSound = Sounds.shoot; /** volume of the shoot sound */ public float shootSoundVolume = 1f; /** sound used when this weapon first fires; for continuous weapons only */ public Sound initialShootSound = Sounds.none; /** sound used for weapons that have a delay */ public Sound chargeSound = Sounds.none; - /** sound played when there is nothing to shoot */ - public Sound noAmmoSound = Sounds.noammo; /** displayed region (autoloaded) */ public TextureRegion region; /** heat region, must be same size as region (optional) */ diff --git a/core/src/mindustry/type/unit/MissileUnitType.java b/core/src/mindustry/type/unit/MissileUnitType.java index e80ec4c486..6122a9b164 100644 --- a/core/src/mindustry/type/unit/MissileUnitType.java +++ b/core/src/mindustry/type/unit/MissileUnitType.java @@ -37,7 +37,7 @@ public class MissileUnitType extends UnitType{ targetPriority = -1f; outlineColor = Pal.darkOutline; fogRadius = 2f; - loopSound = Sounds.missileTrail; + loopSound = Sounds.loopMissileTrail; loopSoundVolume = 0.05f; drawMinimap = false; //TODO weapon configs, etc? diff --git a/core/src/mindustry/type/weapons/RepairBeamWeapon.java b/core/src/mindustry/type/weapons/RepairBeamWeapon.java index a1d9b99137..43f53a1a08 100644 --- a/core/src/mindustry/type/weapons/RepairBeamWeapon.java +++ b/core/src/mindustry/type/weapons/RepairBeamWeapon.java @@ -61,7 +61,7 @@ public class RepairBeamWeapon extends Weapon{ recoil = 0f; noAttack = true; useAttackRange = false; - activeSound = Sounds.healBeam; + activeSound = Sounds.beamHeal; } @Override diff --git a/core/src/mindustry/world/Block.java b/core/src/mindustry/world/Block.java index 8ffc83ed14..e34182a297 100644 --- a/core/src/mindustry/world/Block.java +++ b/core/src/mindustry/world/Block.java @@ -311,7 +311,7 @@ public class Block extends UnlockableContent implements Senseable{ /** Sound made when this block is built. */ public Sound placeSound = Sounds.unset; /** Sound made when this block is deconstructed. */ - public Sound breakSound = Sounds.breaks; + public Sound breakSound = Sounds.unset; /** Sounds made when this block is destroyed.*/ public Sound destroySound = Sounds.unset; /** Volume of destruction sound. */ @@ -1264,14 +1264,21 @@ public class Block extends UnlockableContent implements Senseable{ destroySound = size >= 3 ? Sounds.blockExplode3 : size >= 2 ? Sounds.blockExplode2 : - Sounds.blockExplode1; + new RandomSound(Sounds.blockExplode1, Sounds.blockExplode1Alt); } if(placeSound == Sounds.unset){ placeSound = - size >= 3 ? Sounds.place3 : - size >= 2 ? Sounds.place2 : - Sounds.place1; + size >= 3 ? Sounds.blockPlace3 : + size >= 2 ? Sounds.blockPlace2 : + Sounds.blockPlace1; + } + + if(breakSound == Sounds.unset){ + breakSound = + size >= 3 ? Sounds.blockBreak3 : + size >= 2 ? Sounds.blockBreak2 : + Sounds.blockBreak1; } //disable standard shadow diff --git a/core/src/mindustry/world/blocks/defense/DirectionalForceProjector.java b/core/src/mindustry/world/blocks/defense/DirectionalForceProjector.java index 43548a63bc..e789cbd02e 100644 --- a/core/src/mindustry/world/blocks/defense/DirectionalForceProjector.java +++ b/core/src/mindustry/world/blocks/defense/DirectionalForceProjector.java @@ -65,7 +65,7 @@ public class DirectionalForceProjector extends Block{ solid = true; group = BlockGroup.projectors; envEnabled |= Env.space; - ambientSound = Sounds.shield; + ambientSound = Sounds.loopShield; ambientSoundVolume = 0.08f; } diff --git a/core/src/mindustry/world/blocks/defense/ForceProjector.java b/core/src/mindustry/world/blocks/defense/ForceProjector.java index b73e8e07a7..65d10f468e 100644 --- a/core/src/mindustry/world/blocks/defense/ForceProjector.java +++ b/core/src/mindustry/world/blocks/defense/ForceProjector.java @@ -77,7 +77,7 @@ public class ForceProjector extends Block{ hasLiquids = true; hasItems = true; envEnabled |= Env.space; - ambientSound = Sounds.shield; + ambientSound = Sounds.loopShield; ambientSoundVolume = 0.08f; flags = EnumSet.of(BlockFlag.shield); diff --git a/core/src/mindustry/world/blocks/defense/MendProjector.java b/core/src/mindustry/world/blocks/defense/MendProjector.java index c8ce06fd6b..74c0e2aa39 100644 --- a/core/src/mindustry/world/blocks/defense/MendProjector.java +++ b/core/src/mindustry/world/blocks/defense/MendProjector.java @@ -29,7 +29,7 @@ public class MendProjector extends Block{ public float phaseBoost = 12f; public float phaseRangeBoost = 50f; public float useTime = 400f; - public Sound mendSound = Sounds.healAbility; + public Sound mendSound = Sounds.healWave; public float mendSoundVolume = 0.5f; private boolean any = false; diff --git a/core/src/mindustry/world/blocks/defense/Wall.java b/core/src/mindustry/world/blocks/defense/Wall.java index 7e3a3ae9a1..25aebab907 100644 --- a/core/src/mindustry/world/blocks/defense/Wall.java +++ b/core/src/mindustry/world/blocks/defense/Wall.java @@ -20,7 +20,7 @@ public class Wall extends Block{ public float lightningDamage = 20f; public int lightningLength = 17; public Color lightningColor = Pal.surge; - public Sound lightningSound = Sounds.spark; + public Sound lightningSound = Sounds.shootArc; /** Bullet deflection chance. -1 to disable */ public float chanceDeflect = -1f; diff --git a/core/src/mindustry/world/blocks/defense/turrets/ContinuousLiquidTurret.java b/core/src/mindustry/world/blocks/defense/turrets/ContinuousLiquidTurret.java index e9580a24f1..2246899879 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/ContinuousLiquidTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/ContinuousLiquidTurret.java @@ -17,7 +17,7 @@ public class ContinuousLiquidTurret extends ContinuousTurret{ super(name); hasLiquids = true; //TODO - loopSound = Sounds.minebeam; + loopSound = Sounds.loopMineBeam; shootSound = Sounds.none; smokeEffect = Fx.none; shootEffect = Fx.none; diff --git a/core/src/mindustry/world/blocks/defense/turrets/LiquidTurret.java b/core/src/mindustry/world/blocks/defense/turrets/LiquidTurret.java index c4e0cc0127..1eb915dbf5 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/LiquidTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/LiquidTurret.java @@ -21,7 +21,7 @@ public class LiquidTurret extends Turret{ public LiquidTurret(String name){ super(name); hasLiquids = true; - loopSound = Sounds.spray; + loopSound = Sounds.loopSpray; shootSound = Sounds.none; smokeEffect = Fx.none; shootEffect = Fx.none; diff --git a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java index d047b82d47..aa447d6ae7 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java @@ -31,7 +31,7 @@ public class TractorBeamTurret extends BaseTurret{ public StatusEffect status = StatusEffects.none; public float statusDuration = 300; - public Sound shootSound = Sounds.tractorbeam; + public Sound shootSound = Sounds.beamParallax; public float shootSoundVolume = 0.9f; public @Load(value = "@-base", fallback = "block-@size") TextureRegion baseRegion; diff --git a/core/src/mindustry/world/blocks/defense/turrets/Turret.java b/core/src/mindustry/world/blocks/defense/turrets/Turret.java index 992f41f2ba..30305bd036 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/Turret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/Turret.java @@ -118,7 +118,7 @@ public class Turret extends ReloadTurret{ /** Effect created when ammo is used. Not optional. */ public Effect ammoUseEffect = Fx.none; /** Sound emitted when a single bullet is shot. */ - public Sound shootSound = Sounds.shoot; + public Sound shootSound = Sounds.shootDuo; /** Volume of shooting sound. */ public float shootSoundVolume = 1f; /** Sound emitted when shoot.firstShotDelay is >0 and shooting begins. */ diff --git a/core/src/mindustry/world/blocks/distribution/Conveyor.java b/core/src/mindustry/world/blocks/distribution/Conveyor.java index 22c77ed2c7..3fe2d78477 100644 --- a/core/src/mindustry/world/blocks/distribution/Conveyor.java +++ b/core/src/mindustry/world/blocks/distribution/Conveyor.java @@ -46,7 +46,7 @@ public class Conveyor extends Block implements Autotiler{ conveyorPlacement = true; underBullets = true; - ambientSound = Sounds.conveyor; + ambientSound = Sounds.loopConveyor; ambientSoundVolume = 0.0022f; unloadable = false; noUpdateDisabled = false; @@ -55,7 +55,7 @@ public class Conveyor extends Block implements Autotiler{ @Override public void setStats(){ super.setStats(); - + //have to add a custom calculated speed, since the actual movement speed is apparently not linear stats.add(Stat.itemsMoved, displayedSpeed, StatUnit.itemsSecond); } diff --git a/core/src/mindustry/world/blocks/distribution/StackConveyor.java b/core/src/mindustry/world/blocks/distribution/StackConveyor.java index 7a4fda7b75..2897938e25 100644 --- a/core/src/mindustry/world/blocks/distribution/StackConveyor.java +++ b/core/src/mindustry/world/blocks/distribution/StackConveyor.java @@ -54,7 +54,7 @@ public class StackConveyor extends Block implements Autotiler{ underBullets = true; priority = TargetPriority.transport; - ambientSound = Sounds.conveyor; + ambientSound = Sounds.loopConveyor; ambientSoundVolume = 0.004f; } diff --git a/core/src/mindustry/world/blocks/environment/Floor.java b/core/src/mindustry/world/blocks/environment/Floor.java index 269728b9e2..12ba8c78d1 100644 --- a/core/src/mindustry/world/blocks/environment/Floor.java +++ b/core/src/mindustry/world/blocks/environment/Floor.java @@ -196,7 +196,7 @@ public class Floor extends Block{ } if(isLiquid && walkSound == Sounds.none){ - walkSound = Sounds.splash; + walkSound = Sounds.stepWater; } } diff --git a/core/src/mindustry/world/blocks/production/BeamDrill.java b/core/src/mindustry/world/blocks/production/BeamDrill.java index 5e126478f0..a142f890ea 100644 --- a/core/src/mindustry/world/blocks/production/BeamDrill.java +++ b/core/src/mindustry/world/blocks/production/BeamDrill.java @@ -71,7 +71,7 @@ public class BeamDrill extends Block{ regionRotated1 = 1; ignoreLineRotation = true; ambientSoundVolume = 0.05f; - ambientSound = Sounds.minebeam; + ambientSound = Sounds.loopMineBeam; envEnabled |= Env.space; flags = EnumSet.of(BlockFlag.drill); diff --git a/core/src/mindustry/world/blocks/production/Drill.java b/core/src/mindustry/world/blocks/production/Drill.java index aa69e11714..c2b3d62fbf 100644 --- a/core/src/mindustry/world/blocks/production/Drill.java +++ b/core/src/mindustry/world/blocks/production/Drill.java @@ -81,7 +81,7 @@ public class Drill extends Block{ hasLiquids = true; liquidCapacity = 5f; hasItems = true; - ambientSound = Sounds.drill; + ambientSound = Sounds.loopDrill; ambientSoundVolume = 0.019f; //drills work in space I guess envEnabled |= Env.space; diff --git a/core/src/mindustry/world/blocks/production/Fracker.java b/core/src/mindustry/world/blocks/production/Fracker.java index 967455fcbe..a65ee3f207 100644 --- a/core/src/mindustry/world/blocks/production/Fracker.java +++ b/core/src/mindustry/world/blocks/production/Fracker.java @@ -10,7 +10,7 @@ public class Fracker extends SolidPump{ public Fracker(String name){ super(name); hasItems = true; - ambientSound = Sounds.drill; + ambientSound = Sounds.loopDrill; ambientSoundVolume = 0.03f; envRequired |= Env.groundOil; } diff --git a/core/src/mindustry/world/blocks/production/GenericCrafter.java b/core/src/mindustry/world/blocks/production/GenericCrafter.java index 4bdd25d7b4..8599a7881b 100644 --- a/core/src/mindustry/world/blocks/production/GenericCrafter.java +++ b/core/src/mindustry/world/blocks/production/GenericCrafter.java @@ -54,7 +54,7 @@ public class GenericCrafter extends Block{ update = true; solid = true; hasItems = true; - ambientSound = Sounds.machine; + ambientSound = Sounds.loopMachine; sync = true; ambientSoundVolume = 0.03f; flags = EnumSet.of(BlockFlag.factory); diff --git a/core/src/mindustry/world/blocks/units/Reconstructor.java b/core/src/mindustry/world/blocks/units/Reconstructor.java index fbeded3ca7..ef917ff030 100644 --- a/core/src/mindustry/world/blocks/units/Reconstructor.java +++ b/core/src/mindustry/world/blocks/units/Reconstructor.java @@ -43,7 +43,7 @@ public class Reconstructor extends UnitBlock{ regionRotated1 = 1; regionRotated2 = 2; commandable = true; - ambientSound = Sounds.respawning; + ambientSound = Sounds.loopUnitBuilding; configurable = true; config(UnitCommand.class, (ReconstructorBuild build, UnitCommand command) -> build.command = command); configClear((ReconstructorBuild build) -> build.command = null); diff --git a/core/src/mindustry/world/blocks/units/RepairTurret.java b/core/src/mindustry/world/blocks/units/RepairTurret.java index 309bb9b7b9..d35c9f7f84 100644 --- a/core/src/mindustry/world/blocks/units/RepairTurret.java +++ b/core/src/mindustry/world/blocks/units/RepairTurret.java @@ -63,7 +63,7 @@ public class RepairTurret extends Block{ group = BlockGroup.projectors; envEnabled |= Env.space; - ambientSound = Sounds.healBeam; + ambientSound = Sounds.beamHeal; ambientSoundVolume = 1f; } diff --git a/core/src/mindustry/world/blocks/units/UnitAssembler.java b/core/src/mindustry/world/blocks/units/UnitAssembler.java index 25b0dbb95a..5bdd429a1e 100644 --- a/core/src/mindustry/world/blocks/units/UnitAssembler.java +++ b/core/src/mindustry/world/blocks/units/UnitAssembler.java @@ -64,7 +64,7 @@ public class UnitAssembler extends PayloadBlock{ group = BlockGroup.units; commandable = true; quickRotate = false; - ambientSound = Sounds.respawning; + ambientSound = Sounds.loopUnitBuilding; ambientSoundVolume = 0.13f; } diff --git a/core/src/mindustry/world/blocks/units/UnitCargoLoader.java b/core/src/mindustry/world/blocks/units/UnitCargoLoader.java index 234cee635a..9fbb7054c9 100644 --- a/core/src/mindustry/world/blocks/units/UnitCargoLoader.java +++ b/core/src/mindustry/world/blocks/units/UnitCargoLoader.java @@ -36,7 +36,7 @@ public class UnitCargoLoader extends Block{ update = true; hasItems = true; itemCapacity = 200; - ambientSound = Sounds.respawning; + ambientSound = Sounds.loopUnitBuilding; } @Override diff --git a/core/src/mindustry/world/blocks/units/UnitFactory.java b/core/src/mindustry/world/blocks/units/UnitFactory.java index 250c403fbd..f97d11a466 100644 --- a/core/src/mindustry/world/blocks/units/UnitFactory.java +++ b/core/src/mindustry/world/blocks/units/UnitFactory.java @@ -50,7 +50,7 @@ public class UnitFactory extends UnitBlock{ rotate = true; regionRotated1 = 1; commandable = true; - ambientSound = Sounds.respawning; + ambientSound = Sounds.loopUnitBuilding; config(Integer.class, (UnitFactoryBuild build, Integer i) -> { if(!configurable) return;