From c31a710aa7ccc221eda1a63ae00df05dcd6b30df Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 18 Jun 2018 16:37:38 -0400 Subject: [PATCH] Cleanup up turret definitions/recipes --- .../io/anuke/mindustry/content/Recipes.java | 26 ++++--- .../content/blocks/WeaponBlocks.java | 73 +++++++------------ 2 files changed, 42 insertions(+), 57 deletions(-) diff --git a/core/src/io/anuke/mindustry/content/Recipes.java b/core/src/io/anuke/mindustry/content/Recipes.java index d80594fcb0..8857c82015 100644 --- a/core/src/io/anuke/mindustry/content/Recipes.java +++ b/core/src/io/anuke/mindustry/content/Recipes.java @@ -44,18 +44,20 @@ public class Recipes implements ContentList{ new Recipe(distribution, DistributionBlocks.laserconveyor, new ItemStack(Items.steel, 5)); new Recipe(distribution, DistributionBlocks.massdriver, new ItemStack(Items.steel, 1)); - new Recipe(weapon, WeaponBlocks.duo, new ItemStack(Items.iron, 7)); - new Recipe(weapon, WeaponBlocks.scatter, new ItemStack(Items.iron, 8)); - new Recipe(weapon, WeaponBlocks.scorch, new ItemStack(Items.iron, 12), new ItemStack(Items.steel, 9)); - new Recipe(weapon, WeaponBlocks.wave, new ItemStack(Items.iron, 15), new ItemStack(Items.steel, 10)); - new Recipe(weapon, WeaponBlocks.lancer, new ItemStack(Items.steel, 12), new ItemStack(Items.titanium, 12)); - new Recipe(weapon, WeaponBlocks.crux, new ItemStack(Items.steel, 25), new ItemStack(Items.titanium, 15)); - new Recipe(weapon, WeaponBlocks.arc, new ItemStack(Items.steel, 20), new ItemStack(Items.titanium, 25), new ItemStack(Items.surgealloy, 15)); - new Recipe(weapon, WeaponBlocks.swarmer, new ItemStack(Items.steel, 80), new ItemStack(Items.titanium, 70), new ItemStack(Items.surgealloy, 60)); - new Recipe(weapon, WeaponBlocks.ripple, new ItemStack(Items.steel, 80), new ItemStack(Items.titanium, 70), new ItemStack(Items.surgealloy, 60)); - new Recipe(weapon, WeaponBlocks.fuse, new ItemStack(Items.steel, 70), new ItemStack(Items.titanium, 50), new ItemStack(Items.surgealloy, 55)); - new Recipe(weapon, WeaponBlocks.spectre, new ItemStack(Items.steel, 70), new ItemStack(Items.titanium, 50), new ItemStack(Items.surgealloy, 55)); - new Recipe(weapon, WeaponBlocks.meltdown, new ItemStack(Items.steel, 70), new ItemStack(Items.titanium, 50), new ItemStack(Items.surgealloy, 55)); + new Recipe(weapon, WeaponBlocks.duo, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.scatter, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.scorch, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.hail, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.wave, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.lancer, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.arc, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.swarmer, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.ripple, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.fuse, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.ripple, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.cyclone, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.spectre, new ItemStack(Items.iron, 1)); + new Recipe(weapon, WeaponBlocks.meltdown, new ItemStack(Items.iron, 1)); new Recipe(crafting, CraftingBlocks.smelter, new ItemStack(Items.iron, 40)); new Recipe(crafting, CraftingBlocks.arcsmelter, new ItemStack(Items.iron, 40)); diff --git a/core/src/io/anuke/mindustry/content/blocks/WeaponBlocks.java b/core/src/io/anuke/mindustry/content/blocks/WeaponBlocks.java index bc9eed1dd9..892c9a7442 100644 --- a/core/src/io/anuke/mindustry/content/blocks/WeaponBlocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/WeaponBlocks.java @@ -13,7 +13,7 @@ import io.anuke.ucore.util.Mathf; import io.anuke.ucore.util.Strings; public class WeaponBlocks extends BlockList implements ContentList { - public static Block duo, scatter, scorch, hail, wave, crux, lancer, arc, swarmer, ripple, cyclone, fuse, spectre, eraser, meltdown; + public static Block duo, scatter, scorch, hail, wave, lancer, arc, swarmer, salvo, fuse, ripple, cyclone, spectre, meltdown; @Override public void load() { @@ -69,32 +69,6 @@ public class WeaponBlocks extends BlockList implements ContentList { }; }}; - crux = new ItemTurret("crux") {{ - size = 2; - range = 100f; - ammoTypes = new AmmoType[]{AmmoTypes.shellExplosive, AmmoTypes.shellLead, AmmoTypes.shellPlastic, AmmoTypes.shellThorium}; - reload = 70f; - restitution = 0.03f; - ammoEjectBack = 3f; - cooldown = 0.03f; - recoil = 3f; - shootShake = 2f; - ammoUseEffect = ShootFx.shellEjectBig; - - drawer = (tile, entity) -> { - Draw.rect(name, tile.drawx() + tr2.x, tile.drawy() + tr2.y, entity.rotation - 90); - float offsetx = (int) (Mathf.abscurve(Mathf.curve(entity.reload / reload, 0.3f, 0.2f)) * 3f); - float offsety = -(int) (Mathf.abscurve(Mathf.curve(entity.reload / reload, 0.3f, 0.2f)) * 2f); - - for (int i : Mathf.signs) { - float rot = entity.rotation + 90 * i; - Draw.rect(name + "-panel-" + Strings.dir(i), - tile.drawx() + tr2.x + Angles.trnsx(rot, offsetx, offsety), - tile.drawy() + tr2.y + Angles.trnsy(rot, -offsetx, offsety), entity.rotation - 90); - } - }; - }}; - lancer = new LaserTurret("lancer") {{ range = 70f; chargeTime = 70f; @@ -132,6 +106,32 @@ public class WeaponBlocks extends BlockList implements ContentList { size = 2; }}; + salvo = new ItemTurret("salvo") {{ + size = 2; + range = 100f; + ammoTypes = new AmmoType[]{AmmoTypes.shellExplosive, AmmoTypes.shellLead, AmmoTypes.shellPlastic, AmmoTypes.shellThorium}; + reload = 70f; + restitution = 0.03f; + ammoEjectBack = 3f; + cooldown = 0.03f; + recoil = 3f; + shootShake = 2f; + ammoUseEffect = ShootFx.shellEjectBig; + + drawer = (tile, entity) -> { + Draw.rect(name, tile.drawx() + tr2.x, tile.drawy() + tr2.y, entity.rotation - 90); + float offsetx = (int) (Mathf.abscurve(Mathf.curve(entity.reload / reload, 0.3f, 0.2f)) * 3f); + float offsety = -(int) (Mathf.abscurve(Mathf.curve(entity.reload / reload, 0.3f, 0.2f)) * 2f); + + for (int i : Mathf.signs) { + float rot = entity.rotation + 90 * i; + Draw.rect(name + "-panel-" + Strings.dir(i), + tile.drawx() + tr2.x + Angles.trnsx(rot, offsetx, offsety), + tile.drawy() + tr2.y + Angles.trnsy(rot, -offsetx, offsety), entity.rotation - 90); + } + }; + }}; + ripple = new ItemTurret("ripple") {{ ammoTypes = new AmmoType[]{AmmoTypes.artilleryLead, AmmoTypes.artilleryHoming, AmmoTypes.artilleryIncindiary, AmmoTypes.artilleryPlastic, AmmoTypes.artilleryThorium}; size = 3; @@ -148,24 +148,7 @@ public class WeaponBlocks extends BlockList implements ContentList { size = 3; }}; - spectre = new LaserTurret("spectre") {{ - range = 70f; - chargeTime = 70f; - chargeMaxDelay = 30f; - chargeEffects = 7; - shootType = AmmoTypes.spectreLaser; - recoil = 2f; - reload = 130f; - cooldown = 0.03f; - shootEffect = ShootFx.lancerLaserShoot; - smokeEffect = ShootFx.lancerLaserShootSmoke; - chargeEffect = ShootFx.lancerLaserCharge; - chargeBeginEffect = ShootFx.lancerLaserChargeBegin; - heatColor = Color.RED; - size = 3; - }}; - - eraser = new ItemTurret("eraser") {{ + spectre = new ItemTurret("eraser") {{ ammoTypes = new AmmoType[]{AmmoTypes.bulletIron, AmmoTypes.bulletLead, AmmoTypes.bulletSteel, AmmoTypes.bulletThermite, AmmoTypes.bulletThorium, AmmoTypes.bulletSilicon}; reload = 25f; restitution = 0.03f;