Power Lasers Transparency (#778)

* Render each visible power link only once.

* Set power lasers opacity based on the setting

* Change power laser colors to work better with transparency

* Slightly reducing power laser width

* Change laser color to the original, minor refactoring

* Change power laser opacity setting label

* Add laser opacity setting text to bundles

* Remove "Show Power Lasers" setting as it's redundant (replaced by lasers opacity setting), changing default laser opacity setting to 100%

* Remove "setting.lasers.name" from other bundles
This commit is contained in:
azureblue
2019-10-09 01:32:00 +02:00
committed by Anuken
parent 295c922f0a
commit b43db6035f
26 changed files with 61 additions and 44 deletions

View File

@@ -241,28 +241,34 @@ public class BlockRenderer implements Disposable{
}
public void drawBlocks(Layer stopAt){
int startIdx = iterateidx;
for(; iterateidx < requestidx; iterateidx++){
BlockRequest request = requests.get(iterateidx);
if(iterateidx < requests.size && requests.get(iterateidx).layer.ordinal() > stopAt.ordinal()){
if(request.layer.ordinal() > stopAt.ordinal()){
break;
}
BlockRequest req = requests.get(iterateidx);
Block block = req.tile.block();
if(request.layer == Layer.power){
if(iterateidx - startIdx > 0 && request.tile.pos() == requests.get(iterateidx - 1).tile.pos()){
continue;
}
}
if(req.layer == Layer.block){
block.draw(req.tile);
if(req.tile.entity != null && req.tile.entity.damaged()){
block.drawCracks(req.tile);
Block block = request.tile.block();
if(request.layer == Layer.block){
block.draw(request.tile);
if(request.tile.entity != null && request.tile.entity.damaged()){
block.drawCracks(request.tile);
}
if(block.synthetic() && req.tile.getTeam() != player.getTeam()){
block.drawTeam(req.tile);
if(block.synthetic() && request.tile.getTeam() != player.getTeam()){
block.drawTeam(request.tile);
}
}else if(req.layer == block.layer){
block.drawLayer(req.tile);
}else if(req.layer == block.layer2){
block.drawLayer2(req.tile);
}else if(request.layer == block.layer){
block.drawLayer(request.tile);
}else if(request.layer == block.layer2){
block.drawLayer2(request.tile);
}
}
}
@@ -327,7 +333,9 @@ public class BlockRenderer implements Disposable{
@Override
public int compareTo(BlockRequest other){
return layer.compareTo(other.layer);
int compare = layer.compareTo(other.layer);
return (compare != 0) ? compare : Integer.compare(tile.pos(), other.tile.pos());
}
@Override