using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// ============================================================================
// 5. EASY MIGRATION HELPER - Update Your Existing Components
// ============================================================================
///
/// Helper to easily convert your existing ability references
/// Just change "BaseAbility" to "RuntimeAbilityInstance" in your existing scripts
///
public static class AbilityMigrationHelper
{
///
/// Convert a BaseAbility to RuntimeAbilityInstance
///
public static RuntimeAbilityInstance ToRuntime(this BaseAbility ability)
{
return new RuntimeAbilityInstance(ability);
}
///
/// Create a modified version of an ability
///
public static RuntimeAbilityInstance CreateModifiedVersion(BaseAbility baseAbility, params AbilityModifier[] modifiers)
{
var runtime = new RuntimeAbilityInstance(baseAbility);
foreach (var modifier in modifiers)
{
runtime.AddModifier(modifier);
}
return runtime;
}
///
/// Create legendary version with special behaviors
///
public static RuntimeAbilityInstance CreateLegendaryVersion(BaseAbility baseAbility, params RuntimeBehavior[] behaviors)
{
var runtime = new RuntimeAbilityInstance(baseAbility);
foreach (var behavior in behaviors)
{
runtime.AddBehavior(behavior);
}
return runtime;
}
}