All reconstructors implemented / Balancing

This commit is contained in:
Anuken
2018-08-25 14:52:46 -04:00
parent f60ba8587f
commit e392c8f0e6
24 changed files with 1095 additions and 1057 deletions

View File

@@ -12,7 +12,7 @@ import io.anuke.mindustry.type.ContentList;
public class AmmoTypes implements ContentList{
public static AmmoType bulletCopper, bulletDense, bulletThorium, bulletSilicon, bulletPyratite,
shotgunTungsten, bombExplosive, bombIncendiary, bombOil, shellCarbide, flamerThermite, weaponMissile, weaponMissileSwarm, bulletMech,
healBlaster, bulletHalberd,
healBlaster, bulletGlaive,
flakLead, flakExplosive, flakPlastic, flakSurge, missileExplosive, missileIncindiary, missileSurge,
artilleryDense, artilleryPlastic, artilleryHoming, artilleryIncindiary, artilleryExplosive,
basicFlame, lancerLaser, lightning, spectreLaser, meltdownLaser, fuseShotgun, oil, water, lava, cryofluid;
@@ -30,7 +30,7 @@ public class AmmoTypes implements ContentList{
}};
bulletHalberd = new AmmoType(Items.pyratite, StandardBullets.halberd, 3){{
bulletGlaive = new AmmoType(Items.pyratite, StandardBullets.glaive, 3){{
shootEffect = ShootFx.shootSmall;
smokeEffect = ShootFx.shootSmallSmoke;
inaccuracy = 3f;

View File

@@ -30,7 +30,7 @@ import io.anuke.ucore.util.Mathf;
import static io.anuke.mindustry.Vars.*;
public class Mechs implements ContentList{
public static Mech alpha, delta, tau, omega, dart, javelin, trident, halberd;
public static Mech alpha, delta, tau, omega, dart, javelin, trident, glaive;
/**These are not new mechs, just re-assignments for convenience.*/
public static Mech starterDesktop, starterMobile;
@@ -320,6 +320,7 @@ public class Mechs implements ContentList{
drag = 0.035f;
turnCursor = false;
armor = 20f;
itemCapacity = 30;
trailColor = Color.valueOf("84f491");
weapon = Weapons.bomberTrident;
}
@@ -330,15 +331,16 @@ public class Mechs implements ContentList{
}
};
halberd = new Mech("halberd-ship", true){
glaive = new Mech("glaive-ship", true){
{
weapon = Weapons.halberdBlaster;
weapon = Weapons.glaiveBlaster;
drillPower = 4;
mineSpeed = 1.3f;
speed = 0.3f;
speed = 0.32f;
maxSpeed = 3f;
drag = 0.06f;
armor = 30f;
itemCapacity = 60;
trailColor = Color.valueOf("feb380");
}
};

View File

@@ -128,7 +128,7 @@ 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.javelinFactory, new ItemStack(Items.lead, 200), new ItemStack(Items.silicon, 250), new ItemStack(Items.titanium, 300), new ItemStack(Items.plastanium, 200));
new Recipe(units, UpgradeBlocks.tridentFactory, new ItemStack(Items.lead, 200), new ItemStack(Items.silicon, 250), new ItemStack(Items.titanium, 300), new ItemStack(Items.plastanium, 200));
new Recipe(units, UpgradeBlocks.halberdFactory, new ItemStack(Items.lead, 200), new ItemStack(Items.silicon, 250), new ItemStack(Items.titanium, 300), new ItemStack(Items.plastanium, 200));
new Recipe(units, UpgradeBlocks.glaiveFactory, new ItemStack(Items.lead, 200), new ItemStack(Items.silicon, 250), new ItemStack(Items.titanium, 300), new ItemStack(Items.plastanium, 200));
new Recipe(units, UpgradeBlocks.deltaFactory, new ItemStack(Items.densealloy, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop();
new Recipe(units, UpgradeBlocks.omegaFactory, new ItemStack(Items.densealloy, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop();

View File

@@ -8,7 +8,7 @@ import io.anuke.mindustry.type.ContentList;
import io.anuke.mindustry.type.Weapon;
public class Weapons implements ContentList{
public static Weapon blaster, halberdBlaster, droneBlaster, healBlaster, chainBlaster, shockgun, sapper, swarmer, bomber, bomberTrident, flakgun, flamethrower, missiles;
public static Weapon blaster, glaiveBlaster, droneBlaster, healBlaster, chainBlaster, shockgun, sapper, swarmer, bomber, bomberTrident, flakgun, flamethrower, missiles;
@Override
public void load(){
@@ -21,12 +21,12 @@ public class Weapons implements ContentList{
ammo = AmmoTypes.bulletMech;
}};
halberdBlaster = new Weapon("bomber"){{
glaiveBlaster = new Weapon("bomber"){{
length = 1.5f;
reload = 12f;
reload = 10f;
roundrobin = true;
ejectEffect = ShootFx.shellEjectSmall;
ammo = AmmoTypes.bulletHalberd;
ammo = AmmoTypes.bulletGlaive;
}};
droneBlaster = new Weapon("blaster"){{

View File

@@ -5,7 +5,7 @@ import io.anuke.mindustry.world.Block;
import io.anuke.mindustry.world.blocks.units.MechFactory;
public class UpgradeBlocks extends BlockList{
public static Block deltaFactory, tauFactory, omegaFactory, dartFactory, javelinFactory, tridentFactory, halberdFactory;
public static Block deltaFactory, tauFactory, omegaFactory, dartFactory, javelinFactory, tridentFactory, glaiveFactory;
@Override
public void load(){
@@ -31,24 +31,28 @@ public class UpgradeBlocks extends BlockList{
mech = Mechs.dart;
size = 2;
powerCapacity = 50f;
shadow = "shadow-rounded-2";
}};
javelinFactory = new MechFactory("javelin-ship-factory"){{
mech = Mechs.javelin;
size = 2;
powerCapacity = 80f;
shadow = "shadow-rounded-2";
}};
tridentFactory = new MechFactory("trident-ship-factory"){{
mech = Mechs.trident;
size = 2;
powerCapacity = 100f;
shadow = "shadow-rounded-2";
}};
halberdFactory = new MechFactory("halberd-ship-factory"){{
mech = Mechs.halberd;
glaiveFactory = new MechFactory("glaive-ship-factory"){{
mech = Mechs.glaive;
size = 3;
powerCapacity = 120f;
shadow = "shadow-round-3";
}};
}
}

View File

@@ -8,7 +8,7 @@ import io.anuke.mindustry.graphics.Palette;
import io.anuke.mindustry.type.ContentList;
public class StandardBullets extends BulletList implements ContentList{
public static BulletType copper, dense, thorium, homing, tracer, mechSmall, halberd;
public static BulletType copper, dense, thorium, homing, tracer, mechSmall, glaive;
@Override
public void load(){
@@ -56,7 +56,7 @@ public class StandardBullets extends BulletList implements ContentList{
}
};
halberd = new BasicBulletType(3.2f, 6, "bullet"){
glaive = new BasicBulletType(4f, 6, "bullet"){
{
bulletWidth = 10f;
bulletHeight = 12f;

View File

@@ -118,7 +118,7 @@ public class NetServer extends Module{
return;
}
boolean preventDuplicates = headless;
boolean preventDuplicates = headless && !debug;
if(preventDuplicates){
for(Player player : playerGroup.all()){

View File

@@ -132,7 +132,7 @@ public class MechFactory extends Block{
public void draw(Tile tile){
MechFactoryEntity entity = tile.entity();
Draw.rect(entity.open ? openRegion : Draw.region(name), tile.drawx(), tile.drawy());
Draw.rect(Draw.region(name), tile.drawx(), tile.drawy(), entity.open ? 180f : 0f);
if(entity.player != null){
TextureRegion region = mech.iconRegion;