public void ProcessCollisionInfo(GameObject collidedObject, GameObject objectCollidedWith) { string collidedObjectTag = collidedObject.tag; string objectCollidedWithTag = objectCollidedWith.tag; if (collidedObjectTag == CollisionConstants.BulletTag) { BulletController bullet = collidedObject.GetComponent <BulletController>(); // bullet hits any object except other bullet and owner if (objectCollidedWithTag == CollisionConstants.WallTag) { bullet.Destroy(); } // player's bullet hits an enemy or enemy bullet hits player if (objectCollidedWithTag == CollisionConstants.PlayerTag && bullet.Owner == Tank.UnitType.Enemy || objectCollidedWithTag == CollisionConstants.EnemyTag && bullet.Owner == Tank.UnitType.Player) { bullet.Destroy(); SpawnableUnit unit = objectCollidedWith.GetComponent <SpawnableUnit>(); unit.Despawn(); } } // player tank hits an enemy tank if (collidedObjectTag == CollisionConstants.PlayerTag && objectCollidedWithTag == CollisionConstants.EnemyTag) { SpawnableUnit unit = collidedObject.GetComponent <SpawnableUnit>(); unit.Despawn(); } }
void OnTriggerEnter2D(Collider2D col) { if (col.tag == "bullet") { Debug.Log("Da va cham voi Bullet"); BulletController _bullet = col.GetComponent <BulletController>(); float _damge = _bullet.damgeBullet; Hit(_damge); _bullet.Destroy(); } if (col.tag == "Player") { isMove = false; speed = 0; amin.SetBool("IsAttack", true); PlayerControl _player = col.GetComponent <PlayerControl>(); _player.Hit(damge); //FinishActack(); } }