/// <summary> /// When colliding with player projectiles, take damage if it hasn't been hit by it yet. /// </summary> /// <param name="otherCollider"></param> void OnTriggerEnter2D(Collider2D otherCollider) { Projectile projectile = otherCollider.gameObject.GetComponent <Projectile>(); if (projectile == null) { Debug.Log("Null"); return; } if (projectile.isEnemy) { return; } if (!projectile.AddHitID(group.enemyId)) { return; } if (invincibleEnemy.value) { return; } group.TakeDamage(projectile.damage); Transform t = Instantiate(damageNumbers); t.position = transform.position; DamageNumberDisplay dnd = t.GetComponent <DamageNumberDisplay>(); dnd.damage = projectile.damage; battleGUI.damages.Add(dnd); id++; }
/// <summary> /// When colliding with player projectiles, take damage if it hasn't been hit by it yet. /// </summary> /// <param name="otherCollider"></param> void OnTriggerEnter2D(Collider2D otherCollider) { Projectile projectile = otherCollider.gameObject.GetComponent <Projectile>(); if (projectile == null) { Debug.Log("Null"); return; } if (projectile.isEnemy) { return; } if (!projectile.AddHitID(group.enemyId)) { return; } if (invincibleEnemy.value) { return; } group.TakeDamage((onehitKO.value) ? group.maxhp : projectile.damage); Transform t = Instantiate(damageNumbers); t.position = transform.position; DamageNumberDisplay dnd = t.GetComponent <DamageNumberDisplay>(); dnd.damage = projectile.damage; battleGUI.damages.Add(dnd); id++; if (projectile.impactSound != null) { currentSfx.value.Enqueue(projectile.impactSound.clip); playSfxEvent.Invoke(); } }