phase_instability.xml

<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 for each stack.
      [p]Gain [b]Phase Instability[/b] for 5 turns, plus 2 more turns for each stack consumed.
      [p][b]Phase Instability[/b]: +15 Attack Speed, +15 Movement Speed, +15 Dodge. Whenever an attack hits
      you, 50% chance to teleport 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:«LINK: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:«LINK:phase_instability_status», amount:{{phase_duration}};
          THEN RemoveStatusEffect -> key:«LINK: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>