Example #1
0
    public void Cast(Ability ability)
    {
        movementState = MovementState.Idle;
        //GetComponent<Animator>().Play("RightHandCast");
        GameObject abilityResult = Instantiate(Resources.Load(String.Format("Prefabs/Abilities/Forms/{0}", ability.aFormRune.formRuneType))) as GameObject;
        GameObject particles     = Instantiate(Resources.Load(String.Format("Prefabs/Abilities/Forms/{0}_Graphic/{1}_{0}_Graphic", ability.aFormRune.formRuneType, ability.aSchoolRune.schoolRuneType))) as GameObject;

        particles.transform.SetParent(abilityResult.transform);
        WorldAbility worldAbility = abilityResult.GetComponent <WorldAbility>();

        worldAbility.Construct(ability, unitID);
        abilityResult.transform.position = primarySpellCastLocation.position;

        if (worldAbility.wEffectRunes != null)
        {
            foreach (var rune in worldAbility.wEffectRunes)
            {
                if (rune.triggerTag == Rune.TriggerTag.OnCast)
                {
                    rune.Effect(this, this, worldAbility);
                }
            }
        }
    }
Example #2
0
 public virtual void Effect(RootUnit target, RootUnit owner, WorldAbility worldAbility)
 {
 }
Example #3
0
 public void InitialCreation()
 {
     wA       = GetComponent <WorldAbility>();
     skeleton = GetComponent <Rigidbody>();
     pS       = GetComponentInChildren <ParticleSystem>();
 }
Example #4
0
 public override void Effect(RootUnit target, RootUnit owner, WorldAbility worldAbility)
 {
     GameWorldReferenceClass.CreateWorldAbility(target, owner, worldAbility, 10);
 }