low effort large plasma bore
This commit is contained in:
@@ -1918,7 +1918,7 @@ public class Blocks implements ContentList{
|
||||
drillTime = 200f;
|
||||
tier = 4;
|
||||
size = 2;
|
||||
range = 2;
|
||||
range = 3; //TODO make it 2?
|
||||
}};
|
||||
|
||||
//TODO awful name
|
||||
|
||||
@@ -25,6 +25,7 @@ public class BeamDrill extends Block{
|
||||
public @Load("drill-laser-end") TextureRegion laserEnd;
|
||||
public @Load("drill-laser-center") TextureRegion laserCenter;
|
||||
public @Load("@-top") TextureRegion topRegion;
|
||||
public @Load("@-glow") TextureRegion glowRegion;
|
||||
|
||||
public float drillTime = 200f;
|
||||
public int range = 5;
|
||||
@@ -37,6 +38,9 @@ public class BeamDrill extends Block{
|
||||
public int sparks = 8;
|
||||
public float sparkRange = 10f, sparkLife = 27f, sparkRecurrence = 4f, sparkSpread = 45f, sparkSize = 3.5f;
|
||||
|
||||
public Color heatColor = new Color(1f, 0.35f, 0.35f, 0.9f);
|
||||
public float heatPulse = 0.3f, heatPulseScl = 7f;
|
||||
|
||||
public BeamDrill(String name){
|
||||
super(name);
|
||||
|
||||
@@ -283,6 +287,16 @@ public class BeamDrill extends Block{
|
||||
Draw.reset();
|
||||
}
|
||||
}
|
||||
|
||||
if(glowRegion.found()){
|
||||
Draw.z(Layer.blockAdditive);
|
||||
Draw.blend(Blending.additive);
|
||||
Draw.color(heatColor, warmup * (heatColor.a * (1f - heatPulse + Mathf.absin(heatPulseScl, heatPulse))));
|
||||
Draw.rect(glowRegion, x, y, rotdeg());
|
||||
Draw.blend();
|
||||
Draw.color();
|
||||
}
|
||||
|
||||
Draw.blend();
|
||||
Draw.reset();
|
||||
}
|
||||
|
||||
@@ -5,11 +5,11 @@ import arc.graphics.*;
|
||||
import arc.graphics.g2d.*;
|
||||
import arc.util.*;
|
||||
import mindustry.game.*;
|
||||
import mindustry.graphics.*;
|
||||
import mindustry.logic.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.*;
|
||||
import mindustry.world.blocks.liquid.*;
|
||||
import mindustry.world.draw.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
import static mindustry.Vars.*;
|
||||
@@ -19,6 +19,7 @@ public class Pump extends LiquidBlock{
|
||||
public float pumpAmount = 0.2f;
|
||||
/** Interval in-between item consumptions, if applicable. */
|
||||
public float consumeTime = 60f * 5f;
|
||||
public DrawBlock draw = new DrawPump();
|
||||
|
||||
public Pump(String name){
|
||||
super(name);
|
||||
@@ -64,9 +65,15 @@ public class Pump extends LiquidBlock{
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void load(){
|
||||
super.load();
|
||||
draw.load(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TextureRegion[] icons(){
|
||||
return new TextureRegion[]{region};
|
||||
return draw.icons(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -103,11 +110,7 @@ public class Pump extends LiquidBlock{
|
||||
|
||||
@Override
|
||||
public void draw(){
|
||||
Draw.rect(region, x, y);
|
||||
|
||||
if(liquidDrop == null) return;
|
||||
|
||||
Drawf.liquid(liquidRegion, x, y, liquids.get(liquidDrop) / liquidCapacity, liquidDrop.color);
|
||||
draw.drawBase(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
26
core/src/mindustry/world/draw/DrawPump.java
Normal file
26
core/src/mindustry/world/draw/DrawPump.java
Normal file
@@ -0,0 +1,26 @@
|
||||
package mindustry.world.draw;
|
||||
|
||||
import arc.*;
|
||||
import arc.graphics.g2d.*;
|
||||
import mindustry.gen.*;
|
||||
import mindustry.graphics.*;
|
||||
import mindustry.world.*;
|
||||
import mindustry.world.blocks.production.Pump.*;
|
||||
|
||||
public class DrawPump extends DrawBlock{
|
||||
public TextureRegion liquid;
|
||||
|
||||
@Override
|
||||
public void drawBase(Building build){
|
||||
Draw.rect(build.block.region, build.x, build.y);
|
||||
|
||||
if(!(build instanceof PumpBuild pump) || pump.liquidDrop == null) return;
|
||||
|
||||
Drawf.liquid(liquid, build.x, build.y, build.liquids.get(pump.liquidDrop) / build.block.liquidCapacity, pump.liquidDrop.color);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void load(Block block){
|
||||
liquid = Core.atlas.find(block.name + "-liquid");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user