/// <summary>
        /// Set the sprite for a given object
        /// </summary>
        /// <param name="bullet"></param>
        /// <param name="bankEntry"></param>
        /// <param name="bulletGameObject"></param>
        /// <returns></returns>
        public BulletScript SetBulletSettings(BulletObject bullet, BulletBankEntry bankEntry, GameObject bulletGameObject)
        {
            // Change sprite if the field has been filled
            if (bankEntry.sprite != null)
            {
                SpriteRenderer spriteRenderer = bulletGameObject.GetComponentInChildren <SpriteRenderer>();
                if (spriteRenderer != null)
                {
                    spriteRenderer.sprite = bankEntry.sprite;
                }
            }

            // Make sure we have the appropriate script
            BulletScript bulletScript = bulletGameObject.GetComponent <BulletScript>();

            if (bulletScript == null)
            {
                bulletScript = bulletGameObject.AddComponent <BulletScript>();
            }

            bulletScript.DestroyWhenOutOfScreen = bankEntry.DestroyWhenOutOfScreen;

            // Auto destruction
            if (bankEntry.TimeToLiveInSeconds > 0)
            {
                StartCoroutine(DestroyAfterTimeOut(bullet, bankEntry.TimeToLiveInSeconds));
            }

            return(bulletScript);
        }
        /// <summary>
        /// Bullet spawn. Intantiate appropriate prefab.
        /// </summary>
        /// <param name="bullet"></param>
        /// <param name="bulletName"></param>
        void BulletSpawnedHandler(BulletObject bullet, string bulletName)
        {
            BulletScript bulletScript = null;

            if (OnBulletSpawned != null)
            {
                bulletScript = OnBulletSpawned(bullet, bulletName);
            }
            else
            {
                bulletScript = CreateBulletFromBank(bullet, bulletName);
            }

            // Bullet properties
            bulletScript.Bullet           = bullet;
            bulletScript.Bullet.Scale     = scale;
            bulletScript.Bullet.TimeSpeed = timeSpeed;
        }