IEnumerator Damage(GroundTile target)
    {
        GameObject cannonBall = Instantiate(cannon, new Vector3(target.transform.position.x, target.transform.position.y + GroundGrid.gridSize.y, 0), Quaternion.identity);

        cannonBall.GetComponent <CannonBall>().InitCannon(target.transform.position, warningSeconds);
        GameObject warningShot = Instantiate(warning, target.transform.position, Quaternion.identity);

        yield return(new WaitForSeconds(warningSeconds));

        Destroy(warningShot.gameObject);
        Destroy(cannonBall.gameObject);
        if (target.DecrDurability())
        {
            target.Break();
            spawnMaterials(target);
            availableTiles.Remove(target);
            StartCoroutine(playBreakAudio());
        }
    }