Re-trying JITPack
This commit is contained in:
@@ -1878,7 +1878,7 @@ public class Fx{
|
||||
color(e.color);
|
||||
stroke(3f * e.fout());
|
||||
Lines.poly(e.x, e.y, 6, e.rotation + e.fin());
|
||||
}),
|
||||
}).followParent(true),
|
||||
|
||||
coreLandDust = new Effect(100f, e -> {
|
||||
color(e.color, e.fout(0.1f));
|
||||
|
||||
@@ -76,6 +76,10 @@ public class Effect{
|
||||
create(this, pos.getX(), pos.getY(), 0, Color.white, null);
|
||||
}
|
||||
|
||||
public void at(Position pos, boolean parentize){
|
||||
create(this, pos.getX(), pos.getY(), 0, Color.white, parentize ? pos : null);
|
||||
}
|
||||
|
||||
public void at(Position pos, float rotation){
|
||||
create(this, pos.getX(), pos.getY(), rotation, Color.white, null);
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ public class ForceFieldAbility extends Ability{
|
||||
if(paramUnit.shield <= trait.damage()){
|
||||
paramUnit.shield -= paramField.cooldown * paramField.regen;
|
||||
|
||||
Fx.shieldBreak.at(paramUnit.x, paramUnit.y, paramField.radius, paramUnit.team.color);
|
||||
Fx.shieldBreak.at(paramUnit.x, paramUnit.y, paramField.radius, paramUnit.team.color, paramUnit);
|
||||
}
|
||||
|
||||
paramUnit.shield -= trait.damage();
|
||||
|
||||
@@ -34,6 +34,7 @@ public class MoveLightningAbility extends Ability{
|
||||
public float bulletAngle = 0f, bulletSpread = 0f;
|
||||
|
||||
public Effect shootEffect = Fx.sparkShoot;
|
||||
public boolean parentizeEffects;
|
||||
public Sound shootSound = Sounds.spark;
|
||||
|
||||
protected float side = 1f;
|
||||
@@ -67,7 +68,7 @@ public class MoveLightningAbility extends Ability{
|
||||
if(Mathf.chance(Time.delta * chance * scl)){
|
||||
float x = unit.x + Angles.trnsx(unit.rotation, offset, width * side), y = unit.y + Angles.trnsy(unit.rotation, offset, width * side);
|
||||
|
||||
shootEffect.at(x, y, unit.rotation, color);
|
||||
shootEffect.at(x, y, unit.rotation, color, parentizeEffects ? unit : null);
|
||||
shootSound.at(unit);
|
||||
|
||||
if(length > 0){
|
||||
|
||||
@@ -9,6 +9,7 @@ public class RepairFieldAbility extends Ability{
|
||||
public float amount = 1, reload = 100, range = 60;
|
||||
public Effect healEffect = Fx.heal;
|
||||
public Effect activeEffect = Fx.healWaveDynamic;
|
||||
public boolean parentizeEffects = false;
|
||||
|
||||
protected float timer;
|
||||
protected boolean wasHealed = false;
|
||||
@@ -30,7 +31,7 @@ public class RepairFieldAbility extends Ability{
|
||||
|
||||
Units.nearby(unit.team, unit.x, unit.y, range, other -> {
|
||||
if(other.damaged()){
|
||||
healEffect.at(other);
|
||||
healEffect.at(other, parentizeEffects);
|
||||
wasHealed = true;
|
||||
}
|
||||
other.heal(amount);
|
||||
|
||||
@@ -9,6 +9,7 @@ public class ShieldRegenFieldAbility extends Ability{
|
||||
public float amount = 1, max = 100f, reload = 100, range = 60;
|
||||
public Effect applyEffect = Fx.shieldApply;
|
||||
public Effect activeEffect = Fx.shieldWave;
|
||||
public boolean parentizeEffects;
|
||||
|
||||
protected float timer;
|
||||
protected boolean applied = false;
|
||||
@@ -33,7 +34,7 @@ public class ShieldRegenFieldAbility extends Ability{
|
||||
if(other.shield < max){
|
||||
other.shield = Math.max(other.shield + amount, max);
|
||||
other.shieldAlpha = 1f; //TODO may not be necessary
|
||||
applyEffect.at(unit.x, unit.y, unit.team.color);
|
||||
applyEffect.at(unit.x, unit.y, 0f, unit.team.color, parentizeEffects ? other : null);
|
||||
applied = true;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -10,8 +10,9 @@ import mindustry.type.*;
|
||||
public class StatusFieldAbility extends Ability{
|
||||
public StatusEffect effect;
|
||||
public float duration = 60, reload = 100, range = 20;
|
||||
public Effect applyEffect = Fx.heal;
|
||||
public Effect applyEffect = Fx.none;
|
||||
public Effect activeEffect = Fx.overdriveWave;
|
||||
public boolean parentizeEffects;
|
||||
|
||||
protected float timer;
|
||||
|
||||
@@ -36,9 +37,10 @@ public class StatusFieldAbility extends Ability{
|
||||
if(timer >= reload){
|
||||
Units.nearby(unit.team, unit.x, unit.y, range, other -> {
|
||||
other.apply(effect, duration);
|
||||
applyEffect.at(other, parentizeEffects);
|
||||
});
|
||||
|
||||
activeEffect.at(unit);
|
||||
activeEffect.at(unit, parentizeEffects);
|
||||
|
||||
timer = 0f;
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ public class UnitSpawnAbility extends Ability{
|
||||
public UnitType unit;
|
||||
public float spawnTime = 60f, spawnX, spawnY;
|
||||
public Effect spawnEffect = Fx.spawn;
|
||||
public boolean parentizeEffects;
|
||||
|
||||
protected float timer;
|
||||
|
||||
@@ -37,7 +38,7 @@ public class UnitSpawnAbility extends Ability{
|
||||
|
||||
if(timer >= spawnTime && Units.canCreate(unit.team, this.unit)){
|
||||
float x = unit.x + Angles.trnsx(unit.rotation, spawnY, spawnX), y = unit.y + Angles.trnsy(unit.rotation, spawnY, spawnX);
|
||||
spawnEffect.at(x, y);
|
||||
spawnEffect.at(x, y, 0f, parentizeEffects ? unit : null);
|
||||
Unit u = this.unit.create(unit.team);
|
||||
u.set(x, y);
|
||||
u.rotation = unit.rotation;
|
||||
|
||||
Reference in New Issue
Block a user