Exemple #1
0
 public void OnTriggerStay2D(Collider2D col)
 {
     if (col.gameObject.tag == "Monster")
     {
         if (isReady && pM.attacking)
         {
             isReady = false;
             Damage damage = new Damage(pS.primaryDamage, pS.minDamage_P, pS.maxDamage_P);
             damage.RunCritDice(0, 100, pS.critChance, (1f + (pS.critDamage / 100f)));
             int hit = Damage_Calculator.CalculateElementDamageToMonster(damage, col.GetComponent <Monster>());
             if (pS.primaryOTDamage != Damage_OT.Damage_OTType.Normal)
             {
                 Damage_OT ot    = new Damage_OT(pS.primaryOTDamage, (int)(Random.Range(pS.minDamage_P / 5f, pS.maxDamage_P / 5)), 5f);
                 int       othit = Damage_Calculator.CalculateElementDamageOTToMonster(ot, col.GetComponent <Monster>());
                 col.GetComponent <Monster>().TakeDamageOT(ot, othit);
                 GameObject debuff = Instantiate(new GameObject(), col.transform);
                 debuff.AddComponent <De_Buff>().InitializeDeBuff(ot);
             }
             col.GetComponent <Monster>().TakeDamage(damage, hit);
             Debug.Log("Hit For : " + hit);
         }
         if (!pM.attacking)
         {
             isReady = true;
         }
     }
 }
Exemple #2
0
 public void OnTriggerEnter2D(Collider2D col)
 {
     if (tag == "PlayerProjectile" && col.tag == "Monster")
     {
         int x = Damage_Calculator.CalculateElementDamageToMonster(magic.d, col.GetComponent <Monster>());
         col.GetComponent <Monster>().TakeDamage(magic.d, x);
         if (magic.dot.GetDamage_OTType() != Damage_OT.Damage_OTType.Normal)
         {
             GameObject debuff = Instantiate(new GameObject(), col.transform);
             debuff.AddComponent <De_Buff>().InitializeDeBuff(magic.dot);
         }
         if (!magic.isPiercing)
         {
             KillYourSelf();
         }
     }
 }