Example #1
0
    public void CollisionAction(GameObject other)
    {
        if (other.layer == gameObject.layer)
        {
            return;
        }
        if (other.layer == 10)
        {
            return;
        }
        if (other.GetComponent <State>() == null)
        {
            return;
        }
        if (insideObject.Contains(other))
        {
            return;
        }
        else
        {
            insideObject.Add(other);
        }
        RagnarosDamage dmg = new RagnarosDamage(20, DamageType.Fire, gameObject.layer);

        other.GetComponent <State>().TakeSkillContent(dmg);
    }
Example #2
0
    protected override void OnEnable()
    {
        Sulfuars sul = (Sulfuars)GameController.Register.FindHeroByLayer(gameObject.layer).weapon;

        fireDamage = new RagnarosDamage(3 * sul.FlameDamageVal, DamageType.Fire, gameObject.layer);
        phyDamage  = new Damage(3 * sul.PhyDamageVal, DamageType.Physical);
        gameObject.GetComponent <Collider>().enabled = true;
        StartCoroutine(ValidTrigger());
    }
Example #3
0
 bool isCollideEarth;    // Use this for initialization
 protected override void Awake()
 {
     isCollideEarth = false;
     damage         = new RagnarosDamage(150, DamageType.Fire, gameObject.layer);
     base.Awake();
     isSeed             = false;
     material           = Instantiate(projector.material);
     projector.material = material;
 }
Example #4
0
    protected override void Awake()
    {
        base.Awake();
        effect.SetActive(false);
        RagnarosDamage damage = new RagnarosDamage(1, DamageType.Fire, gameObject.layer);

        damage.doSkillEffect += runDot;
        dot = new Dot(damage, 5f, 0, null);
    }
Example #5
0
 private void OnTriggerEnter(Collider other)
 {
     //Debug.Log(other.name);
     if (other.gameObject.layer != 8)
     {
         isCollide      = true;
         colliderObject = other.gameObject;
         colliderName   = other.name;
         StartCoroutine(WaitingthenDelete());
         if (other.gameObject.layer == 9 && other.tag != "weapon" && isPhyAttack)
         {
             FlameDamageVal += 0.01f;
             RagnarosDamage flameDamage = new RagnarosDamage(FlameDamageVal, DamageType.Fire, gameObject.layer);
             Damage         phyDamage   = new Damage(PhyDamageVal, DamageType.Physical);
             other.GetComponent <Rigidbody>().AddForce(-150, 0, 0);
             other.GetComponent <State>().TakeSkillContent(phyDamage);
             other.GetComponent <State>().TakeSkillContent(flameDamage);
         }
     }
 }
Example #6
0
    public override IEnumerator Die()
    {
        RagnarosSubmergeAttack skill = ((Ragnaros)speller).skillManager.GetSkillByName("RagnarosSubmergeAttack") as RagnarosSubmergeAttack;

        skill.Float(((Ragnaros)speller).animator);
        AC.CrossFade("Death [12] 0", 0.1f);
        yield return(new WaitForSeconds(2));

        GameObject[]   objects = GameController.Register.RightHero.HeroRegister.GetAllGameItems();
        RagnarosDamage damage  = new RagnarosDamage(50, DamageType.Fire, gameObject.layer);

        foreach (GameObject gObject in objects)
        {
            if (gObject.GetComponent <State>() != null)
            {
                gObject.GetComponent <State>().TakeSkillContent(damage);
            }
        }
        GameObject go_ = Instantiate(explosion, null);

        go_.transform.position = gameObject.transform.position - new Vector3(0, 0.7f, 0);
        //Destroy(gameObject);
        DestoryByPool(this);
    }
Example #7
0
    IEnumerator Walk()
    {
        if (target == null)
        {
            StartCoroutine(Die());
        }
        if (Vector3.Distance(gameObject.transform.position, target.transform.position) >= 1f)
        {
            yield return(new WaitForEndOfFrame());

            if (Physics.Raycast(new Ray(transform.position, -transform.up), 0.9f))
            {
                Vector3 v = target.transform.position;
                v.y = gameObject.transform.position.y;
                gameObject.transform.LookAt(v);
                gameObject.transform.Rotate(new Vector3(0, 90, 0));
                // CC.Move((Suf.transform.position - gameObject.transform.position).normalized * Time.deltaTime * speed);
                transform.position += (target.transform.position - gameObject.transform.position).normalized * Time.deltaTime * speed;
                //gameObject.transform.position += (Suf.transform.position - gameObject.transform.position).normalized * Time.deltaTime * speed;
            }
            else
            {
                AC.CrossFade("Fly", 0f);
            }
            StartCoroutine(Walk());
        }
        else
        {
            GetComponent <AudioSource>().Play();
            RagnarosSubmergeAttack skill = ((Ragnaros)speller).skillManager.GetSkillByName("RagnarosSubmergeAttack") as RagnarosSubmergeAttack;
            skill.Float(((Ragnaros)speller).animator);
            GameObject go = Instantiate(Explosion, null);
            renderer.enabled = false;
            GameObject[] objects = GameController.Register.RightHero.HeroRegister.GetAllGameItems();
            int          num     = 0;
            foreach (GameObject gObject in objects)
            {
                if (gObject.GetComponent <State>() != null)
                {
                    num++;
                }
            }
            float damageVal = 1000 / num;
            if (damageVal > 250)
            {
                damageVal = 250;
            }
            RagnarosDamage damage = new RagnarosDamage(damageVal, DamageType.Fire, gameObject.layer);
            foreach (GameObject gObject in objects)
            {
                if (gObject.GetComponent <State>() != null)
                {
                    gObject.GetComponent <State>().TakeSkillContent(damage);
                }
            }
            go.transform.position = target.transform.position + new Vector3(0, 0.3f, 0);
            go.GetComponent <ParticleSystemMultiplier>().multiplier = 1f;
            yield return(new WaitForSeconds(1.2f));

            DestoryByPool(this);
        }
    }
Example #8
0
 protected override void Awake()
 {
     base.Awake();
     damage      = new RagnarosDamage(30, DamageType.Fire, gameObject.layer);
     flameIniPos = flame.transform.localPosition;
 }
Example #9
0
 protected override void Awake()
 {
     base.Awake();
     damage = new RagnarosDamage(10, DamageType.Fire, gameObject.layer);
 }