mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-03-12 10:59:22 +07:00
Turret, power generator and bullet balancing sweep
This commit is contained in:
parent
7e35de3c33
commit
79a9541394
Binary file not shown.
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.2 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
@ -833,14 +833,14 @@ public class Blocks implements ContentList{
|
||||
|
||||
thermalGenerator = new ThermalGenerator("thermal-generator"){{
|
||||
requirements(Category.power, ItemStack.with(Items.copper, 80, Items.graphite, 70, Items.lead, 100, Items.silicon, 70, Items.thorium, 70));
|
||||
powerProduction = 2f;
|
||||
powerProduction = 3f;
|
||||
generateEffect = Fx.redgeneratespark;
|
||||
size = 2;
|
||||
}};
|
||||
|
||||
turbineGenerator = new TurbineGenerator("turbine-generator"){{
|
||||
requirements(Category.power, ItemStack.with(Items.copper, 70, Items.graphite, 50, Items.lead, 80, Items.silicon, 60));
|
||||
powerProduction = 4f;
|
||||
powerProduction = 6f;
|
||||
itemDuration = 30f;
|
||||
consumes.liquid(Liquids.water, 0.05f);
|
||||
size = 2;
|
||||
@ -848,7 +848,7 @@ public class Blocks implements ContentList{
|
||||
|
||||
differentialGenerator = new DifferentialGenerator("differential-generator"){{
|
||||
requirements(Category.power, ItemStack.with(Items.copper, 140, Items.titanium, 100, Items.lead, 200, Items.silicon, 130, Items.metaglass, 100));
|
||||
powerProduction = 12f;
|
||||
powerProduction = 24f;
|
||||
itemDuration = 60f;
|
||||
consumes.remove(ConsumeItemFilter.class);
|
||||
consumes.remove(ConsumeLiquidFilter.class);
|
||||
@ -879,7 +879,7 @@ public class Blocks implements ContentList{
|
||||
requirements(Category.power, ItemStack.with(Items.lead, 600, Items.silicon, 400, Items.graphite, 300, Items.thorium, 300));
|
||||
size = 3;
|
||||
health = 700;
|
||||
powerProduction = 11f;
|
||||
powerProduction = 12f;
|
||||
consumes.liquid(Liquids.cryofluid, maxLiquidUse);
|
||||
}};
|
||||
|
||||
@ -888,7 +888,7 @@ public class Blocks implements ContentList{
|
||||
size = 4;
|
||||
health = 900;
|
||||
powerProduction = 70f;
|
||||
consumes.power(20f);
|
||||
consumes.power(23f);
|
||||
consumes.item(Items.blastCompound);
|
||||
consumes.liquid(Liquids.water, 0.3f);
|
||||
}};
|
||||
@ -1083,11 +1083,11 @@ public class Blocks implements ContentList{
|
||||
);
|
||||
size = 2;
|
||||
recoil = 0f;
|
||||
reload = 4f;
|
||||
reload = 3f;
|
||||
inaccuracy = 5f;
|
||||
shootCone = 50f;
|
||||
shootEffect = Fx.shootLiquid;
|
||||
range = 90f;
|
||||
range = 100f;
|
||||
health = 360;
|
||||
|
||||
drawer = (tile, entity) -> {
|
||||
@ -1102,13 +1102,13 @@ public class Blocks implements ContentList{
|
||||
|
||||
lancer = new ChargeTurret("lancer"){{
|
||||
requirements(Category.turret, ItemStack.with(Items.copper, 50, Items.lead, 100, Items.silicon, 90));
|
||||
range = 120f;
|
||||
chargeTime = 60f;
|
||||
range = 135f;
|
||||
chargeTime = 50f;
|
||||
chargeMaxDelay = 30f;
|
||||
chargeEffects = 7;
|
||||
shootType = Bullets.lancerLaser;
|
||||
recoil = 2f;
|
||||
reload = 100f;
|
||||
reload = 90f;
|
||||
cooldown = 0.03f;
|
||||
powerUsed = 1 / 3f;
|
||||
consumes.powerBuffered(600f);
|
||||
@ -1199,7 +1199,7 @@ public class Blocks implements ContentList{
|
||||
restitution = 0.02f;
|
||||
recoil = 6f;
|
||||
shootShake = 2f;
|
||||
range = 320f;
|
||||
range = 290f;
|
||||
|
||||
health = 550;
|
||||
}};
|
||||
@ -1226,14 +1226,14 @@ public class Blocks implements ContentList{
|
||||
fuse = new ItemTurret("fuse"){{
|
||||
requirements(Category.turret, ItemStack.with(Items.copper, 450, Items.graphite, 450, Items.surgealloy, 250));
|
||||
ammo(Items.graphite, Bullets.fuseShot);
|
||||
reload = 50f;
|
||||
reload = 40f;
|
||||
shootShake = 4f;
|
||||
range = 80f;
|
||||
recoil = 5f;
|
||||
restitution = 0.1f;
|
||||
size = 3;
|
||||
|
||||
health = 155 * size * size;
|
||||
health = 165 * size * size;
|
||||
}};
|
||||
|
||||
spectre = new DoubleTurret("spectre"){{
|
||||
|
@ -64,7 +64,7 @@ public class Bullets implements ContentList{
|
||||
splashDamage = 33f;
|
||||
}};
|
||||
|
||||
artilleryPlasticFrag = new BasicBulletType(2.5f, 6, "bullet"){{
|
||||
artilleryPlasticFrag = new BasicBulletType(2.5f, 7, "bullet"){{
|
||||
bulletWidth = 10f;
|
||||
bulletHeight = 12f;
|
||||
bulletShrink = 1f;
|
||||
@ -74,16 +74,16 @@ public class Bullets implements ContentList{
|
||||
despawnEffect = Fx.none;
|
||||
}};
|
||||
|
||||
arilleryPlastic = new ArtilleryBulletType(3.3f, 0, "shell"){{
|
||||
arilleryPlastic = new ArtilleryBulletType(3.4f, 0, "shell"){{
|
||||
hitEffect = Fx.plasticExplosion;
|
||||
knockback = 1f;
|
||||
lifetime = 55f;
|
||||
bulletWidth = bulletHeight = 13f;
|
||||
collidesTiles = false;
|
||||
splashDamageRadius = 35f;
|
||||
splashDamage = 35f;
|
||||
splashDamage = 45f;
|
||||
fragBullet = artilleryPlasticFrag;
|
||||
fragBullets = 9;
|
||||
fragBullets = 10;
|
||||
backColor = Pal.plastaniumBack;
|
||||
frontColor = Pal.plastaniumFront;
|
||||
}};
|
||||
@ -140,10 +140,10 @@ public class Bullets implements ContentList{
|
||||
frontColor = Pal.bulletYellow;
|
||||
}};
|
||||
|
||||
flakPlastic = new FlakBulletType(4f, 5){{
|
||||
splashDamageRadius = 40f;
|
||||
flakPlastic = new FlakBulletType(4f, 6){{
|
||||
splashDamageRadius = 50f;
|
||||
fragBullet = artilleryPlasticFrag;
|
||||
fragBullets = 4;
|
||||
fragBullets = 6;
|
||||
hitEffect = Fx.plasticExplosion;
|
||||
frontColor = Pal.plastaniumFront;
|
||||
backColor = Pal.plastaniumBack;
|
||||
@ -455,7 +455,7 @@ public class Bullets implements ContentList{
|
||||
Color[] colors = {Pal.lancerLaser.cpy().mul(1f, 1f, 1f, 0.4f), Pal.lancerLaser, Color.WHITE};
|
||||
float[] tscales = {1f, 0.7f, 0.5f, 0.2f};
|
||||
float[] lenscales = {1f, 1.1f, 1.13f, 1.14f};
|
||||
float length = 100f;
|
||||
float length = 140f;
|
||||
|
||||
{
|
||||
hitEffect = Fx.hitLancer;
|
||||
@ -492,7 +492,7 @@ public class Bullets implements ContentList{
|
||||
}
|
||||
};
|
||||
|
||||
meltdownLaser = new BulletType(0.001f, 26){
|
||||
meltdownLaser = new BulletType(0.001f, 35){
|
||||
Color tmpColor = new Color();
|
||||
Color[] colors = {Color.valueOf("ec745855"), Color.valueOf("ec7458aa"), Color.valueOf("ff9c5a"), Color.WHITE};
|
||||
float[] tscales = {1f, 0.7f, 0.5f, 0.2f};
|
||||
@ -576,7 +576,7 @@ public class Bullets implements ContentList{
|
||||
};
|
||||
|
||||
waterShot = new LiquidBulletType(Liquids.water){{
|
||||
knockback = 0.65f;
|
||||
knockback = 0.7f;
|
||||
}};
|
||||
|
||||
cryoShot = new LiquidBulletType(Liquids.cryofluid){{
|
||||
|
@ -20,17 +20,17 @@ public class LiquidBulletType extends BulletType{
|
||||
Liquid liquid;
|
||||
|
||||
public LiquidBulletType(Liquid liquid){
|
||||
super(2.5f, 0);
|
||||
super(2.8f, 0);
|
||||
this.liquid = liquid;
|
||||
|
||||
lifetime = 70f;
|
||||
lifetime = 74f;
|
||||
status = liquid.effect;
|
||||
statusDuration = 90f;
|
||||
despawnEffect = Fx.none;
|
||||
hitEffect = Fx.hitLiquid;
|
||||
shootEffect = Fx.none;
|
||||
drag = 0.01f;
|
||||
knockback = 0.5f;
|
||||
drag = 0.009f;
|
||||
knockback = 0.55f;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -124,22 +124,6 @@ public interface BuilderTrait extends Entity, TeamTrait{
|
||||
return getPlaceQueue().size != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* If a place request matching this signature is present, it is removed.
|
||||
* Otherwise, a new place request is added to the queue.
|
||||
*/
|
||||
default void replaceBuilding(int x, int y, int rotation, Block block){
|
||||
for(BuildRequest request : getPlaceQueue()){
|
||||
if(request.x == x && request.y == y){
|
||||
clearBuilding();
|
||||
addBuildRequest(request);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
addBuildRequest(new BuildRequest(x, y, rotation, block));
|
||||
}
|
||||
|
||||
/**Clears the placement queue.*/
|
||||
default void clearBuilding(){
|
||||
getPlaceQueue().clear();
|
||||
|
Loading…
Reference in New Issue
Block a user