*/ public static function definitions(): array { static $cache = null; if ($cache !== null) { return $cache; } $cache = [ AbilityId::Heal->value => new AbilityDefinition( id: AbilityId::Heal, label: 'Heal', range: 2, areaRadius: 0, target: AbilityDefinition::TARGET_ALLY, effect: AbilityDefinition::EFFECT_RESTORE_HEALTH, effectValue: 5, ), AbilityId::AreaDamage->value => new AbilityDefinition( id: AbilityId::AreaDamage, label: 'Area Damage', range: 3, areaRadius: 1, target: AbilityDefinition::TARGET_TILE, effect: AbilityDefinition::EFFECT_DEAL_DAMAGE, effectValue: 3, ), AbilityId::Buff->value => new AbilityDefinition( id: AbilityId::Buff, label: 'Rally', range: 1, areaRadius: 0, target: AbilityDefinition::TARGET_ALLY, effect: AbilityDefinition::EFFECT_APPLY_BUFF, effectValue: 2, ), ]; return $cache; } }