mirror of
https://github.com/yawaflua/Informatis.git
synced 2026-02-04 10:24:21 +02:00
더 직관적인 논리식
This commit is contained in:
@@ -44,8 +44,8 @@ public class RangeDraw extends OverDraw {
|
|||||||
|
|
||||||
boolean includeBlock = settings.getBool("blockRange"),
|
boolean includeBlock = settings.getBool("blockRange"),
|
||||||
includeUnit = settings.getBool("unitRange"),
|
includeUnit = settings.getBool("unitRange"),
|
||||||
includeAir = settings.getBool("airRange"),
|
includeAir = settings.getBool("airRange"), isAir = target == null || target.isFlying(),
|
||||||
includeGround = settings.getBool("groundRange"),
|
includeGround = settings.getBool("groundRange"), isGround = target == null || !target.isFlying(),
|
||||||
includeAlice = settings.getBool("aliceRange"),
|
includeAlice = settings.getBool("aliceRange"),
|
||||||
shader = settings.getBool("RangeShader");
|
shader = settings.getBool("RangeShader");
|
||||||
|
|
||||||
@@ -62,15 +62,18 @@ public class RangeDraw extends OverDraw {
|
|||||||
&& building instanceof BaseTurret.BaseTurretBuild turret && isInCamera(building.x, building.y, turret.range()))) continue;
|
&& building instanceof BaseTurret.BaseTurretBuild turret && isInCamera(building.x, building.y, turret.range()))) continue;
|
||||||
|
|
||||||
boolean valid = false;
|
boolean valid = false;
|
||||||
if (target == null) valid = true;
|
if (building instanceof Turret.TurretBuild turretBuild) {
|
||||||
else if (building instanceof Turret.TurretBuild turretBuild) {
|
|
||||||
Turret block = (Turret) turretBuild.block;
|
Turret block = (Turret) turretBuild.block;
|
||||||
if(block.targetAir && !includeAir || block.targetGround && !includeGround) continue;
|
if ((building.team == player.team()
|
||||||
if((target.isFlying() ? block.targetAir : block.targetGround) && turretBuild.hasAmmo() && turretBuild.canConsume()) valid = true;
|
|| (block.targetAir && isAir && includeAir)
|
||||||
|
|| (block.targetGround && isGround && includeGround))
|
||||||
|
&& turretBuild.hasAmmo() && turretBuild.canConsume()) valid = true;
|
||||||
} else if (building instanceof TractorBeamTurret.TractorBeamBuild tractorBeamBuild) {
|
} else if (building instanceof TractorBeamTurret.TractorBeamBuild tractorBeamBuild) {
|
||||||
TractorBeamTurret block = (TractorBeamTurret) tractorBeamBuild.block;
|
TractorBeamTurret block = (TractorBeamTurret) tractorBeamBuild.block;
|
||||||
if(block.targetAir && !includeAir || block.targetGround && !includeGround) continue;
|
if ((building.team == player.team()
|
||||||
if((target.isFlying() ? block.targetAir : block.targetGround) && tractorBeamBuild.canConsume()) valid = true;
|
|| (block.targetAir && isAir && includeAir)
|
||||||
|
|| (block.targetGround && isGround && includeGround))
|
||||||
|
&& tractorBeamBuild.canConsume()) valid = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//non-base teams are considered as crux
|
//non-base teams are considered as crux
|
||||||
@@ -90,10 +93,10 @@ public class RangeDraw extends OverDraw {
|
|||||||
|
|
||||||
boolean valid = false;
|
boolean valid = false;
|
||||||
if (target == null) valid = true;
|
if (target == null) valid = true;
|
||||||
else if (!(unit.type.targetAir && !includeAir || unit.type.targetGround && !includeGround)
|
else if ((unit.team == player.team()
|
||||||
&& (target.isFlying() ?unit.type.targetAir : unit.type.targetGround)
|
|| (unit.type.targetAir && isAir && includeAir)
|
||||||
&& unit.canShoot()
|
|| (unit.type.targetGround && isGround && includeGround))
|
||||||
) valid = true;
|
&& unit.canShoot()) valid = true;
|
||||||
|
|
||||||
//non-base teams are considered as crux
|
//non-base teams are considered as crux
|
||||||
int index = valid ? unit.team.id > 5 ? 2 : unit.team.id : 0;
|
int index = valid ? unit.team.id > 5 ? 2 : unit.team.id : 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user