Mech palette change, delta mech implementation

This commit is contained in:
Anuken
2018-06-26 16:01:40 -04:00
parent a6ca84308e
commit 20b3bb8f13
34 changed files with 674 additions and 660 deletions

View File

@@ -9,6 +9,7 @@ import io.anuke.mindustry.type.ContentList;
public class AmmoTypes implements ContentList {
public static AmmoType bulletTungsten, bulletLead, bulletCarbide, bulletThorium, bulletSilicon, bulletThermite,
shotgunTungsten,
flakLead, flakExplosive, flakPlastic, flakSurge, missileExplosive, missileIncindiary, missileSurge,
artilleryCarbide, artilleryThorium, artilleryPlastic, artilleryHoming, artilleryIncindiary,
basicFlame, lancerLaser, lightning, spectreLaser, meltdownLaser, fuseShotgun, oil, water, lava, cryofluid;
@@ -54,6 +55,14 @@ public class AmmoTypes implements ContentList {
inaccuracy = 3f;
}};
//shotgun (delta mech)
shotgunTungsten = new AmmoType(Items.tungsten, WeaponBullets.tungstenShotgun, 2) {{
shootEffect = ShootFx.shootBig;
smokeEffect = ShootFx.shootBigSmoke;
recoil = 1f;
}};
//flak
flakLead = new AmmoType(Items.lead, FlakBullets.lead, 5) {{

View File

@@ -1,7 +1,9 @@
package io.anuke.mindustry.content;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.utils.Array;
import io.anuke.mindustry.game.Content;
import io.anuke.mindustry.graphics.Palette;
import io.anuke.mindustry.type.ContentList;
import io.anuke.mindustry.type.Mech;
import io.anuke.mindustry.type.Upgrade;
@@ -18,11 +20,21 @@ public class Mechs implements ContentList {
alpha = new Mech("alpha-mech", false){{
drillPower = 1;
speed = 0.5f;
weapon = Weapons.blaster;
trailColor = Palette.lightTrail;
}};
delta = new Mech("delta-mech", false){{
drillPower = -1;
speed = 0.6f;
speed = 0.63f;
boostSpeed = 0.86f;
itemCapacity = 15;
armor = 30f;
weaponOffsetX = -1;
weaponOffsetY = -1;
weapon = Weapons.shockgun;
ammoCapacity = 50;
trailColor = Color.valueOf("d3ddff");
}};
tau = new Mech("tau-mech", false){{
@@ -42,6 +54,7 @@ public class Mechs implements ContentList {
drag = 0.1f;
weaponOffsetX = -1;
weaponOffsetY = -1;
trailColor = Palette.lightTrail;
}};
trident = new Mech("trident-ship", true){{

View File

@@ -59,7 +59,7 @@ public class Recipes implements ContentList{
new Recipe(crafting, CraftingBlocks.siliconsmelter, new ItemStack(Items.tungsten, 60), new ItemStack(Items.lead, 50));
//other crafting
new Recipe(crafting, CraftingBlocks.phaseweaver, new ItemStack(Items.silicon, 160), new ItemStack(Items.lead, 160), new ItemStack(Items.thorium, 150));
new Recipe(crafting, CraftingBlocks.phaseweaver, new ItemStack(Items.silicon, 160), new ItemStack(Items.lead, 240), new ItemStack(Items.thorium, 150));
//TODO implement alloy smelter
// new Recipe(crafting, CraftingBlocks.alloySmelter, new ItemStack(Items.silicon, 160), new ItemStack(Items.lead, 160), new ItemStack(Items.thorium, 140));
@@ -69,6 +69,7 @@ public class Recipes implements ContentList{
new Recipe(crafting, CraftingBlocks.pulverizer, new ItemStack(Items.tungsten, 60), new ItemStack(Items.lead, 50));
new Recipe(crafting, CraftingBlocks.thermiteMixer, new ItemStack(Items.tungsten, 100), new ItemStack(Items.lead, 50));
new Recipe(crafting, CraftingBlocks.blastMixer, new ItemStack(Items.tungsten, 60), new ItemStack(Items.lead, 60), new ItemStack(Items.carbide, 40));
new Recipe(crafting, CraftingBlocks.cryofluidmixer, new ItemStack(Items.lead, 130), new ItemStack(Items.silicon, 80), new ItemStack(Items.titanium, 90));
//processing
new Recipe(crafting, CraftingBlocks.biomatterCompressor, new ItemStack(Items.lead, 70), new ItemStack(Items.silicon, 60));
@@ -107,6 +108,8 @@ public class Recipes implements ContentList{
new Recipe(units, UpgradeBlocks.dartFactory, new ItemStack(Items.lead, 150), new ItemStack(Items.silicon, 200), new ItemStack(Items.titanium, 240))
.setDesktop(); //dart is desktop only, because it's the starter mobile ship
new Recipe(units, UpgradeBlocks.deltaFactory, new ItemStack(Items.carbide, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop();
//new Recipe(units, UpgradeBlocks.deltaFactory, new ItemStack(Items.tungsten, 30), new ItemStack(Items.lead, 50), new ItemStack(Items.silicon, 30));
//actual unit related stuff

View File

@@ -8,7 +8,7 @@ import io.anuke.mindustry.type.Upgrade;
import io.anuke.mindustry.type.Weapon;
public class Weapons implements ContentList {
public static Weapon blaster, blaster2, blaster3, blaster4;
public static Weapon blaster, shockgun, sapper, swarmer;
@Override
public void load() {
@@ -21,15 +21,19 @@ public class Weapons implements ContentList {
setAmmo(AmmoTypes.bulletLead);
}};
blaster2 = new Weapon("clustergun") {{
length = 1.5f;
reload = 13f;
shockgun = new Weapon("shockgun") {{
length = 1f;
reload = 50f;
roundrobin = true;
shots = 6;
inaccuracy = 15f;
recoil = 2f;
velocityRnd = 0.7f;
ejectEffect = ShootFx.shellEjectSmall;
setAmmo(AmmoTypes.bulletLead);
setAmmo(AmmoTypes.shotgunTungsten);
}};
blaster3 = new Weapon("shockgun") {{
sapper = new Weapon("sapper") {{
length = 1.5f;
reload = 12f;
roundrobin = true;
@@ -37,7 +41,7 @@ public class Weapons implements ContentList {
setAmmo(AmmoTypes.bulletCarbide);
}};
blaster4 = new Weapon("vulcan") {{
swarmer = new Weapon("swarmer") {{
length = 1.5f;
reload = 10f;
roundrobin = true;

View File

@@ -0,0 +1,21 @@
package io.anuke.mindustry.content.bullets;
import io.anuke.mindustry.entities.bullet.BasicBulletType;
import io.anuke.mindustry.entities.bullet.BulletType;
public class WeaponBullets extends BulletList {
public static BulletType tungstenShotgun;
@Override
public void load() {
tungstenShotgun = new BasicBulletType(5f, 8, "bullet") {
{
bulletWidth = 8f;
bulletHeight = 9f;
bulletShrink = 0.6f;
lifetime = 30f;
drag = 0.04f;
}
};
}
}