Reactive effect flag

This commit is contained in:
Anuken
2021-01-24 15:22:41 -05:00
parent baedba0d5b
commit 8b5cf5309a
3 changed files with 10 additions and 4 deletions

View File

@@ -161,10 +161,12 @@ public class StatusEffects implements ContentList{
shocked = new StatusEffect("shocked"){{
color = Pal.lancerLaser;
reactive = true;
}};
blasted = new StatusEffect("blasted"){{
color = Color.valueOf("ff795e");
reactive = true;
}};
corroded = new StatusEffect("corroded"){{

View File

@@ -55,10 +55,12 @@ abstract class StatusComp implements Posc, Flyingc{
}
}
//otherwise, no opposites found, add direct effect
StatusEntry entry = Pools.obtain(StatusEntry.class, StatusEntry::new);
entry.set(effect, duration);
statuses.add(entry);
if(!effect.reactive){
//otherwise, no opposites found, add direct effect
StatusEntry entry = Pools.obtain(StatusEntry.class, StatusEntry::new);
entry.set(effect, duration);
statuses.add(entry);
}
}
void clearStatuses(){

View File

@@ -25,6 +25,8 @@ public class StatusEffect extends MappableContent{
public float effectChance = 0.15f;
/** If true, the effect never disappears. */
public boolean permanent;
/** If true, this effect will only react with other effects and cannot be applied. */
public boolean reactive;
/** Tint color of effect. */
public Color color = Color.white.cpy();
/** Effect that happens randomly on top of the affected unit. */