Merge remote-tracking branch 'origin/master'

This commit is contained in:
Anuken
2023-08-09 13:05:26 -04:00
3 changed files with 9 additions and 4 deletions

View File

@@ -2153,13 +2153,15 @@ public class UnitTypes{
abilities.add(new EnergyFieldAbility(40f, 65f, 180f){{
statusDuration = 60f * 6f;
maxTargets = 25;
healPercent = 1.5f;
sameTypeHealMult = 0.5f;
}});
for(float mountY : new float[]{-18f, 14}){
weapons.add(new PointDefenseWeapon("point-defense-mount"){{
x = 12.5f;
y = mountY;
reload = 6f;
reload = 4f;
targetInterval = 8f;
targetSwitchInterval = 8f;
@@ -2167,7 +2169,7 @@ public class UnitTypes{
shootEffect = Fx.sparkShoot;
hitEffect = Fx.pointHit;
maxRange = 180f;
damage = 25f;
damage = 30f;
}};
}});
}

View File

@@ -29,6 +29,8 @@ public class EnergyFieldAbility extends Ability{
public boolean targetGround = true, targetAir = true, hitBuildings = true, hitUnits = true;
public int maxTargets = 25;
public float healPercent = 3f;
/** Multiplies healing to units of the same type by this amount. */
public float sameTypeHealMult = 1f;
public float layer = Layer.bullet - 0.001f, blinkScl = 20f, blinkSize = 0.1f;
public float effectRadius = 5f, sectorRad = 0.14f, rotateSpeed = 0.5f;
@@ -129,7 +131,8 @@ public class EnergyFieldAbility extends Ability{
if(((Teamc)other).team() == unit.team){
if(other.damaged()){
anyNearby = true;
other.heal(healPercent / 100f * other.maxHealth());
float healMult = (other instanceof Unit u && u.type == unit.type) ? sameTypeHealMult : 1f;
other.heal(healPercent / 100f * other.maxHealth() * healMult);
healEffect.at(other);
damageEffect.at(rx, ry, 0f, color, other);
hitEffect.at(rx, ry, unit.angleTo(other), color);