He has 3 default spell and he can choose between 3 different "specs", each giving 1 different ability. You can only pick 1 of these 3 specs, and then it will enable you to learn a new skill.
So far, what I've done is the Learn ability with the specialization (which is a behavior type ability) that applies the behavior to the unit, and a requeriment that requires this behavior count at >= than 1. Then, I put this requirements on the Learn ability and on the Command Card thing.
Example:
Class - Mage
Abilities: Blink, Polymorph, Counterspell
then he can spec into Fire to learn Fireball, frost to learn FrostNova and Arcane to learn Arcane Blast
Then, the learn ability has 3 categories: Fire, Frost and Arcane that gives the behavior ability (fire, frost or arcane spec) to the unit, and so, the 3 spells (Fireball,FrostNova and ArcaneBlast) requires the respective behavior count on the unit.
But, it doesn't work, the ability is always there active for the hero to learn and use no matter what I do.
I don't know if this is the right way, but anyone know a good way to do it?
A research type ability with the "Fire" upgrade in it,
The Learn Specialization (learn type ability) has this Research "fire" upgrade in it.
The Mage's Learn Spells (learn type ability) requires the Fire upgrade complete on the unit. (!CountUpgrade(Fire,CompleteOnlyAtUnit))
The Mage's Command Card Flame Strike ability also has this same requirement.
But, still, the ability is always enabled, doesn't matter if I have or not the Fire upgrade.
I better do it via trigger, so, when the unit learns the ability, it will set the upgrade level for the owner of triggering unit, but i don't know how to detect when an unit learns an ability through GUI too. Any ideas?
I'd like to make a hero like this:
He has 3 default spell and he can choose between 3 different "specs", each giving 1 different ability. You can only pick 1 of these 3 specs, and then it will enable you to learn a new skill.
So far, what I've done is the Learn ability with the specialization (which is a behavior type ability) that applies the behavior to the unit, and a requeriment that requires this behavior count at >= than 1. Then, I put this requirements on the Learn ability and on the Command Card thing.
Example: Class - Mage
Abilities: Blink, Polymorph, Counterspell then he can spec into Fire to learn Fireball, frost to learn FrostNova and Arcane to learn Arcane Blast Then, the learn ability has 3 categories: Fire, Frost and Arcane that gives the behavior ability (fire, frost or arcane spec) to the unit, and so, the 3 spells (Fireball,FrostNova and ArcaneBlast) requires the respective behavior count on the unit.
But, it doesn't work, the ability is always there active for the hero to learn and use no matter what I do.
I don't know if this is the right way, but anyone know a good way to do it?
One way may be to make the specialization an upgrade. Have the other spells in the later tier of said spec require that upgrade.
@7MM3: Go
Well, I made an specialization like this:
A research type ability with the "Fire" upgrade in it,
The Learn Specialization (learn type ability) has this Research "fire" upgrade in it.
The Mage's Learn Spells (learn type ability) requires the Fire upgrade complete on the unit. (!CountUpgrade(Fire,CompleteOnlyAtUnit))
The Mage's Command Card Flame Strike ability also has this same requirement.
But, still, the ability is always enabled, doesn't matter if I have or not the Fire upgrade. I better do it via trigger, so, when the unit learns the ability, it will set the upgrade level for the owner of triggering unit, but i don't know how to detect when an unit learns an ability through GUI too. Any ideas?
@Metrael: Go
Nvm, problem solved.
Just made the learn specialization ability learn a "dummy" ability of any type, and the requirement checks the level of this ability on the unit.
Maybe not the best way, but, it is working as intended for now.