<abilities>
  <ability>
    <name>Phase Instability</name>
    <key>phase_instability</key>
    <skill>fulmination</skill>
    <icon>phase_instability</icon>
    <description>
      Consume all Overload stacks, gaining 10 energy per stack.
      [p]Gain a status effect for 5 turns, plus 2 additional turn for each stack consumed, granting:
      [n]+15 attack and movement speed
      [n]+15 dodge
      [p]When hit by an attack, you have a 50% chance to teleport up to 2-4 tiles away in a random
      direction.
    </description>
    <type>Immediate</type>
    <abilitySoundPack>phase_instability</abilitySoundPack>
    <cost>0.0</cost>
    <cooldown>25</cooldown>
    <immediateInfo>
      <abilityUseTime>
        <type>standard</type>
      </abilityUseTime>
      <effects>
        <effects>
          THEN Evaluator -> operation:set, amount:{{G:overload_stacks}}, key:energy_gain;
          THEN Evaluator -> operation:multiply, amount:10, key:energy_gain;
          THEN GiveEnergy -> amount:{{energy_gain}};
          THEN write_log2 -> text:{{energy_gain}} energy restored (Phase Instability), type:combat;
        </effects>
        <effects>
          THEN ApplyStatusEffect -> key:phase_instability_status, target:player;
          THEN Evaluator -> operation:set, amount:{{G:overload_stacks}}, key:phase_duration;
          THEN Evaluator -> operation:multiply, amount:2, key:phase_duration;
          THEN ExtendStatusEffect -> key:phase_instability_status, amount:{{phase_duration}};
          THEN RemoveStatusEffect -> key:overload_status, target:player;
          THEN ShowAnimation -> key:phase_instability;
        </effects>
      </effects>
    </immediateInfo>
    <unlockInfo>
      <autoDiscover>0</autoDiscover>
      <unlockRequirements>
        <requiredPoints>2</requiredPoints>
        <requires>overload</requires>
      </unlockRequirements>
    </unlockInfo>
    <requirements>
      <requirements>
        <type>HasStat</type>
        <params>
          <params type="key">TyrosAttunement</params>
          <params type="amount">2</params>
        </params>
      </requirements>
      <requirements>
        <type>status_effect_active</type>
        <params>
          <params type="status_key">overload_status</params>
          <params type="status_name">Overload</params>
        </params>
      </requirements>
    </requirements>
  </ability>
</abilities>
