public override void Configure(ProponentAbilities reference) { base.Configure(reference); Cooldown = Dependancy.Get <ProponentAbilityCooldown>(gameObject); Modules.Configure(this); }
//Static Utility public static ProponentAbility Create(ProponentAbilities abilities, AbilityTemplate template) { var instance = new GameObject(template.name); instance.transform.SetParent(abilities.transform); var script = instance.AddComponent <ProponentAbility>(); script.Set(template); var cooldown = ProponentAbilityCooldown.Create(script); return(script); }