IEnumerator ChangeSprite(Sprite newSprite)
{
Collider2D coll = gameObject.GetComponent<Collider2D>();
if (coll != null)
Destroy(coll);
GameObject tempSpritor = CrimeManager.Instance.GetTempSpritor();
SpriteRenderer thisRenderer = GetComponent<SpriteRenderer>();
SpriteRenderer tempRenderer = tempSpritor.GetComponent<SpriteRenderer>();
tempRenderer.sprite = _baseSprite;
float timer = 0;
while (timer <= 1)
{
thisRenderer.sprite = newSprite;
thisRenderer.color = new Color(1, 1, 1, timer);
tempRenderer.color = new Color(1, 1, 1, 1 - timer);
timer += Time.deltaTime;
yield return null;
}
_baseSprite = newSprite;
thisRenderer.color = new Color(1, 1, 1, 1);
tempSpritor.SetActive(false);
gameObject.AddComponent<PolygonCollider2D>();
yield break;
}