From d78f846dbbde231c722ff6710a12bec1b19637b2 Mon Sep 17 00:00:00 2001 From: sharlotte Date: Sun, 5 Sep 2021 22:46:07 +0900 Subject: [PATCH] reelase --- assets/mod.json | 2 +- src/UnitInfo/core/OverDrawer.java | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/assets/mod.json b/assets/mod.json index cd04a4c..857c880 100644 --- a/assets/mod.json +++ b/assets/mod.json @@ -3,7 +3,7 @@ "displayName": "Unit Information", "author": "Sharlotte", "description": "The mod displays more information in-game, such as unit/building, wave, core, tile, item/unit total info etc", - "version": "1.3.6", + "version": "1.3.7", "main": "UnitInfo.core.Main", "minGameVersion": "130.1", "dependencies": [], diff --git a/src/UnitInfo/core/OverDrawer.java b/src/UnitInfo/core/OverDrawer.java index e65a4a8..fe395dd 100644 --- a/src/UnitInfo/core/OverDrawer.java +++ b/src/UnitInfo/core/OverDrawer.java @@ -16,6 +16,7 @@ import mindustry.ai.types.*; import mindustry.content.Fx; import mindustry.core.Renderer; import mindustry.entities.*; +import mindustry.entities.bullet.BulletType; import mindustry.entities.units.AIController; import mindustry.entities.units.UnitCommand; import mindustry.entities.units.UnitController; @@ -28,9 +29,7 @@ import mindustry.ui.Fonts; import mindustry.world.Block; import mindustry.world.Tile; import mindustry.world.blocks.ControlBlock; -import mindustry.world.blocks.defense.turrets.BaseTurret; -import mindustry.world.blocks.defense.turrets.TractorBeamTurret; -import mindustry.world.blocks.defense.turrets.Turret; +import mindustry.world.blocks.defense.turrets.*; import mindustry.world.blocks.distribution.MassDriver; import mindustry.world.blocks.payloads.PayloadMassDriver; import mindustry.world.blocks.power.PowerNode; @@ -157,7 +156,7 @@ public class OverDrawer { }); // Turret Ranges - if(settings.getBool("rangeNearby") && player != null) { + if(settings.getBool("rangeNearby") && player != null && player.unit() != null && !player.unit().dead) { Team team = player.team(); Unit unit = player.unit(); Groups.build.each(e -> { @@ -174,12 +173,16 @@ public class OverDrawer { if(control.input.block != null && dst <= max) canHit = e.block instanceof Turret t && t.targetGround; if(player.dst(e) <= max || (control.input.block != null && dst <= max)) { if(canHit || settings.getBool("allTargetRange")){ - if(settings.getBool("softRangeDrawing")){ - Lines.stroke(Scl.scl(), Tmp.c1.set(canHit ? e.team.color : Team.derelict.color).a(0.5f)); - Lines.poly(e.x, e.y, Lines.circleVertices(range), range); - Fill.light(e.x, e.y, Lines.circleVertices(range), range, Color.clear, Tmp.c1.a(Mathf.clamp(1-((control.input.block != null && dst <= max ? dst : player.dst(e))/max), 0, settings.getInt("softRangeOpacity")/100f))); + if(e instanceof Turret.TurretBuild t){ + Lines.stroke(1.5f, Tmp.c1.set(canHit ? e.team.color : Team.derelict.color).a(0.75f)); + Tmp.v1.set(e.x, e.y).trns(((BaseTurret.BaseTurretBuild)e).rotation+((Turret)t.block).shootCone, range); + Lines.line(e.x, e.y, e.x + Tmp.v1.x, e.y + Tmp.v1.y); + Tmp.v1.set(e.x, e.y).trns(((BaseTurret.BaseTurretBuild)e).rotation-((Turret)t.block).shootCone, range); + Lines.line(e.x, e.y, e.x + Tmp.v1.x, e.y + Tmp.v1.y); } - else Drawf.dashCircle(e.x, e.y, range, canHit ? e.team.color : Team.derelict.color); + Lines.stroke(1, Tmp.c1.set(canHit ? e.team.color : Team.derelict.color).a(0.5f)); + Lines.poly(e.x, e.y, Lines.circleVertices(range), range); + Fill.light(e.x, e.y, Lines.circleVertices(range), range, Color.clear, Tmp.c1.a(Mathf.clamp(1-((control.input.block != null && dst <= max ? dst : player.dst(e))/max), 0, settings.getInt("softRangeOpacity")/100f))); } } }); @@ -196,12 +199,9 @@ public class OverDrawer { if(Vars.player.dst(u) <= max) { if (canHit || settings.getBool("allTargetRange")) // Same as above - if(settings.getBool("softRangeDrawing")){ - Lines.stroke(Scl.scl(), Tmp.c1.set(canHit ? u.team.color : Team.derelict.color).a(0.5f)); + Lines.stroke(1, Tmp.c1.set(canHit ? u.team.color : Team.derelict.color).a(0.5f)); Lines.poly(u.x, u.y, Lines.circleVertices(range), range); Fill.light(u.x, u.y, Lines.circleVertices(range), range, Color.clear, Tmp.c1.a(Math.min(settings.getInt("softRangeOpacity")/100f, 1-Vars.player.dst(u)/max))); - } - else Drawf.dashCircle(u.x, u.y, range, canHit ? u.team.color : Team.derelict.color); } }); }