Visual changes
This commit is contained in:
@@ -163,14 +163,22 @@ public class MassDriver extends Block{
|
|||||||
public void drawPlace(int x, int y, int rotation, boolean valid){
|
public void drawPlace(int x, int y, int rotation, boolean valid){
|
||||||
Drawf.dashCircle(x * tilesize, y*tilesize, range, Pal.accent);
|
Drawf.dashCircle(x * tilesize, y*tilesize, range, Pal.accent);
|
||||||
|
|
||||||
// check if a mass driver is selected while placing this driver
|
//check if a mass driver is selected while placing this driver
|
||||||
if(!control.input.frag.config.isShown()) return;
|
if(!control.input.frag.config.isShown()) return;
|
||||||
Tile selected = control.input.frag.config.getSelectedTile();
|
Tile selected = control.input.frag.config.getSelectedTile();
|
||||||
if(!(selected.block() instanceof MassDriver) || !(selected.dst(x * tilesize, y * tilesize) <= range)) return;
|
if(selected == null || !(selected.block() instanceof MassDriver) || !(selected.dst(x * tilesize, y * tilesize) <= range)) return;
|
||||||
|
|
||||||
// if so, draw a dotted line towards it while it is in range
|
//if so, draw a dotted line towards it while it is in range
|
||||||
|
float sin = Mathf.absin(Time.time(), 6f, 1f);
|
||||||
|
Tmp.v1.set(x * tilesize + offset(), y * tilesize + offset()).sub(selected.drawx(), selected.drawy()).limit((size / 2f + 1) * tilesize + sin + 0.5f);
|
||||||
|
float x2 = x * tilesize - Tmp.v1.x, y2 = y * tilesize - Tmp.v1.y,
|
||||||
|
x1 = selected.drawx() + Tmp.v1.x, y1 = selected.drawy() + Tmp.v1.y;
|
||||||
|
int segs = (int)(selected.dst(x * tilesize, y * tilesize) / tilesize);
|
||||||
|
|
||||||
|
Lines.stroke(4f, Pal.gray);
|
||||||
|
Lines.dashLine(x1, y1, x2, y2, segs);
|
||||||
Lines.stroke(2f, Pal.placing);
|
Lines.stroke(2f, Pal.placing);
|
||||||
Lines.dashLine(x * tilesize, y * tilesize, selected.drawx(), selected.drawy(), (int)range / tilesize / 4);
|
Lines.dashLine(x1, y1, x2, y2, segs);
|
||||||
Draw.reset();
|
Draw.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class PowerDiode extends Block{
|
|||||||
public void update(Tile tile){
|
public void update(Tile tile){
|
||||||
super.update(tile);
|
super.update(tile);
|
||||||
|
|
||||||
if(tile.front() == null || tile.back() == null || !tile.back().block().hasPower || !tile.front().block().hasPower) return;
|
if(tile.front() == null || tile.back() == null || !tile.back().block().hasPower || !tile.front().block().hasPower || tile.back().getTeam() != tile.front().getTeam()) return;
|
||||||
|
|
||||||
PowerGraph backGraph = tile.back().entity.power.graph;
|
PowerGraph backGraph = tile.back().entity.power.graph;
|
||||||
PowerGraph frontGraph = tile.front().entity.power.graph;
|
PowerGraph frontGraph = tile.front().entity.power.graph;
|
||||||
|
|||||||
Reference in New Issue
Block a user